{
"tiddlers": {
"$:/Acknowledgements": {
"title": "$:/Acknowledgements",
"text": "TiddlyWiki incorporates code from these fine OpenSource projects:\n\n* [[The Stanford Javascript Crypto Library|http://bitwiseshiftleft.github.io/sjcl/]]\n* [[The Jasmine JavaScript Test Framework|http://pivotal.github.io/jasmine/]]\n* [[Normalize.css by Nicolas Gallagher|http://necolas.github.io/normalize.css/]]\n\nAnd media from these projects:\n\n* World flag icons from [[Wikipedia|http://commons.wikimedia.org/wiki/Category:SVG_flags_by_country]]\n"
},
"$:/core/copyright.txt": {
"title": "$:/core/copyright.txt",
"type": "text/plain",
"text": "TiddlyWiki created by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright (c) 2004-2007, Jeremy Ruston\nCopyright (c) 2007-2020, UnaMesa Association\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n* Redistributions of source code must retain the above copyright notice, this\n list of conditions and the following disclaimer.\n\n* Redistributions in binary form must reproduce the above copyright notice,\n this list of conditions and the following disclaimer in the documentation\n and/or other materials provided with the distribution.\n\n* Neither the name of the copyright holder nor the names of its\n contributors may be used to endorse or promote products derived from\n this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
},
"$:/core/icon": {
"title": "$:/core/icon",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path d=\"M64 0l54.56 32v64L64 128 9.44 96V32L64 0zm21.127 95.408c-3.578-.103-5.15-.094-6.974-3.152l-1.42.042c-1.653-.075-.964-.04-2.067-.097-1.844-.07-1.548-1.86-1.873-2.8-.52-3.202.687-6.43.65-9.632-.014-1.14-1.593-5.17-2.157-6.61-1.768.34-3.546.406-5.34.497-4.134-.01-8.24-.527-12.317-1.183-.8 3.35-3.16 8.036-1.21 11.44 2.37 3.52 4.03 4.495 6.61 4.707 2.572.212 3.16 3.18 2.53 4.242-.55.73-1.52.864-2.346 1.04l-1.65.08c-1.296-.046-2.455-.404-3.61-.955-1.93-1.097-3.925-3.383-5.406-5.024.345.658.55 1.938.24 2.53-.878 1.27-4.665 1.26-6.4.47-1.97-.89-6.73-7.162-7.468-11.86 1.96-3.78 4.812-7.07 6.255-11.186-3.146-2.05-4.83-5.384-4.61-9.16l.08-.44c-3.097.59-1.49.37-4.82.628-10.608-.032-19.935-7.37-14.68-18.774.34-.673.664-1.287 1.243-.994.466.237.4 1.18.166 2.227-3.005 13.627 11.67 13.732 20.69 11.21.89-.25 2.67-1.936 3.905-2.495 2.016-.91 4.205-1.282 6.376-1.55 5.4-.63 11.893 2.276 15.19 2.37 3.3.096 7.99-.805 10.87-.615 2.09.098 4.143.483 6.16 1.03 1.306-6.49 1.4-11.27 4.492-12.38 1.814.293 3.213 2.818 4.25 4.167 2.112-.086 4.12.46 6.115 1.066 3.61-.522 6.642-2.593 9.833-4.203-3.234 2.69-3.673 7.075-3.303 11.127.138 2.103-.444 4.386-1.164 6.54-1.348 3.507-3.95 7.204-6.97 7.014-1.14-.036-1.805-.695-2.653-1.4-.164 1.427-.81 2.7-1.434 3.96-1.44 2.797-5.203 4.03-8.687 7.016-3.484 2.985 1.114 13.65 2.23 15.594 1.114 1.94 4.226 2.652 3.02 4.406-.37.58-.936.785-1.54 1.01l-.82.11zm-40.097-8.85l.553.14c.694-.27 2.09.15 2.83.353-1.363-1.31-3.417-3.24-4.897-4.46-.485-1.47-.278-2.96-.174-4.46l.02-.123c-.582 1.205-1.322 2.376-1.72 3.645-.465 1.71 2.07 3.557 3.052 4.615l.336.3z\" fill-rule=\"evenodd\"/></svg>"
},
"$:/core/images/add-comment": {
"title": "$:/core/images/add-comment",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-add-comment tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 56H36a8 8 0 100 16h20v20a8 8 0 1016 0V72h20a8 8 0 100-16H72V36a8 8 0 10-16 0v20zm-12.595 58.362c-6.683 7.659-20.297 12.903-36.006 12.903-2.196 0-4.35-.102-6.451-.3 9.652-3.836 17.356-12.24 21.01-22.874C8.516 94.28 0 79.734 0 63.5 0 33.953 28.206 10 63 10s63 23.953 63 53.5S97.794 117 63 117c-6.841 0-13.428-.926-19.595-2.638z\"/></svg>"
},
"$:/core/images/advanced-search-button": {
"title": "$:/core/images/advanced-search-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-advanced-search-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M74.565 87.985A47.776 47.776 0 0148 96C21.49 96 0 74.51 0 48S21.49 0 48 0s48 21.49 48 48c0 9.854-2.97 19.015-8.062 26.636l34.347 34.347a9.443 9.443 0 010 13.36 9.446 9.446 0 01-13.36 0l-34.36-34.358zM48 80c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32z\"/><circle cx=\"48\" cy=\"48\" r=\"8\"/><circle cx=\"28\" cy=\"48\" r=\"8\"/><circle cx=\"68\" cy=\"48\" r=\"8\"/></g></svg>"
},
"$:/core/images/auto-height": {
"title": "$:/core/images/auto-height",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-auto-height tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M67.987 114.356l-.029-14.477a4 4 0 00-2.067-3.494l-15.966-8.813-1.933 7.502H79.9c4.222 0 5.564-5.693 1.786-7.58L49.797 71.572 48.01 79.15h31.982c4.217 0 5.564-5.682 1.795-7.575L49.805 55.517l-1.795 7.575h31.982c4.212 0 5.563-5.67 1.805-7.57l-16.034-8.105 2.195 3.57V35.614l9.214 9.213a4 4 0 105.656-5.656l-16-16a4 4 0 00-5.656 0l-16 16a4 4 0 105.656 5.656l9.13-9.13v15.288a4 4 0 002.195 3.57l16.035 8.106 1.804-7.57H48.01c-4.217 0-5.564 5.682-1.795 7.574l31.982 16.059 1.795-7.575H48.01c-4.222 0-5.564 5.693-1.787 7.579l31.89 15.923 1.787-7.578H47.992c-4.133 0-5.552 5.504-1.933 7.501l15.966 8.813-2.067-3.494.029 14.436-9.159-9.158a4 4 0 00-5.656 5.656l16 16a4 4 0 005.656 0l16-16a4 4 0 10-5.656-5.656l-9.185 9.184zM16 20h96a4 4 0 100-8H16a4 4 0 100 8z\"/></svg>"
},
"$:/core/images/blank": {
"title": "$:/core/images/blank",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-blank tc-image-button\" viewBox=\"0 0 128 128\"/>"
},
"$:/core/images/bold": {
"title": "$:/core/images/bold",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-bold tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M41.146 51.81V21.87h26.353c2.51 0 4.93.21 7.26.628 2.33.418 4.392 1.165 6.185 2.24 1.793 1.076 3.227 2.57 4.302 4.482 1.076 1.913 1.614 4.363 1.614 7.35 0 5.379-1.613 9.263-4.84 11.653-3.227 2.39-7.35 3.586-12.37 3.586H41.146zM13 0v128h62.028a65.45 65.45 0 0016.762-2.151c5.438-1.434 10.278-3.645 14.52-6.633 4.244-2.988 7.62-6.842 10.13-11.563 2.51-4.721 3.764-10.308 3.764-16.762 0-8.008-1.942-14.85-5.826-20.527-3.884-5.677-9.77-9.65-17.658-11.921 5.737-2.75 10.069-6.275 12.997-10.577 2.928-4.303 4.392-9.681 4.392-16.135 0-5.976-.986-10.995-2.958-15.059-1.972-4.063-4.75-7.32-8.336-9.77-3.585-2.45-7.888-4.213-12.907-5.289C84.888.538 79.33 0 73.235 0H13zm28.146 106.129V70.992H71.8c6.095 0 10.995 1.404 14.7 4.212 3.705 2.81 5.558 7.5 5.558 14.073 0 3.347-.568 6.096-1.703 8.247-1.136 2.151-2.66 3.854-4.572 5.11-1.912 1.254-4.123 2.15-6.633 2.688-2.51.538-5.139.807-7.888.807H41.146z\"/></svg>"
},
"$:/core/images/cancel-button": {
"title": "$:/core/images/cancel-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-cancel-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 76.314l-16.97 16.97a7.999 7.999 0 01-11.314 0c-3.118-3.118-3.124-8.19 0-11.313L52.686 65l-16.97-16.97a7.999 7.999 0 010-11.314c3.118-3.118 8.19-3.124 11.313 0L64 53.686l16.97-16.97a7.999 7.999 0 0111.314 0c3.118 3.118 3.124 8.19 0 11.313L75.314 65l16.97 16.97a7.999 7.999 0 010 11.314c-3.118 3.118-8.19 3.124-11.313 0L64 76.314zM64 129c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 1 0 29.654 0 65c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 17 64 17 16 38.49 16 65s21.49 48 48 48z\"/></svg>"
},
"$:/core/images/chevron-down": {
"title": "$:/core/images/chevron-down",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-down tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64.053 85.456a7.889 7.889 0 01-5.6-2.316L2.473 27.16a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0L64.05 66.344l50.382-50.382a7.92 7.92 0 0111.195 0c3.085 3.086 3.092 8.105 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.317z\"/><path d=\"M64.053 124.069a7.889 7.889 0 01-5.6-2.316l-55.98-55.98a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0l50.382 50.382 50.382-50.382a7.92 7.92 0 0111.195 0c3.085 3.086 3.092 8.104 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.316z\"/></g></svg>"
},
"$:/core/images/chevron-left": {
"title": "$:/core/images/chevron-left",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-left tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M47.544 64.053c0-2.027.77-4.054 2.316-5.6l55.98-55.98a7.92 7.92 0 0111.196 0c3.085 3.086 3.092 8.105 0 11.196L66.656 64.05l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.085-8.105 3.092-11.196 0l-55.98-55.98a7.892 7.892 0 01-2.317-5.595z\"/><path d=\"M8.931 64.053c0-2.027.77-4.054 2.316-5.6l55.98-55.98a7.92 7.92 0 0111.196 0c3.085 3.086 3.092 8.105 0 11.196L28.041 64.05l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.085-8.104 3.092-11.196 0l-55.98-55.98a7.892 7.892 0 01-2.316-5.595z\"/></g></svg>"
},
"$:/core/images/chevron-right": {
"title": "$:/core/images/chevron-right",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-right tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M83.456 63.947c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196L64.344 63.95 13.963 13.567a7.92 7.92 0 010-11.195c3.086-3.085 8.105-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.317 5.595z\"/><path d=\"M122.069 63.947c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l50.382-50.382-50.382-50.382a7.92 7.92 0 010-11.195c3.086-3.085 8.104-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.316 5.595z\"/></g></svg>"
},
"$:/core/images/chevron-up": {
"title": "$:/core/images/chevron-up",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-up tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M63.947 44.544c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.105 3.092-11.196 0L63.95 63.656l-50.382 50.382a7.92 7.92 0 01-11.195 0c-3.085-3.086-3.092-8.105 0-11.196l55.98-55.98a7.892 7.892 0 015.595-2.317z\"/><path d=\"M63.947 5.931c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.105 3.092-11.196 0L63.95 25.041 13.567 75.423a7.92 7.92 0 01-11.195 0c-3.085-3.086-3.092-8.104 0-11.196l55.98-55.98a7.892 7.892 0 015.595-2.316z\"/></g></svg>"
},
"$:/core/images/clone-button": {
"title": "$:/core/images/clone-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-clone-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M32.265 96v24.002A7.996 7.996 0 0040.263 128h79.74a7.996 7.996 0 007.997-7.998v-79.74a7.996 7.996 0 00-7.998-7.997H96V48h12.859a2.99 2.99 0 012.994 2.994v57.865a2.99 2.99 0 01-2.994 2.994H50.994A2.99 2.99 0 0148 108.859V96H32.265z\"/><path d=\"M40 56h-7.993C27.588 56 24 52.418 24 48c0-4.41 3.585-8 8.007-8H40v-7.993C40 27.588 43.582 24 48 24c4.41 0 8 3.585 8 8.007V40h7.993C68.412 40 72 43.582 72 48c0 4.41-3.585 8-8.007 8H56v7.993C56 68.412 52.418 72 48 72c-4.41 0-8-3.585-8-8.007V56zM8 0C3.58 0 0 3.588 0 8v80c0 4.419 3.588 8 8 8h80c4.419 0 8-3.588 8-8V8c0-4.419-3.588-8-8-8H8zM19 16A2.997 2.997 0 0016 19.001v57.998A2.997 2.997 0 0019.001 80h57.998A2.997 2.997 0 0080 76.999V19.001A2.997 2.997 0 0076.999 16H19.001z\"/></g></svg>"
},
"$:/core/images/close-all-button": {
"title": "$:/core/images/close-all-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-close-all-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M28 111.314l-14.144 14.143a8 8 0 01-11.313-11.313L16.686 100 2.543 85.856a8 8 0 0111.313-11.313L28 88.686l14.144-14.143a8 8 0 0111.313 11.313L39.314 100l14.143 14.144a8 8 0 01-11.313 11.313L28 111.314zM28 39.314L13.856 53.457A8 8 0 012.543 42.144L16.686 28 2.543 13.856A8 8 0 0113.856 2.543L28 16.686 42.144 2.543a8 8 0 0111.313 11.313L39.314 28l14.143 14.144a8 8 0 01-11.313 11.313L28 39.314zM100 39.314L85.856 53.457a8 8 0 01-11.313-11.313L88.686 28 74.543 13.856A8 8 0 0185.856 2.543L100 16.686l14.144-14.143a8 8 0 0111.313 11.313L111.314 28l14.143 14.144a8 8 0 01-11.313 11.313L100 39.314zM100 111.314l-14.144 14.143a8 8 0 01-11.313-11.313L88.686 100 74.543 85.856a8 8 0 0111.313-11.313L100 88.686l14.144-14.143a8 8 0 0111.313 11.313L111.314 100l14.143 14.144a8 8 0 01-11.313 11.313L100 111.314z\"/></g></svg>"
},
"$:/core/images/close-button": {
"title": "$:/core/images/close-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-close-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M65.086 75.41l-50.113 50.113c-3.121 3.121-8.192 3.126-11.316.002-3.118-3.118-3.123-8.19.002-11.316l50.114-50.114L3.659 13.982C.538 10.86.533 5.79 3.657 2.666c3.118-3.118 8.19-3.123 11.316.002l50.113 50.114L115.2 2.668c3.121-3.121 8.192-3.126 11.316-.002 3.118 3.118 3.123 8.19-.002 11.316L76.4 64.095l50.114 50.114c3.121 3.121 3.126 8.192.002 11.316-3.118 3.118-8.19 3.123-11.316-.002L65.086 75.409z\"/></svg>"
},
"$:/core/images/close-others-button": {
"title": "$:/core/images/close-others-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-close-others-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48zm0-16c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32zm0-16c8.837 0 16-7.163 16-16s-7.163-16-16-16-16 7.163-16 16 7.163 16 16 16z\"/></svg>"
},
"$:/core/images/copy-clipboard": {
"title": "$:/core/images/copy-clipboard",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-copy-clipboard tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"33\" height=\"8\" x=\"40\" y=\"40\" rx=\"4\"/><rect width=\"17\" height=\"8\" x=\"40\" y=\"82\" rx=\"4\"/><rect width=\"17\" height=\"8\" x=\"40\" y=\"54\" rx=\"4\"/><rect width=\"33\" height=\"8\" x=\"40\" y=\"96\" rx=\"4\"/><rect width=\"12\" height=\"8\" x=\"40\" y=\"68\" rx=\"4\"/><path d=\"M40 16H24c-4.419 0-8 3.59-8 8a8.031 8.031 0 000 .01v95.98a8.03 8.03 0 000 .01c0 4.41 3.581 8 8 8h80a7.975 7.975 0 005.652-2.34 7.958 7.958 0 002.348-5.652v-16.016c0-4.414-3.582-7.992-8-7.992-4.41 0-8 3.578-8 7.992V112H32V32h64v8.008C96 44.422 99.582 48 104 48c4.41 0 8-3.578 8-7.992V23.992a7.963 7.963 0 00-2.343-5.651A7.995 7.995 0 00104.001 16H88c0-4.41-3.585-8-8.007-8H48.007C43.588 8 40 11.582 40 16zm4-1.004A4.001 4.001 0 0148 11h32c2.21 0 4 1.797 4 3.996v4.008A4.001 4.001 0 0180 23H48c-2.21 0-4-1.797-4-3.996v-4.008z\"/><rect width=\"66\" height=\"16\" x=\"62\" y=\"64\" rx=\"8\"/><path d=\"M84.657 82.343l-16-16v11.314l16-16a8 8 0 10-11.314-11.314l-16 16a8 8 0 000 11.314l16 16a8 8 0 1011.314-11.314z\"/></g></svg>"
},
"$:/core/images/delete-button": {
"title": "$:/core/images/delete-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-delete-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\" transform=\"translate(12)\"><rect width=\"105\" height=\"16\" y=\"11\" rx=\"8\"/><rect width=\"48\" height=\"16\" x=\"28\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"8\" y=\"16\" rx=\"8\"/><rect width=\"88\" height=\"16\" x=\"8\" y=\"112\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"80\" y=\"16\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"56\" y=\"16\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"32\" y=\"16\" rx=\"8\"/></g></svg>"
},
"$:/core/images/done-button": {
"title": "$:/core/images/done-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-done-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M42.26 111.032c-2.051.001-4.103-.78-5.668-2.345L2.662 74.758a8 8 0 01-.005-11.32c3.118-3.117 8.192-3.12 11.32.007l28.278 28.278 72.124-72.124a8.002 8.002 0 0111.314-.001c3.118 3.118 3.124 8.19 0 11.315l-77.78 77.78a7.978 7.978 0 01-5.658 2.343z\"/></svg>"
},
"$:/core/images/down-arrow": {
"title": "$:/core/images/down-arrow",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-down-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M64.177 100.069a7.889 7.889 0 01-5.6-2.316l-55.98-55.98a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0l50.382 50.382 50.382-50.382a7.92 7.92 0 0111.195 0c3.086 3.086 3.092 8.104 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.316z\"/></svg>"
},
"$:/core/images/download-button": {
"title": "$:/core/images/download-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-download-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48z\" class=\"tc-image-download-button-ring\"/><path d=\"M34.35 66.43l26.892 27.205a4.57 4.57 0 006.516 0L94.65 66.43a4.7 4.7 0 000-6.593 4.581 4.581 0 00-3.258-1.365h-8.46c-2.545 0-4.608-2.087-4.608-4.661v-15.15c0-2.575-2.063-4.662-4.608-4.662H55.284c-2.545 0-4.608 2.087-4.608 4.662v15.15c0 2.574-2.063 4.661-4.608 4.661h-8.46c-2.545 0-4.608 2.087-4.608 4.662a4.69 4.69 0 001.35 3.296z\"/></g></svg>"
},
"$:/core/images/edit-button": {
"title": "$:/core/images/edit-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-edit-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M95.627 10.059l-5.656 5.657 11.313 11.313 5.657-5.656-11.314-11.314zm5.657-5.657l1.966-1.966c3.123-3.122 8.194-3.129 11.319-.005 3.117 3.118 3.122 8.192-.005 11.32l-1.966 1.965-11.314-11.314zm-16.97 16.97l-60.25 60.25a8.12 8.12 0 00-.322.342c-.1.087-.198.179-.295.275-5.735 5.735-10.702 22.016-10.702 22.016s16.405-5.09 22.016-10.702c.095-.096.186-.193.272-.292a8.12 8.12 0 00.345-.325l60.25-60.25-11.314-11.313zM35.171 124.19c6.788-.577 13.898-2.272 23.689-5.348 1.825-.573 3.57-1.136 6.336-2.04 16-5.226 21.877-6.807 28.745-7.146 8.358-.413 13.854 2.13 17.58 8.699a4 4 0 006.959-3.946c-5.334-9.406-13.745-13.296-24.933-12.744-7.875.39-14.057 2.052-30.835 7.533-2.739.894-4.46 1.45-6.25 2.012-19.46 6.112-30.77 7.072-39.597 1.747a4 4 0 10-4.132 6.85c6.333 3.82 13.754 5.12 22.438 4.383z\"/></g></svg>"
},
"$:/core/images/erase": {
"title": "$:/core/images/erase",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-erase tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60.087 127.996l63.015-63.015c6.535-6.535 6.528-17.115-.003-23.646L99.466 17.702c-6.539-6.538-17.117-6.532-23.646-.003L4.898 88.62c-6.535 6.534-6.528 17.115.003 23.646l15.73 15.73h39.456zm-34.95-7.313l-14.324-14.325c-3.267-3.268-3.268-8.564-.008-11.824L46.269 59.07l35.462 35.462-26.15 26.15H25.137z\"/></svg>"
},
"$:/core/images/excise": {
"title": "$:/core/images/excise",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-excise tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 107.314l-2.343 2.343a8 8 0 11-11.314-11.314l16-16a8 8 0 0111.314 0l16 16a8 8 0 11-11.314 11.314L72 107.314v14.284c0 3.536-3.582 6.402-8 6.402s-8-2.866-8-6.402v-14.284zM0 40.007C0 35.585 3.59 32 8 32c4.418 0 8 3.588 8 8.007v31.986C16 76.415 12.41 80 8 80c-4.418 0-8-3.588-8-8.007V40.007zm32 0C32 35.585 35.59 32 40 32c4.418 0 8 3.588 8 8.007v31.986C48 76.415 44.41 80 40 80c-4.418 0-8-3.588-8-8.007V40.007zm48 0C80 35.585 83.59 32 88 32c4.418 0 8 3.588 8 8.007v31.986C96 76.415 92.41 80 88 80c-4.418 0-8-3.588-8-8.007V40.007zm-24-32C56 3.585 59.59 0 64 0c4.418 0 8 3.588 8 8.007v31.986C72 44.415 68.41 48 64 48c-4.418 0-8-3.588-8-8.007V8.007zm56 32c0-4.422 3.59-8.007 8-8.007 4.418 0 8 3.588 8 8.007v31.986c0 4.422-3.59 8.007-8 8.007-4.418 0-8-3.588-8-8.007V40.007z\"/></svg>"
},
"$:/core/images/export-button": {
"title": "$:/core/images/export-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-export-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.003 128H119.993a7.984 7.984 0 005.664-2.349v.007A7.975 7.975 0 00128 120V56c0-4.418-3.59-8-8-8-4.418 0-8 3.58-8 8v56H16V56c0-4.418-3.59-8-8-8-4.418 0-8 3.58-8 8v64c0 4.418 3.59 8 8 8h.003zm48.62-100.689l-8.965 8.966c-3.125 3.125-8.195 3.13-11.319.005-3.118-3.118-3.122-8.192.005-11.319L58.962 2.346A7.986 7.986 0 0164.625 0l-.006.002c2.05-.001 4.102.78 5.666 2.344l22.618 22.617c3.124 3.125 3.129 8.195.005 11.319-3.118 3.118-8.192 3.122-11.319-.005l-8.965-8.966v61.256c0 4.411-3.582 8-8 8-4.41 0-8-3.582-8-8V27.311z\"/></svg>"
},
"$:/core/images/file": {
"title": "$:/core/images/file",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-file tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M111.968 30.5H112V120a8 8 0 01-8 8H24a8 8 0 01-8-8V8a8 8 0 018-8h57v.02a7.978 7.978 0 015.998 2.337l22.627 22.627a7.975 7.975 0 012.343 5.516zM81 8H24v112h80V30.5H89c-4.418 0-8-3.578-8-8V8z\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"36\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"52\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"68\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"84\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"100\" rx=\"4\"/><rect width=\"40\" height=\"8\" x=\"32\" y=\"20\" rx=\"4\"/></svg>"
},
"$:/core/images/fixed-height": {
"title": "$:/core/images/fixed-height",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fixed-height tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60 35.657l-9.172 9.171a4 4 0 11-5.656-5.656l16-16a4 4 0 015.656 0l16 16a4 4 0 01-5.656 5.656L68 35.657v57.686l9.172-9.171a4 4 0 115.656 5.656l-16 16a4 4 0 01-5.656 0l-16-16a4 4 0 115.656-5.656L60 93.343V35.657zM16 116h96a4 4 0 100-8H16a4 4 0 100 8zm0-96h96a4 4 0 100-8H16a4 4 0 100 8z\"/></svg>"
},
"$:/core/images/fold-all-button": {
"title": "$:/core/images/fold-all-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold-all tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"64\" rx=\"8\"/><path d=\"M64.03 20.004c-2.05 0-4.102.78-5.667 2.344L35.746 44.966c-3.125 3.124-3.13 8.194-.005 11.318 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.965 16.966 16.965c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.191-.005-11.318L69.687 22.348a7.986 7.986 0 00-5.663-2.346zM64.03 85.002c-2.05-.001-4.102.78-5.667 2.344l-22.617 22.617c-3.125 3.125-3.13 8.195-.005 11.319 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.966 16.966 16.966c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.192-.005-11.319L69.687 87.346A7.986 7.986 0 0064.024 85z\"/></g></svg>"
},
"$:/core/images/fold-button": {
"title": "$:/core/images/fold-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><path d=\"M64.03 25.004c-2.05 0-4.102.78-5.667 2.344L35.746 49.966c-3.125 3.124-3.13 8.194-.005 11.318 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.965 16.966 16.965c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.191-.005-11.318L69.687 27.348a7.986 7.986 0 00-5.663-2.346zM64.005 67.379c-2.05 0-4.102.78-5.666 2.344L35.722 92.34c-3.125 3.125-3.13 8.195-.006 11.32 3.118 3.117 8.192 3.121 11.32-.006L64 86.69l16.965 16.965c3.125 3.125 8.195 3.13 11.319.005 3.118-3.118 3.122-8.192-.005-11.319L69.663 69.723A7.986 7.986 0 0064 67.377z\"/></g></svg>"
},
"$:/core/images/fold-others-button": {
"title": "$:/core/images/fold-others-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold-others tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" y=\"56.031\" rx=\"8\"/><path d=\"M86.632 79.976c-2.05 0-4.102.78-5.666 2.345L64 99.286 47.034 82.321a7.986 7.986 0 00-5.662-2.346l.005.001c-2.05 0-4.102.78-5.666 2.345l-22.618 22.617c-3.124 3.125-3.129 8.195-.005 11.319 3.118 3.118 8.192 3.122 11.319-.005l16.966-16.966 16.965 16.966a7.986 7.986 0 005.663 2.346l-.005-.002c2.05 0 4.102-.78 5.666-2.344l16.965-16.966 16.966 16.966c3.125 3.124 8.194 3.129 11.319.005 3.118-3.118 3.122-8.192-.005-11.319L92.289 82.321a7.986 7.986 0 00-5.663-2.346zM86.7 48.024c-2.05 0-4.102-.78-5.666-2.345L64.07 28.714 47.103 45.679a7.986 7.986 0 01-5.663 2.346l.005-.001c-2.05 0-4.101-.78-5.666-2.345L13.162 23.062c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L41.44 28.714l16.966-16.966a7.986 7.986 0 015.662-2.346l-.005.002c2.05 0 4.102.78 5.666 2.344l16.966 16.966 16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L92.358 45.679a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
},
"$:/core/images/folder": {
"title": "$:/core/images/folder",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-folder tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.694 128H8C3.58 128 0 124.414 0 119.996V48.004C0 43.584 3.584 40 7.999 40H16v-8c0-4.418 3.578-8 8-8h32a8 8 0 018 8v8h40.001c4.418 0 7.999 3.586 7.999 8.004V59.83l-8-.082v-7.749A4 4 0 0099.997 48H56V36c0-2.21-1.793-4-4.004-4H28.004A4 4 0 0024 36v12H12.003A4 4 0 008 52v64a4 4 0 004.003 4h46.76l-3.069 8z\"/><path d=\"M23.873 55.5h96.003c4.417 0 7.004 4.053 5.774 9.063l-13.344 54.374c-1.228 5.005-5.808 9.063-10.223 9.063H6.08c-4.417 0-7.003-4.053-5.774-9.063L13.65 64.563c1.228-5.005 5.808-9.063 10.223-9.063zm1.78 8.5h87.994c2.211 0 3.504 2.093 2.891 4.666l-11.12 46.668c-.614 2.577-2.902 4.666-5.115 4.666H12.31c-2.211 0-3.504-2.093-2.891-4.666l11.12-46.668C21.152 66.09 23.44 64 25.653 64z\"/></g></svg>"
},
"$:/core/images/full-screen-button": {
"title": "$:/core/images/full-screen-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-full-screen-button tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M0 8a8 8 0 018-8h32a8 8 0 110 16H16v24a8 8 0 11-16 0V8zM128 120a8 8 0 01-8 8H88a8 8 0 110-16h24V88a8 8 0 1116 0v32zM8 128a8 8 0 01-8-8V88a8 8 0 1116 0v24h24a8 8 0 110 16H8zM120 0a8 8 0 018 8v32a8 8 0 11-16 0V16H88a8 8 0 110-16h32z\"/></svg>"
},
"$:/core/images/github": {
"title": "$:/core/images/github",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-github tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M63.938 1.607c-35.336 0-63.994 28.69-63.994 64.084 0 28.312 18.336 52.329 43.768 60.802 3.202.59 4.37-1.388 4.37-3.088 0-1.518-.056-5.55-.087-10.897-17.802 3.871-21.558-8.591-21.558-8.591-2.911-7.404-7.108-9.375-7.108-9.375-5.81-3.973.44-3.895.44-3.895 6.424.453 9.803 6.606 9.803 6.606 5.709 9.791 14.981 6.963 18.627 5.322.582-4.138 2.236-6.963 4.063-8.564-14.211-1.617-29.153-7.117-29.153-31.672 0-6.995 2.495-12.718 6.589-17.195-.66-1.621-2.856-8.14.629-16.96 0 0 5.37-1.722 17.597 6.57 5.104-1.424 10.58-2.132 16.022-2.16 5.438.028 10.91.736 16.022 2.16 12.22-8.292 17.582-6.57 17.582-6.57 3.493 8.82 1.297 15.339.64 16.96 4.102 4.477 6.578 10.2 6.578 17.195 0 24.618-14.966 30.035-29.22 31.62 2.295 1.98 4.342 5.89 4.342 11.87 0 8.564-.079 15.476-.079 17.576 0 1.715 1.155 3.71 4.4 3.084 25.413-8.493 43.733-32.494 43.733-60.798 0-35.394-28.657-64.084-64.006-64.084\"/></svg>"
},
"$:/core/images/gitter": {
"title": "$:/core/images/gitter",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-gitter tc-image-button\" viewBox=\"0 0 18 25\"><path d=\"M15 5h2v10h-2zM10 5h2v20h-2zM5 5h2v20H5zM0 0h2v15H0z\"/></svg>"
},
"$:/core/images/globe": {
"title": "$:/core/images/globe",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-globe tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M72.811 37.128v2.554c0 2.196.978 6.881 0 8.832-1.466 2.928-4.65 3.54-6.394 5.867-1.182 1.577-4.618 10.601-3.69 12.92 3.969 9.922 11.534 3.187 17.962 9.293.864.821 2.887 2.273 3.296 3.296 3.29 8.223-7.576 15.009 3.757 26.3 1.245 1.24 3.813-3.817 4.079-4.614.852-2.563 6.725-5.45 9.088-7.053 2.02-1.37 4.873-2.667 6.328-4.745 2.27-3.244 1.48-7.514 3.098-10.745 2.139-4.274 3.828-9.635 5.998-13.966 3.898-7.781 4.721 2.093 5.067 2.439.358.357 1.011 0 1.517 0 .094 0 1.447.099 1.516 0 .65-.935-1.043-17.92-1.318-19.297-1.404-7.01-6.944-15.781-11.865-20.5-6.274-6.015-7.09-16.197-18.259-14.954-.204.022-5.084 10.148-7.777 13.512-3.728 4.657-2.47-4.153-6.526-4.153-.081 0-1.183-.103-1.253 0-.586.88-1.44 3.896-2.306 4.417-.265.16-1.722-.239-1.846 0-2.243 4.3 8.256 2.212 5.792 7.952-2.352 5.481-6.328-1.997-6.328 8.56M44.467 7.01c9.685 6.13.682 12.198 2.694 16.215 1.655 3.303 4.241 5.395 1.714 9.814-2.063 3.608-6.87 3.966-9.623 6.723-3.04 3.044-5.464 8.94-6.79 12.911-1.617 4.843 14.547 6.866 12.063 11.008-1.386 2.311-6.746 1.466-8.437.198-1.165-.873-3.593-.546-4.417-1.78-2.613-3.915-2.26-8.023-3.625-12.128-.938-2.822-6.313-2.12-7.844-.593-.523.522-.33 1.792-.33 2.505 0 5.285 7.12 3.316 7.12 6.46 0 14.636 3.927 6.534 11.14 11.336 10.036 6.683 7.844 7.303 14.946 14.404 3.673 3.673 7.741 3.686 9.425 9.294 1.602 5.331-9.327 5.339-11.716 7.448-1.123.991-2.813 4.146-4.219 4.615-1.792.598-3.234.496-4.944 1.78-2.427 1.82-3.9 4.932-4.02 4.81-2.148-2.147-3.52-15.479-3.89-18.257-.588-4.42-5.59-5.54-6.986-9.03-1.57-3.927 1.524-9.52-1.129-13.761-6.52-10.424-11.821-14.5-15.35-26.292-.942-3.148 3.342-6.529 4.877-8.833 1.877-2.816 2.662-5.854 4.746-8.635C22.147 24.19 40.855 9.461 43.857 8.635l.61-1.625z\"/><path d=\"M64 126c34.242 0 62-27.758 62-62 0-34.242-27.758-62-62-62C29.758 2 2 29.758 2 64c0 34.242 27.758 62 62 62zm0-6c30.928 0 56-25.072 56-56S94.928 8 64 8 8 33.072 8 64s25.072 56 56 56z\"/></g></svg>"
},
"$:/core/images/heading-1": {
"title": "$:/core/images/heading-1",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-1 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M14 30h13.25v30.104H61.7V30h13.25v75.684H61.7V71.552H27.25v34.132H14V30zm70.335 13.78c2.544 0 5.017-.212 7.42-.636 2.403-.424 4.576-1.13 6.52-2.12 1.942-.99 3.603-2.261 4.981-3.816 1.378-1.555 2.28-3.463 2.703-5.724h9.858v74.2h-13.25V53.32H84.335v-9.54z\"/></svg>"
},
"$:/core/images/heading-2": {
"title": "$:/core/images/heading-2",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-2 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm119.52 75.684H74.85c.07-6.148 1.555-11.519 4.452-16.112 2.897-4.593 6.855-8.586 11.872-11.978a133.725 133.725 0 017.526-5.141 59.6 59.6 0 007.208-5.353c2.19-1.908 3.993-3.975 5.406-6.201 1.413-2.226 2.155-4.788 2.226-7.685 0-1.343-.159-2.774-.477-4.293a11.357 11.357 0 00-1.855-4.24c-.919-1.307-2.19-2.403-3.816-3.286-1.625-.883-3.745-1.325-6.36-1.325-2.403 0-4.399.477-5.989 1.431-1.59.954-2.862 2.261-3.816 3.922-.954 1.66-1.66 3.622-2.12 5.883-.46 2.261-.724 4.7-.795 7.314H76.23c0-4.099.548-7.897 1.643-11.395 1.095-3.498 2.738-6.519 4.93-9.063 2.19-2.544 4.857-4.54 8.002-5.989C93.95 30.724 97.606 30 101.775 30c4.523 0 8.303.742 11.342 2.226 3.039 1.484 5.494 3.357 7.367 5.618 1.873 2.261 3.198 4.717 3.975 7.367.777 2.65 1.166 5.176 1.166 7.579 0 2.968-.46 5.653-1.378 8.056a25.942 25.942 0 01-3.71 6.625 37.5 37.5 0 01-5.3 5.565 79.468 79.468 0 01-6.148 4.77 165.627 165.627 0 01-6.36 4.24 94.28 94.28 0 00-5.883 4.028c-1.802 1.343-3.374 2.738-4.717 4.187-1.343 1.449-2.261 2.986-2.756 4.611h36.146v10.812z\"/></svg>"
},
"$:/core/images/heading-3": {
"title": "$:/core/images/heading-3",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-3 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm88.885 32.224c1.979.07 3.957-.07 5.936-.424 1.979-.353 3.745-.972 5.3-1.855a10.365 10.365 0 003.763-3.657c.954-1.555 1.431-3.463 1.431-5.724 0-3.18-1.078-5.724-3.233-7.632-2.155-1.908-4.929-2.862-8.32-2.862-2.12 0-3.958.424-5.513 1.272a11.318 11.318 0 00-3.869 3.445c-1.025 1.449-1.784 3.074-2.279 4.876a18.335 18.335 0 00-.636 5.565H75.381c.141-3.604.813-6.943 2.014-10.017 1.201-3.074 2.844-5.742 4.93-8.003 2.084-2.261 4.61-4.028 7.578-5.3C92.871 30.636 96.228 30 99.973 30a29.2 29.2 0 018.533 1.272c2.791.848 5.3 2.085 7.526 3.71s4.01 3.692 5.353 6.201c1.343 2.509 2.014 5.388 2.014 8.639 0 3.745-.848 7.014-2.544 9.805-1.696 2.791-4.346 4.823-7.95 6.095v.212c4.24.848 7.544 2.95 9.911 6.307s3.551 7.438 3.551 12.243c0 3.533-.707 6.696-2.12 9.487a21.538 21.538 0 01-5.724 7.102c-2.403 1.943-5.194 3.445-8.374 4.505-3.18 1.06-6.537 1.59-10.07 1.59-4.31 0-8.074-.618-11.289-1.855s-5.9-2.986-8.056-5.247c-2.155-2.261-3.798-4.982-4.929-8.162-1.13-3.18-1.731-6.713-1.802-10.6h12.084c-.141 4.523.972 8.286 3.34 11.289 2.366 3.003 5.917 4.505 10.652 4.505 4.028 0 7.402-1.148 10.123-3.445 2.72-2.297 4.081-5.565 4.081-9.805 0-2.897-.565-5.194-1.696-6.89a10.97 10.97 0 00-4.452-3.869c-1.837-.883-3.904-1.431-6.2-1.643a58.067 58.067 0 00-7.05-.212v-9.01z\"/></svg>"
},
"$:/core/images/heading-4": {
"title": "$:/core/images/heading-4",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-4 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8 30h13.25v30.104H55.7V30h13.25v75.684H55.7V71.552H21.25v34.132H8V30zm76.59 48.548h22.471V45.9h-.212L84.59 78.548zm43.46 9.54h-9.54v17.596H107.06V88.088h-31.8V76.11l31.8-44.626h11.448v47.064h9.54v9.54z\"/></svg>"
},
"$:/core/images/heading-5": {
"title": "$:/core/images/heading-5",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-5 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm77.755 1.484h38.372v10.812H92.765L88.95 61.164l.212.212c1.625-1.837 3.692-3.233 6.201-4.187 2.509-.954 5-1.431 7.473-1.431 3.675 0 6.96.618 9.858 1.855 2.897 1.237 5.335 2.968 7.314 5.194s3.48 4.858 4.505 7.897c1.025 3.039 1.537 6.325 1.537 9.858 0 2.968-.477 6.024-1.43 9.169a25.161 25.161 0 01-4.559 8.586c-2.085 2.58-4.752 4.7-8.003 6.36-3.25 1.66-7.137 2.491-11.66 2.491-3.604 0-6.943-.477-10.017-1.431-3.074-.954-5.777-2.385-8.109-4.293-2.332-1.908-4.187-4.258-5.565-7.049-1.378-2.791-2.138-6.06-2.279-9.805h12.084c.353 4.028 1.731 7.12 4.134 9.275 2.403 2.155 5.583 3.233 9.54 3.233 2.544 0 4.7-.424 6.466-1.272 1.767-.848 3.198-2.014 4.293-3.498 1.095-1.484 1.873-3.215 2.332-5.194.46-1.979.69-4.099.69-6.36 0-2.05-.284-4.01-.849-5.883-.565-1.873-1.413-3.516-2.544-4.929-1.13-1.413-2.597-2.544-4.399-3.392-1.802-.848-3.904-1.272-6.307-1.272-2.544 0-4.929.477-7.155 1.431-2.226.954-3.834 2.738-4.823 5.353H75.805l7.95-40.598z\"/></svg>"
},
"$:/core/images/heading-6": {
"title": "$:/core/images/heading-6",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-6 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm106.587 20.246c-.283-3.039-1.36-5.494-3.233-7.367-1.873-1.873-4.399-2.809-7.579-2.809-2.19 0-4.08.406-5.67 1.219a12.435 12.435 0 00-4.029 3.233c-1.095 1.343-1.979 2.88-2.65 4.611a37.696 37.696 0 00-1.643 5.459 46.08 46.08 0 00-.9 5.671 722.213 722.213 0 00-.478 5.247l.212.212c1.625-2.968 3.87-5.176 6.731-6.625 2.862-1.449 5.954-2.173 9.275-2.173 3.675 0 6.96.636 9.858 1.908 2.897 1.272 5.353 3.021 7.367 5.247 2.014 2.226 3.551 4.858 4.611 7.897 1.06 3.039 1.59 6.325 1.59 9.858 0 3.604-.583 6.943-1.749 10.017-1.166 3.074-2.844 5.76-5.035 8.056-2.19 2.297-4.805 4.081-7.844 5.353-3.039 1.272-6.395 1.908-10.07 1.908-5.441 0-9.91-1.007-13.409-3.021-3.498-2.014-6.254-4.77-8.268-8.268-2.014-3.498-3.41-7.597-4.187-12.296-.777-4.7-1.166-9.77-1.166-15.211 0-4.452.477-8.94 1.431-13.462.954-4.523 2.526-8.639 4.717-12.349 2.19-3.71 5.07-6.731 8.64-9.063C92.676 31.166 97.075 30 102.304 30c2.968 0 5.76.495 8.374 1.484 2.615.99 4.93 2.367 6.943 4.134 2.014 1.767 3.657 3.887 4.93 6.36 1.271 2.473 1.978 5.23 2.12 8.268h-12.085zm-11.66 46.852c2.19 0 4.099-.442 5.724-1.325a12.869 12.869 0 004.081-3.445c1.095-1.413 1.908-3.056 2.438-4.929.53-1.873.795-3.798.795-5.777s-.265-3.887-.795-5.724c-.53-1.837-1.343-3.445-2.438-4.823-1.095-1.378-2.456-2.491-4.08-3.339-1.626-.848-3.534-1.272-5.725-1.272-2.19 0-4.116.406-5.777 1.219-1.66.813-3.056 1.908-4.187 3.286-1.13 1.378-1.979 2.986-2.544 4.823-.565 1.837-.848 3.78-.848 5.83 0 2.05.283 3.993.848 5.83.565 1.837 1.413 3.48 2.544 4.929a12.39 12.39 0 004.187 3.445c1.66.848 3.586 1.272 5.777 1.272z\"/></svg>"
},
"$:/core/images/help": {
"title": "$:/core/images/help",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-help tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M36.055 111.441c-5.24 4.396-15.168 7.362-26.555 7.362-1.635 0-3.24-.06-4.806-.179 7.919-2.64 14.062-8.6 16.367-16.014C8.747 92.845 1.05 78.936 1.05 63.5c0-29.547 28.206-53.5 63-53.5s63 23.953 63 53.5-28.206 53.5-63 53.5c-10.055 0-19.56-2-27.994-5.559zm35.35-33.843a536.471 536.471 0 00.018-4.682 199.02 199.02 0 00-.023-3.042c.008-1.357.595-2.087 3.727-4.235.112-.077 1.085-.74 1.386-.948 3.093-2.133 5.022-3.786 6.762-6.187 2.34-3.228 3.558-7.077 3.558-11.649 0-13.292-9.86-21.952-21.455-21.952-11.103 0-22.499 9.609-24.066 22.295a6.023 6.023 0 1011.956 1.477c.806-6.527 6.972-11.726 12.11-11.726 5.265 0 9.408 3.64 9.408 9.906 0 3.634-1.1 5.153-5.111 7.919l-1.362.93c-2.682 1.84-4.227 3.1-5.7 4.931-2.109 2.62-3.242 5.717-3.258 9.314.013.892.02 1.86.022 2.981a470.766 470.766 0 01-.022 4.943 6.023 6.023 0 1012.046.12l.003-.395zm-6.027 24.499a7.529 7.529 0 100-15.058 7.529 7.529 0 000 15.058z\"/></svg>"
},
"$:/core/images/home-button": {
"title": "$:/core/images/home-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-home-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M112.985 119.502c.01-.165.015-.331.015-.499V67.568c3.137 2.948 8.076 2.884 11.134-.174a7.999 7.999 0 00-.002-11.316L70.396 2.343A7.978 7.978 0 0064.734 0a7.957 7.957 0 00-5.656 2.343L33 28.42V8.007C33 3.585 29.41 0 25 0c-4.418 0-8 3.59-8 8.007V44.42L5.342 56.078c-3.125 3.125-3.12 8.198-.002 11.316a7.999 7.999 0 0011.316-.003l.344-.343v52.945a8.11 8.11 0 000 .007c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8a8.11 8.11 0 00-.015-.498zM97 112V51.574L64.737 19.31 33 51.048V112h64z\"/></svg>"
},
"$:/core/images/import-button": {
"title": "$:/core/images/import-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-import-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M114.832 60.436s3.235-3.27 6.921.417c3.686 3.686.231 7.14.231 7.14l-42.153 42.92s-30.765 32.367-58.798 4.333C-7 87.213 24.59 55.623 24.59 55.623L67.363 12.85s22.725-24.6 43.587-3.738c20.862 20.862-3.96 43.09-3.96 43.09l-35.04 35.04S49.903 112.546 36.426 99.07c-13.476-13.477 11.83-35.523 11.83-35.523l35.04-35.04s3.902-3.902 7.78-.023c3.879 3.878.118 7.921.118 7.921l-35.04 35.04s-13.212 13.212-8.872 17.551c4.34 4.34 16.77-9.653 16.77-9.653l35.04-35.04s16.668-14.598 3.966-27.3c-13.893-13.892-27.565 3.702-27.565 3.702l-42.91 42.91s-23.698 23.698-3.658 43.738 43.012-4.385 43.012-4.385l42.895-42.533z\"/></svg>"
},
"$:/core/images/info-button": {
"title": "$:/core/images/info-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-info-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\" transform=\"translate(.05)\"><path d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48z\"/><circle cx=\"64\" cy=\"32\" r=\"8\"/><rect width=\"16\" height=\"56\" x=\"56\" y=\"48\" rx=\"8\"/></g></svg>"
},
"$:/core/images/italic": {
"title": "$:/core/images/italic",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-italic tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M66.711 0h22.41L62.408 128H40z\"/></svg>"
},
"$:/core/images/left-arrow": {
"title": "$:/core/images/left-arrow",
"created": "20150315234410875",
"modified": "20150315235324760",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-left-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M0 64.177c0-2.026.771-4.054 2.317-5.6l55.98-55.98a7.92 7.92 0 0111.195.001c3.086 3.085 3.092 8.104.001 11.195L19.111 64.175l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.086-8.105 3.092-11.196.001l-55.98-55.98A7.892 7.892 0 010 64.177z\"/></svg>"
},
"$:/core/images/line-width": {
"title": "$:/core/images/line-width",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-line-width tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M16 18h96a2 2 0 000-4H16a2 2 0 100 4zm0 17h96a4 4 0 100-8H16a4 4 0 100 8zm0 21h96a6 6 0 000-12H16a6 6 0 100 12zm0 29h96c5.523 0 10-4.477 10-10s-4.477-10-10-10H16c-5.523 0-10 4.477-10 10s4.477 10 10 10zm0 43h96c8.837 0 16-7.163 16-16s-7.163-16-16-16H16c-8.837 0-16 7.163-16 16s7.163 16 16 16z\"/></svg>"
},
"$:/core/images/link": {
"title": "$:/core/images/link",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-link tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M42.263 69.38a31.919 31.919 0 006.841 10.13c12.5 12.5 32.758 12.496 45.255 0l22.627-22.628c12.502-12.501 12.497-32.758 0-45.255-12.5-12.5-32.758-12.496-45.254 0L49.104 34.255a32.333 32.333 0 00-2.666 3.019 36.156 36.156 0 0121.94.334l14.663-14.663c6.25-6.25 16.382-6.254 22.632-.004 6.248 6.249 6.254 16.373-.004 22.631l-22.62 22.62c-6.25 6.25-16.381 6.254-22.631.004a15.93 15.93 0 01-4.428-8.433 11.948 11.948 0 00-7.59 3.48l-6.137 6.137z\"/><path d=\"M86.35 59.234a31.919 31.919 0 00-6.84-10.13c-12.5-12.5-32.758-12.497-45.255 0L11.627 71.732c-12.501 12.5-12.496 32.758 0 45.254 12.5 12.5 32.758 12.497 45.255 0L79.51 94.36a32.333 32.333 0 002.665-3.02 36.156 36.156 0 01-21.94-.333l-14.663 14.663c-6.25 6.25-16.381 6.253-22.63.004-6.25-6.249-6.255-16.374.003-22.632l22.62-22.62c6.25-6.25 16.381-6.253 22.631-.003a15.93 15.93 0 014.428 8.432 11.948 11.948 0 007.59-3.48l6.137-6.136z\"/></g></svg>"
},
"$:/core/images/linkify": {
"title": "$:/core/images/linkify",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-linkify-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M17.031 31.919H9.048V96.85h7.983v6.92H0V25h17.031v6.919zm24.66 0h-7.983V96.85h7.983v6.92H24.66V25h17.03v6.919zM67.77 56.422l11.975-3.903 2.306 7.096-12.063 3.903 7.628 10.379-6.12 4.435-7.63-10.467-7.45 10.2-5.943-4.523L58.1 63.518 45.95 59.35l2.306-7.096 12.064 4.17V43.825h7.45v12.596zM86.31 96.85h7.982V31.92H86.31V25h17.031v78.77H86.31v-6.92zm24.659 0h7.983V31.92h-7.983V25H128v78.77h-17.031v-6.92z\"/></svg>"
},
"$:/core/images/list-bullet": {
"title": "$:/core/images/list-bullet",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list-bullet tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M11.636 40.273c6.427 0 11.637-5.21 11.637-11.637C23.273 22.21 18.063 17 11.636 17 5.21 17 0 22.21 0 28.636c0 6.427 5.21 11.637 11.636 11.637zm0 34.909c6.427 0 11.637-5.21 11.637-11.637 0-6.426-5.21-11.636-11.637-11.636C5.21 51.91 0 57.12 0 63.545c0 6.427 5.21 11.637 11.636 11.637zm0 34.909c6.427 0 11.637-5.21 11.637-11.636 0-6.427-5.21-11.637-11.637-11.637C5.21 86.818 0 92.028 0 98.455c0 6.426 5.21 11.636 11.636 11.636zM34.91 22.818H128v11.637H34.91V22.818zm0 34.91H128v11.636H34.91V57.727zm0 34.908H128v11.637H34.91V92.636z\"/></svg>"
},
"$:/core/images/list-number": {
"title": "$:/core/images/list-number",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list-number tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M33.84 22.356H128v11.77H33.84v-11.77zm0 35.31H128v11.77H33.84v-11.77zm0 35.311H128v11.77H33.84v-11.77zM.38 42.631v-2.223h.998c.826 0 1.445-.14 1.858-.42.413-.28.619-.948.619-2.002V22.769c0-1.442-.193-2.336-.58-2.683-.385-.347-1.477-.52-3.275-.52v-2.143c3.502-.147 6.252-.955 8.25-2.423h2.117v22.865c0 .921.15 1.575.449 1.963.3.387.949.58 1.948.58h.998v2.223H.38zm-.3 35.356v-1.902c7.19-6.554 10.786-12.58 10.786-18.08 0-1.562-.326-2.81-.979-3.744-.652-.934-1.524-1.402-2.616-1.402-.893 0-1.655.317-2.287.952-.633.634-.95 1.364-.95 2.192 0 .974.247 1.829.74 2.563.106.16.16.28.16.36 0 .147-.16.28-.48.4-.213.08-.752.308-1.618.681-.839.374-1.358.561-1.558.561-.24 0-.512-.37-.819-1.111A6.2 6.2 0 010 57.064c0-1.949.849-3.544 2.547-4.785 1.698-1.242 3.798-1.862 6.302-1.862 2.463 0 4.53.67 6.202 2.012 1.67 1.341 2.506 3.093 2.506 5.256a8.644 8.644 0 01-.849 3.724c-.566 1.201-1.92 3.053-4.064 5.556a165.471 165.471 0 01-6.272 6.938h11.445l-1.019 5.726h-2.117c.08-.28.12-.534.12-.76 0-.388-.1-.631-.3-.731-.2-.1-.599-.15-1.198-.15H.08zm12.124 19.207c1.745.04 3.236.637 4.474 1.792 1.239 1.154 1.858 2.773 1.858 4.855 0 2.99-1.132 5.393-3.396 7.208-2.263 1.815-5 2.723-8.209 2.723-2.01 0-3.669-.384-4.974-1.151C.652 111.853 0 110.849 0 109.607c0-.774.27-1.398.809-1.872.54-.474 1.128-.71 1.768-.71.639 0 1.162.2 1.568.6.406.4.782 1.055 1.128 1.962.466 1.268 1.239 1.902 2.317 1.902 1.265 0 2.287-.477 3.066-1.431.78-.955 1.169-2.686 1.169-5.196 0-1.709-.12-3.023-.36-3.944-.24-.921-.792-1.382-1.658-1.382-.586 0-1.185.307-1.797.921-.493.494-.932.741-1.319.741-.333 0-.602-.147-.809-.44-.206-.294-.31-.574-.31-.841 0-.32.104-.594.31-.821.207-.227.69-.594 1.449-1.102 2.876-1.922 4.314-4.017 4.314-6.287 0-1.188-.306-2.092-.919-2.713a3.001 3.001 0 00-2.217-.93c-.799 0-1.525.263-2.177.79-.653.528-.979 1.158-.979 1.892 0 .641.253 1.235.76 1.782.172.2.259.367.259.5 0 .121-.57.428-1.708.922-1.139.494-1.854.74-2.147.74-.413 0-.75-.333-1.009-1-.26-.668-.39-1.282-.39-1.842 0-1.749.93-3.224 2.787-4.425 1.858-1.202 3.965-1.802 6.322-1.802 2.064 0 3.851.447 5.363 1.341 1.511.895 2.267 2.116 2.267 3.664 0 1.362-.57 2.623-1.708 3.784a13.387 13.387 0 01-3.945 2.784z\"/></svg>"
},
"$:/core/images/list": {
"title": "$:/core/images/list",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M87.748 128H23.999c-4.418 0-7.999-3.59-7.999-8.007V8.007C16 3.585 19.588 0 24 0h80c4.419 0 8 3.59 8 8.007V104H91.25c-.965 0-1.84.392-2.473 1.025a3.476 3.476 0 00-1.029 2.476V128zm8-.12l15.88-15.88h-15.88v15.88zM40 15.508A3.502 3.502 0 0143.5 12h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 20h-55a3.498 3.498 0 01-3.5-3.509v-.982zM32 22a6 6 0 100-12 6 6 0 000 12zm8 9.509A3.502 3.502 0 0143.5 28h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 36h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 44h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 52h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 60h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 68h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 76h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 84h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 92h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 100h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.505 3.505 0 0143.497 108h33.006A3.497 3.497 0 0180 111.509v.982A3.505 3.505 0 0176.503 116H43.497A3.497 3.497 0 0140 112.491v-.982zM32 38a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12z\"/></svg>"
},
"$:/core/images/locked-padlock": {
"title": "$:/core/images/locked-padlock",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-locked-padlock tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M96.472 64H105v32.01C105 113.674 90.674 128 73.001 128H56C38.318 128 24 113.677 24 96.01V64h8c.003-15.723.303-47.731 32.16-47.731 31.794 0 32.305 32.057 32.312 47.731zm-15.897 0H48.44c.002-16.287.142-32 15.719-32 15.684 0 16.977 16.136 16.415 32zM67.732 92.364A8.503 8.503 0 0064.5 76a8.5 8.5 0 00-3.498 16.25l-5.095 22.77H72.8l-5.07-22.656z\"/></svg>"
},
"$:/core/images/mail": {
"title": "$:/core/images/mail",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mail tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M122.827 104.894a7.986 7.986 0 01-2.834.516H8.007c-.812 0-1.597-.12-2.335-.345l34.163-34.163 20.842 20.842a3.998 3.998 0 003.418 1.134 4.003 4.003 0 003.395-1.134L88.594 70.64c.075.09.155.176.24.26l33.993 33.994zm5.076-6.237c.064-.406.097-.823.097-1.247v-64c0-.669-.082-1.318-.237-1.94L94.23 65.006c.09.075.177.154.261.239l33.413 33.413zm-127.698.56A8.023 8.023 0 010 97.41v-64c0-.716.094-1.41.271-2.071l33.907 33.906L.205 99.218zM5.93 25.684a8.012 8.012 0 012.078-.273h111.986c.766 0 1.507.108 2.209.308L64.083 83.837 5.93 25.683z\"/></svg>"
},
"$:/core/images/menu-button": {
"title": "$:/core/images/menu-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-menu-button tc-image-button\" viewBox=\"0 0 128 128\"><rect width=\"128\" height=\"16\" y=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"56\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"96\" rx=\"8\"/></svg>"
},
"$:/core/images/mono-block": {
"title": "$:/core/images/mono-block",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mono-block tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M23.965 32.967h.357c.755 0 1.328.192 1.72.577.39.384.586.947.586 1.688 0 .824-.206 1.418-.618 1.782-.413.363-1.094.545-2.045.545h-6.31c-.965 0-1.65-.178-2.056-.535-.405-.356-.608-.954-.608-1.792 0-.811.203-1.391.608-1.74.406-.35 1.09-.525 2.055-.525h.734l-.86-2.453H8.471l-.902 2.453h.734c.95 0 1.632.178 2.044.535.413.356.619.933.619 1.73 0 .824-.206 1.418-.619 1.782-.412.363-1.094.545-2.044.545h-5.41c-.964 0-1.649-.182-2.054-.545-.406-.364-.608-.958-.608-1.782 0-.741.195-1.304.587-1.688.391-.385.964-.577 1.719-.577h.356l5.62-15.641H6.835c-.95 0-1.632-.182-2.044-.546-.412-.363-.619-.95-.619-1.76 0-.825.207-1.42.619-1.783.412-.363 1.094-.545 2.044-.545h7.863c1.244 0 2.118.67 2.62 2.013v.063l6.647 18.2zM12.98 17.326l-3.04 8.848h6.08l-3.04-8.848zm22.402 9.372v6.395h3.145c2.223 0 3.788-.245 4.697-.734.908-.49 1.362-1.307 1.362-2.453 0-1.16-.433-1.985-1.3-2.474-.866-.49-2.383-.734-4.55-.734h-3.354zm10.693-2.327c1.524.559 2.642 1.324 3.355 2.295.713.972 1.07 2.212 1.07 3.722 0 1.272-.308 2.432-.923 3.48-.615 1.049-1.496 1.909-2.642 2.58a7.499 7.499 0 01-2.254.849c-.832.174-2.01.262-3.533.262H30.202c-.922 0-1.583-.182-1.981-.545-.399-.364-.598-.958-.598-1.782 0-.741.189-1.304.566-1.688.378-.385.93-.577 1.657-.577h.356V17.326h-.356c-.727 0-1.28-.196-1.657-.587-.377-.392-.566-.965-.566-1.72 0-.81.203-1.401.608-1.771.406-.37 1.062-.556 1.971-.556h9.645c2.95 0 5.19.573 6.72 1.72 1.53 1.145 2.296 2.823 2.296 5.031 0 1.09-.234 2.052-.703 2.883-.468.832-1.163 1.513-2.086 2.045zM35.381 17.2v5.284h2.83c1.72 0 2.932-.203 3.638-.609.706-.405 1.06-1.09 1.06-2.054 0-.909-.319-1.573-.955-1.992-.636-.42-1.667-.63-3.093-.63h-3.48zm35.863-3.816c.28-.503.566-.86.86-1.07.293-.21.664-.314 1.111-.314.685 0 1.17.182 1.457.545.287.364.43.986.43 1.866l.042 5.452c0 .964-.157 1.614-.472 1.95-.314.335-.884.503-1.709.503-.587 0-1.037-.14-1.352-.42-.314-.28-.584-.796-.807-1.551-.364-1.328-.944-2.282-1.74-2.862-.797-.58-1.901-.87-3.313-.87-2.153 0-3.802.727-4.948 2.18-1.147 1.454-1.72 3.558-1.72 6.311 0 2.74.58 4.844 1.74 6.311 1.16 1.468 2.817 2.202 4.97 2.202 1.467 0 3.085-.49 4.854-1.468 1.768-.978 2.883-1.467 3.344-1.467.545 0 1.003.23 1.373.692.37.46.556 1.034.556 1.719 0 1.23-1.084 2.39-3.25 3.48-2.167 1.09-4.606 1.636-7.318 1.636-3.662 0-6.625-1.21-8.89-3.627-2.264-2.419-3.396-5.578-3.396-9.478 0-3.76 1.146-6.884 3.438-9.372 2.293-2.488 5.2-3.732 8.723-3.732.992 0 1.97.112 2.935.335.964.224 1.992.574 3.082 1.049zm10.22 19.583V17.326h-.356c-.755 0-1.328-.196-1.72-.587-.39-.392-.586-.965-.586-1.72 0-.81.21-1.401.629-1.771.42-.37 1.097-.556 2.034-.556h5.178c2.922 0 5.06.126 6.416.377 1.356.252 2.51.671 3.46 1.258 1.691 1.007 2.988 2.443 3.89 4.31.9 1.865 1.352 4.021 1.352 6.467 0 2.586-.514 4.847-1.541 6.783-1.028 1.936-2.485 3.4-4.372 4.393-.853.447-1.852.772-2.998.975-1.147.203-2.852.304-5.116.304h-6.269c-.965 0-1.65-.178-2.055-.535-.406-.356-.608-.954-.608-1.792 0-.741.195-1.304.587-1.688.391-.385.964-.577 1.72-.577h.356zm5.41-15.725v15.725h1.195c2.642 0 4.592-.646 5.85-1.94 1.258-1.292 1.887-3.28 1.887-5.965 0-2.641-.64-4.612-1.918-5.912-1.28-1.3-3.205-1.95-5.777-1.95-.335 0-.59.003-.765.01a7.992 7.992 0 00-.472.032zm35.067-.126h-9.75v5.368h3.69v-.252c0-.797.175-1.39.524-1.782.35-.392.88-.587 1.594-.587.629 0 1.142.178 1.54.534.4.357.598.808.598 1.353 0 .028.007.118.021.272.014.154.021.308.021.462v4.34c0 .936-.167 1.607-.503 2.013-.335.405-.88.608-1.635.608-.713 0-1.251-.19-1.615-.567-.363-.377-.545-.936-.545-1.677v-.377h-3.69v6.269h9.75v-2.495c0-.937.178-1.608.534-2.013.357-.405.94-.608 1.75-.608.798 0 1.367.2 1.71.597.342.399.513 1.073.513 2.024v5.074c0 .755-.146 1.258-.44 1.51-.293.251-.873.377-1.74.377h-17.172c-.923 0-1.583-.182-1.982-.545-.398-.364-.597-.958-.597-1.782 0-.741.189-1.304.566-1.688.377-.385.93-.577 1.656-.577h.357V17.326h-.357c-.712 0-1.261-.2-1.646-.598-.384-.398-.576-.968-.576-1.709 0-.81.203-1.401.608-1.771.405-.37 1.062-.556 1.97-.556h17.173c.853 0 1.43.13 1.73.388.3.258.45.772.45 1.54v4.698c0 .95-.174 1.631-.524 2.044-.35.412-.915.618-1.698.618-.81 0-1.394-.21-1.75-.629-.357-.419-.535-1.097-.535-2.033v-2.202zM19.77 47.641c.267-.504.55-.86.85-1.07.3-.21.675-.314 1.122-.314.685 0 1.17.181 1.457.545.287.363.43.985.43 1.866l.042 5.451c0 .965-.157 1.615-.472 1.95-.314.336-.891.504-1.73.504-.587 0-1.045-.144-1.373-.43-.329-.287-.598-.8-.807-1.541-.378-1.342-.958-2.3-1.74-2.873-.783-.573-1.88-.86-3.292-.86-2.153 0-3.799.727-4.938 2.181-1.14 1.454-1.709 3.557-1.709 6.311s.598 4.882 1.793 6.385C10.599 67.248 12.294 68 14.488 68c.503 0 1.077-.06 1.72-.179a23.809 23.809 0 002.264-.555v-3.313h-2.37c-.95 0-1.624-.175-2.023-.524-.398-.35-.597-.93-.597-1.74 0-.84.199-1.437.597-1.793.399-.357 1.073-.535 2.024-.535h7.569c.978 0 1.667.175 2.065.524.398.35.598.937.598 1.762 0 .74-.2 1.31-.598 1.708-.398.399-.975.598-1.73.598h-.335v5.242c0 .447-.05.758-.147.933-.098.174-.293.353-.587.534-.797.476-2.062.895-3.795 1.258a25.576 25.576 0 01-5.263.546c-3.662 0-6.625-1.21-8.89-3.628-2.264-2.418-3.397-5.577-3.397-9.477 0-3.76 1.147-6.884 3.44-9.372 2.292-2.488 5.199-3.732 8.721-3.732.979 0 1.954.112 2.925.335.972.224 2.003.573 3.093 1.049zm15.84 3.941v4.823h6.857v-4.823h-.336c-.754 0-1.331-.195-1.73-.587-.398-.391-.597-.964-.597-1.719 0-.825.206-1.419.619-1.782.412-.364 1.093-.545 2.044-.545h5.41c.95 0 1.624.181 2.023.545.398.363.597.957.597 1.782 0 .755-.192 1.328-.576 1.72-.385.39-.947.586-1.688.586h-.357v15.642h.357c.755 0 1.328.192 1.719.576.391.385.587.947.587 1.688 0 .825-.203 1.419-.608 1.782-.405.364-1.09.546-2.055.546h-5.41c-.964 0-1.649-.179-2.054-.535-.405-.357-.608-.954-.608-1.793 0-.74.2-1.303.598-1.688.398-.384.975-.576 1.73-.576h.335v-6.186h-6.856v6.186h.335c.755 0 1.331.192 1.73.576.398.385.597.947.597 1.688 0 .825-.206 1.419-.618 1.782-.412.364-1.094.546-2.044.546h-5.41c-.964 0-1.65-.179-2.055-.535-.405-.357-.608-.954-.608-1.793 0-.74.196-1.303.587-1.688.392-.384.965-.576 1.72-.576h.356V51.582h-.356c-.741 0-1.304-.195-1.688-.587-.385-.391-.577-.964-.577-1.719 0-.825.2-1.419.598-1.782.398-.364 1.073-.545 2.023-.545h5.41c.936 0 1.614.181 2.033.545.42.363.63.957.63 1.782 0 .755-.2 1.328-.598 1.72-.399.39-.975.586-1.73.586h-.335zm31.754 0v15.642h3.523c.95 0 1.632.178 2.044.534.412.357.618.933.618 1.73 0 .811-.21 1.402-.629 1.772-.419.37-1.097.556-2.033.556H58.433c-.95 0-1.632-.182-2.044-.546-.412-.363-.619-.957-.619-1.782 0-.81.203-1.39.608-1.74.406-.35 1.09-.524 2.055-.524h3.523V51.582h-3.523c-.95 0-1.632-.181-2.044-.545-.412-.363-.619-.95-.619-1.761 0-.825.203-1.412.608-1.761.406-.35 1.09-.524 2.055-.524h12.455c.992 0 1.684.174 2.075.524.392.35.587.936.587 1.761 0 .81-.202 1.398-.608 1.761-.405.364-1.09.545-2.054.545h-3.523zm30.496 0v11.994c0 1.873-.122 3.228-.367 4.067a5.876 5.876 0 01-1.227 2.244c-.74.852-1.768 1.495-3.082 1.929-1.314.433-2.893.65-4.738.65-1.3 0-2.555-.126-3.764-.378a16.843 16.843 0 01-3.491-1.132c-.615-.28-1.017-.643-1.206-1.09-.188-.448-.283-1.175-.283-2.18v-4.32c0-1.202.175-2.04.525-2.516.349-.475.957-.713 1.824-.713 1.244 0 1.929.915 2.054 2.747.014.321.035.566.063.733.168 1.622.545 2.73 1.133 3.324.587.594 1.523.89 2.81.89 1.593 0 2.714-.422 3.364-1.268.65-.845.975-2.386.975-4.623V51.582H88.93c-.95 0-1.632-.181-2.044-.545-.413-.363-.619-.95-.619-1.761 0-.825.2-1.412.598-1.761.398-.35 1.086-.524 2.065-.524h10.693c.979 0 1.667.174 2.065.524.399.35.598.936.598 1.761 0 .81-.206 1.398-.619 1.761-.412.364-1.093.545-2.044.545h-1.761zm14.644 0v6.353l6.48-6.478c-.728-.084-1.238-.29-1.531-.619-.294-.328-.44-.85-.44-1.562 0-.825.198-1.419.597-1.782.398-.364 1.073-.545 2.023-.545h5.137c.95 0 1.625.181 2.023.545.399.363.598.957.598 1.782 0 .769-.2 1.345-.598 1.73-.398.384-.982.576-1.75.576h-.483l-6.101 6.06c1.132.839 2.167 1.94 3.103 3.302.937 1.363 2.034 3.456 3.292 6.28h.692c.825 0 1.44.188 1.845.566.405.377.608.943.608 1.698 0 .825-.206 1.419-.619 1.782-.412.364-1.093.546-2.044.546h-2.579c-1.132 0-2.048-.762-2.746-2.286-.126-.28-.224-.503-.294-.67-.923-1.958-1.768-3.467-2.537-4.53a16.616 16.616 0 00-2.705-2.914l-1.97 1.887v3.92h.335c.755 0 1.331.193 1.73.577.398.385.597.947.597 1.688 0 .825-.206 1.419-.618 1.782-.413.364-1.094.546-2.045.546h-5.41c-.964 0-1.649-.179-2.054-.535-.405-.357-.608-.954-.608-1.793 0-.74.196-1.303.587-1.688.391-.384.965-.576 1.72-.576h.356V51.582h-.357c-.74 0-1.303-.195-1.687-.587-.385-.391-.577-.964-.577-1.719 0-.825.2-1.419.598-1.782.398-.364 1.072-.545 2.023-.545h5.41c.936 0 1.614.181 2.033.545.42.363.63.957.63 1.782 0 .755-.2 1.328-.598 1.72-.399.39-.975.586-1.73.586h-.336zM13.44 96.326l4.005-11.889c.251-.782.6-1.352 1.048-1.709.447-.356 1.041-.534 1.782-.534h3.271c.95 0 1.632.182 2.044.545.413.363.619.957.619 1.782 0 .755-.2 1.328-.598 1.72-.398.39-.975.587-1.73.587h-.335l.587 15.641h.357c.754 0 1.32.192 1.698.577.377.384.566.947.566 1.687 0 .825-.2 1.42-.598 1.783-.398.363-1.072.545-2.023.545h-4.718c-.95 0-1.624-.178-2.023-.535-.398-.356-.597-.954-.597-1.793 0-.74.192-1.303.576-1.687.385-.385.954-.577 1.709-.577h.335l-.293-12.79-3.061 9.52c-.224.712-.542 1.226-.954 1.54-.413.315-.982.472-1.709.472-.727 0-1.303-.157-1.73-.472-.426-.314-.751-.828-.975-1.54l-3.04-9.52-.294 12.79h.336c.755 0 1.324.192 1.709.577.384.384.576.947.576 1.687 0 .825-.202 1.42-.608 1.783-.405.363-1.076.545-2.013.545H2.621c-.937 0-1.608-.182-2.013-.545-.405-.364-.608-.958-.608-1.783 0-.74.192-1.303.577-1.687.384-.385.954-.577 1.708-.577h.336l.608-15.641h-.336c-.754 0-1.331-.196-1.73-.588-.398-.39-.597-.964-.597-1.719 0-.825.206-1.419.619-1.782.412-.363 1.093-.545 2.044-.545h3.27c.728 0 1.311.175 1.752.524.44.35.8.923 1.08 1.72l4.109 11.888zm30.454 2.054V86.828H42.74c-.922 0-1.583-.182-1.981-.546-.398-.363-.598-.95-.598-1.76 0-.812.2-1.402.598-1.773.398-.37 1.059-.555 1.981-.555h5.955c.909 0 1.566.185 1.97.555.406.37.609.961.609 1.772 0 .741-.192 1.31-.577 1.709-.384.398-.933.598-1.646.598h-.356v19.038c0 .657-.07 1.069-.21 1.237-.14.167-.454.251-.943.251h-2.097c-.67 0-1.143-.07-1.415-.21-.273-.14-.507-.384-.703-.733l-8.722-15.327v11.385h1.216c.909 0 1.559.175 1.95.524.392.35.587.93.587 1.74 0 .825-.199 1.42-.597 1.783-.399.363-1.045.545-1.94.545h-6.017c-.909 0-1.566-.182-1.971-.545-.406-.364-.608-.958-.608-1.783 0-.74.188-1.303.566-1.687.377-.385.936-.577 1.677-.577h.336V86.828h-.336c-.713 0-1.265-.2-1.656-.598-.392-.398-.587-.968-.587-1.709 0-.81.206-1.401.618-1.772.413-.37 1.066-.555 1.96-.555h3.44c.824 0 1.383.108 1.677.325.293.216.622.653.985 1.31l7.989 14.551zM64.66 86.366c-1.803 0-3.218.727-4.245 2.18-1.028 1.455-1.541 3.474-1.541 6.06 0 2.586.517 4.613 1.551 6.08 1.034 1.468 2.446 2.202 4.235 2.202 1.804 0 3.222-.73 4.257-2.19 1.034-1.461 1.551-3.492 1.551-6.092 0-2.586-.513-4.605-1.54-6.06-1.028-1.453-2.45-2.18-4.268-2.18zm0-4.864c3.44 0 6.27 1.23 8.492 3.69 2.223 2.46 3.334 5.598 3.334 9.414 0 3.844-1.104 6.99-3.313 9.436-2.208 2.446-5.046 3.669-8.513 3.669-3.424 0-6.255-1.234-8.491-3.701-2.237-2.467-3.355-5.602-3.355-9.404 0-3.83 1.108-6.971 3.323-9.424 2.216-2.454 5.057-3.68 8.523-3.68zM87.461 98.17v4.298h2.16c.908 0 1.555.175 1.94.524.384.35.576.93.576 1.74 0 .825-.196 1.42-.587 1.783-.392.363-1.035.545-1.93.545h-7.254c-.922 0-1.583-.182-1.981-.545-.399-.364-.598-.958-.598-1.783 0-.74.189-1.303.566-1.687.378-.385.93-.577 1.657-.577h.356V86.828h-.356c-.713 0-1.262-.2-1.646-.598-.385-.398-.577-.968-.577-1.709 0-.81.203-1.401.608-1.772.406-.37 1.063-.555 1.971-.555h8.66c3.424 0 6.014.657 7.768 1.97 1.754 1.315 2.631 3.25 2.631 5.809 0 2.697-.873 4.738-2.62 6.122-1.748 1.384-4.34 2.076-7.78 2.076h-3.564zm0-11.343v6.625h2.977c1.65 0 2.89-.28 3.722-.839.832-.559 1.248-1.397 1.248-2.516 0-1.048-.43-1.855-1.29-2.421-.86-.566-2.086-.85-3.68-.85h-2.977zm27.267 20.568l-1.636 1.636a12.37 12.37 0 011.772-.44c.58-.098 1.15-.147 1.709-.147 1.104 0 2.268.164 3.491.492 1.223.329 1.967.493 2.233.493.447 0 1.03-.15 1.75-.45.72-.301 1.206-.452 1.458-.452.517 0 .947.2 1.29.598.342.398.513.898.513 1.5 0 .796-.472 1.474-1.415 2.033-.944.56-2.1.839-3.47.839-.937 0-2.139-.22-3.607-.66-1.467-.441-2.53-.661-3.187-.661-.992 0-2.11.272-3.354.817-1.244.546-2.013.818-2.307.818a2.14 2.14 0 01-1.53-.597c-.42-.399-.63-.878-.63-1.437 0-.391.134-.807.4-1.247.265-.44.733-1.01 1.404-1.709l2.118-2.139c-2.335-.852-4.194-2.386-5.578-4.602-1.384-2.215-2.075-4.763-2.075-7.642 0-3.802 1.104-6.909 3.312-9.32 2.209-2.411 5.053-3.617 8.534-3.617 3.467 0 6.304 1.209 8.513 3.627 2.208 2.418 3.312 5.522 3.312 9.31 0 3.774-1.097 6.884-3.291 9.33-2.195 2.446-4.977 3.67-8.345 3.67a22.5 22.5 0 01-1.384-.043zm1.195-21.03c-1.803 0-3.218.727-4.246 2.18-1.027 1.455-1.54 3.474-1.54 6.06 0 2.586.516 4.613 1.55 6.08 1.035 1.468 2.447 2.202 4.236 2.202 1.803 0 3.222-.73 4.256-2.19 1.035-1.461 1.552-3.492 1.552-6.092 0-2.586-.514-4.605-1.541-6.06-1.028-1.453-2.45-2.18-4.267-2.18z\"/></svg>"
},
"$:/core/images/mono-line": {
"title": "$:/core/images/mono-line",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mono-line tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60.437 84.523h.908c1.922 0 3.381.489 4.378 1.468.997.979 1.495 2.411 1.495 4.298 0 2.1-.525 3.612-1.575 4.538-1.05.925-2.785 1.388-5.206 1.388h-16.07c-2.456 0-4.2-.454-5.232-1.361-1.032-.908-1.548-2.43-1.548-4.565 0-2.065.516-3.542 1.548-4.432 1.032-.89 2.776-1.334 5.232-1.334h1.869l-2.19-6.247H20.983l-2.296 6.247h1.87c2.42 0 4.155.453 5.205 1.361 1.05.908 1.575 2.376 1.575 4.405 0 2.1-.525 3.612-1.575 4.538-1.05.925-2.785 1.388-5.206 1.388H6.781c-2.456 0-4.2-.463-5.233-1.388C.516 93.9 0 92.389 0 90.289c0-1.887.498-3.32 1.495-4.298.997-.979 2.456-1.468 4.378-1.468h.908l14.308-39.83h-4.271c-2.42 0-4.156-.462-5.206-1.387-1.05-.926-1.575-2.42-1.575-4.485 0-2.1.525-3.613 1.575-4.538 1.05-.926 2.785-1.388 5.206-1.388h20.021c3.168 0 5.392 1.708 6.674 5.125v.16l16.924 46.343zm-27.976-39.83L24.72 67.225h15.483l-7.742-22.53zM89.506 68.56v16.284h8.008c5.66 0 9.646-.623 11.96-1.869 2.313-1.245 3.47-3.328 3.47-6.246 0-2.955-1.103-5.055-3.31-6.3-2.207-1.246-6.069-1.869-11.586-1.869h-8.542zm27.229-5.926c3.88 1.423 6.727 3.372 8.542 5.846 1.815 2.474 2.723 5.633 2.723 9.477 0 3.239-.783 6.193-2.35 8.862-1.565 2.67-3.808 4.859-6.726 6.567-1.709.997-3.622 1.718-5.74 2.163-2.118.445-5.116.667-8.996.667h-27.87c-2.349 0-4.03-.463-5.045-1.388-1.014-.926-1.521-2.438-1.521-4.538 0-1.887.48-3.32 1.441-4.298.961-.979 2.367-1.468 4.218-1.468h.907v-39.83h-.907c-1.851 0-3.257-.498-4.218-1.494-.961-.997-1.441-2.456-1.441-4.378 0-2.065.516-3.568 1.548-4.512 1.032-.943 2.705-1.414 5.018-1.414h24.56c7.51 0 13.214 1.459 17.111 4.377 3.898 2.92 5.847 7.19 5.847 12.814 0 2.776-.597 5.223-1.789 7.341-1.192 2.118-2.963 3.853-5.312 5.206zm-27.23-18.26v13.455h7.208c4.378 0 7.466-.516 9.264-1.549 1.797-1.032 2.696-2.776 2.696-5.232 0-2.313-.81-4.004-2.43-5.072-1.619-1.068-4.244-1.602-7.874-1.602h-8.863z\"/></svg>"
},
"$:/core/images/new-button": {
"title": "$:/core/images/new-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 72H8.007C3.591 72 0 68.418 0 64c0-4.41 3.585-8 8.007-8H56V8.007C56 3.591 59.582 0 64 0c4.41 0 8 3.585 8 8.007V56h47.993c4.416 0 8.007 3.582 8.007 8 0 4.41-3.585 8-8.007 8H72v47.993c0 4.416-3.582 8.007-8 8.007-4.41 0-8-3.585-8-8.007V72z\"/></svg>"
},
"$:/core/images/new-here-button": {
"title": "$:/core/images/new-here-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-here-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.838 20.935l-3.572.938c-3.688.968-8.23 4.43-10.136 7.731L3.37 96.738c-1.905 3.3-.771 7.524 2.534 9.432l33.717 19.466c3.297 1.904 7.53.78 9.435-2.521l38.76-67.134c1.905-3.3 2.632-8.963 1.623-12.646L83.285 20.88c-1.009-3.68-4.821-5.884-8.513-4.915l-7.603 1.995.043.287c.524 3.394 2.053 7.498 4.18 11.55.418.163.829.36 1.23.59a8.864 8.864 0 014.438 8.169c.104.132.21.264.316.395l-.386.318a8.663 8.663 0 01-1.082 3.137c-2.42 4.192-7.816 5.608-12.051 3.163-4.12-2.379-5.624-7.534-3.476-11.671-2.177-4.394-3.788-8.874-4.543-12.964z\"/><path d=\"M69.554 44.76c-5.944-7.476-10.74-17.196-11.955-25.059-1.68-10.875 3.503-18.216 15.082-18.04 10.407.158 19.975 5.851 24.728 13.785 5.208 8.695 2.95 17.868-6.855 20.496l-2.037-7.601c4.232-1.134 4.999-4.248 2.24-8.853-3.37-5.626-10.465-9.848-18.146-9.965-6.392-.097-8.31 2.62-7.323 9.01.999 6.465 5.318 15.138 10.582 21.65l-.072.06c.559 1.553-4.17 6.44-5.938 4.888l-.005.004-.028-.034a1.323 1.323 0 01-.124-.135 2.618 2.618 0 01-.149-.205z\"/><rect width=\"16\" height=\"48\" x=\"96\" y=\"80\" rx=\"8\"/><rect width=\"48\" height=\"16\" x=\"80\" y=\"96\" rx=\"8\"/></g></svg>"
},
"$:/core/images/new-image-button": {
"title": "$:/core/images/new-image-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-image-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M81.362 73.627l15.826-27.41a2.626 2.626 0 00-.962-3.59l-50.01-28.872a2.626 2.626 0 00-3.588.961L30.058 36.49l10.04-5.261c3.042-1.595 6.771.114 7.55 3.46l3.607 17.702 9.88.85a5.25 5.25 0 014.571 3.77c.034.115.1.344.199.671.165.553.353 1.172.562 1.843.595 1.914 1.23 3.85 1.872 5.678.207.588.412 1.156.614 1.701.625 1.685 1.209 3.114 1.725 4.207.255.54.485.977.726 1.427.214.212.547.425 1.011.622 1.141.482 2.784.74 4.657.758.864.008 1.71-.034 2.492-.11.448-.043.753-.085.871-.104.315-.053.625-.077.927-.076zM37.47 2.649A5.257 5.257 0 0144.649.725l63.645 36.746a5.257 5.257 0 011.923 7.178L73.47 108.294a5.257 5.257 0 01-7.177 1.923L2.649 73.47a5.257 5.257 0 01-1.924-7.177L37.471 2.649zm42.837 50.49a5.25 5.25 0 105.25-9.092 5.25 5.25 0 00-5.25 9.093zM96 112h-7.993c-4.419 0-8.007-3.582-8.007-8 0-4.41 3.585-8 8.007-8H96v-7.993C96 83.588 99.582 80 104 80c4.41 0 8 3.585 8 8.007V96h7.993c4.419 0 8.007 3.582 8.007 8 0 4.41-3.585 8-8.007 8H112v7.993c0 4.419-3.582 8.007-8 8.007-4.41 0-8-3.585-8-8.007V112zM33.347 51.791c7.428 7.948 9.01 10.69 7.449 13.394-1.56 2.703-13.838-2.328-16.094 1.58-2.256 3.908-.907 3.258-2.437 5.908l19.73 11.39s-5.605-8.255-4.235-10.628c2.515-4.356 8.77-1.256 10.365-4.019 2.414-4.181-5.103-9.639-14.778-17.625z\"/></svg>"
},
"$:/core/images/new-journal-button": {
"title": "$:/core/images/new-journal-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-journal-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M102.545 112.818v11.818c0 1.306 1.086 2.364 2.425 2.364h6.06c1.34 0 2.425-1.058 2.425-2.364v-11.818h12.12c1.34 0 2.425-1.058 2.425-2.363v-5.91c0-1.305-1.085-2.363-2.424-2.363h-12.121V90.364c0-1.306-1.086-2.364-2.425-2.364h-6.06c-1.34 0-2.425 1.058-2.425 2.364v11.818h-12.12c-1.34 0-2.425 1.058-2.425 2.363v5.91c0 1.305 1.085 2.363 2.424 2.363h12.121zM60.016 4.965c-4.781-2.76-10.897-1.118-13.656 3.66L5.553 79.305A9.993 9.993 0 009.21 92.963l51.04 29.468c4.78 2.76 10.897 1.118 13.655-3.66l40.808-70.681a9.993 9.993 0 00-3.658-13.656L60.016 4.965zm-3.567 27.963a6 6 0 106-10.393 6 6 0 00-6 10.393zm31.697 17.928a6 6 0 106-10.392 6 6 0 00-6 10.392z\"/><text class=\"tc-fill-background\" font-family=\"Helvetica\" font-size=\"47.172\" font-weight=\"bold\" transform=\"rotate(30 25.742 95.82)\"><tspan x=\"42\" y=\"77.485\" text-anchor=\"middle\"><<now \"DD\">></tspan></text></g></svg>"
},
"$:/core/images/opacity": {
"title": "$:/core/images/opacity",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-opacity tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M102.362 65a51.595 51.595 0 01-1.942 6H82.584a35.867 35.867 0 002.997-6h16.78zm.472-2c.423-1.961.734-3.963.929-6H87.656a35.78 35.78 0 01-1.368 6h16.546zm-3.249 10a51.847 51.847 0 01-3.135 6H75.812a36.205 36.205 0 005.432-6h18.341zm-4.416 8c-1.424 2.116-3 4.12-4.71 6H60.46a35.843 35.843 0 0012.874-6h21.834zm-7.513-34h16.107C101.247 20.627 79.033 0 52 0 23.281 0 0 23.281 0 52c0 25.228 17.965 46.26 41.8 51h20.4a51.66 51.66 0 0015.875-6H39v-2h42.25a52.257 52.257 0 007.288-6H39v-2h4.539C27.739 83.194 16 68.968 16 52c0-19.882 16.118-36 36-36 18.186 0 33.222 13.484 35.656 31zm.22 2h16.039a52.823 52.823 0 010 6H87.877a36.483 36.483 0 000-6z\"/><path d=\"M76 128c28.719 0 52-23.281 52-52s-23.281-52-52-52-52 23.281-52 52 23.281 52 52 52zm0-16c19.882 0 36-16.118 36-36S95.882 40 76 40 40 56.118 40 76s16.118 36 36 36z\"/><path d=\"M37 58h53v4H37v-4zm3-8h53v4H40v-4zm0-8h53v4H40v-4zm-8 24h53v4H32v-4zm-2 8h53v4H30v-4zm-3 8h53v4H27v-4z\"/></g></svg>"
},
"$:/core/images/open-window": {
"title": "$:/core/images/open-window",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-open-window tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M16 112h88.994c3.87 0 7.006 3.59 7.006 8 0 4.418-3.142 8-7.006 8H7.006C3.136 128 0 124.41 0 120a9.321 9.321 0 010-.01V24.01C0 19.586 3.59 16 8 16c4.418 0 8 3.584 8 8.01V112z\"/><path d=\"M96 43.196V56a8 8 0 1016 0V24c0-4.41-3.585-8-8.007-8H72.007C67.588 16 64 19.582 64 24c0 4.41 3.585 8 8.007 8H84.57l-36.3 36.299a8 8 0 00-.001 11.316c3.117 3.117 8.19 3.123 11.316-.003L96 43.196zM32 7.999C32 3.581 35.588 0 40 0h80c4.419 0 8 3.588 8 8v80c0 4.419-3.588 8-8 8H40c-4.419 0-8-3.588-8-8V8z\"/></g></svg>"
},
"$:/core/images/options-button": {
"title": "$:/core/images/options-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-options-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M110.488 76a47.712 47.712 0 01-5.134 12.384l6.724 6.724c3.123 3.123 3.132 8.192.011 11.313l-5.668 5.668c-3.12 3.12-8.186 3.117-11.313-.01l-6.724-6.725c-3.82 2.258-7.98 4-12.384 5.134v9.505c0 4.417-3.578 8.007-7.992 8.007h-8.016C55.58 128 52 124.415 52 119.993v-9.505a47.712 47.712 0 01-12.384-5.134l-6.724 6.725c-3.123 3.122-8.192 3.131-11.313.01l-5.668-5.668c-3.12-3.12-3.116-8.186.01-11.313l6.725-6.724c-2.257-3.82-4-7.98-5.134-12.384H8.007C3.591 76 0 72.422 0 68.01v-8.017C0 55.58 3.585 52 8.007 52h9.505a47.712 47.712 0 015.134-12.383l-6.724-6.725c-3.123-3.122-3.132-8.191-.011-11.312l5.668-5.669c3.12-3.12 8.186-3.116 11.313.01l6.724 6.725c3.82-2.257 7.98-4 12.384-5.134V8.007C52 3.591 55.578 0 59.992 0h8.016C72.42 0 76 3.585 76 8.007v9.505a47.712 47.712 0 0112.384 5.134l6.724-6.724c3.123-3.123 8.192-3.132 11.313-.01l5.668 5.668c3.12 3.12 3.116 8.186-.01 11.312l-6.725 6.725c2.257 3.82 4 7.979 5.134 12.383h9.505c4.416 0 8.007 3.578 8.007 7.992v8.017c0 4.411-3.585 7.991-8.007 7.991h-9.505zM64 96c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32z\"/></svg>"
},
"$:/core/images/paint": {
"title": "$:/core/images/paint",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-paint tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M83.527 76.19C90.43 69.287 91.892 59 87.91 50.665l37.903-37.902c2.919-2.92 2.913-7.659 0-10.572a7.474 7.474 0 00-10.572 0L77.338 40.093c-8.335-3.982-18.622-2.521-25.526 4.383l31.715 31.715zm-2.643 2.644L49.169 47.119S8.506 81.243 0 80.282c0 0 3.782 5.592 6.827 8.039 14.024-5.69 37.326-24.6 37.326-24.6l.661.66S19.45 90.222 9.18 92.047c1.222 1.44 4.354 4.053 6.247 5.776 5.417-1.488 34.733-28.57 34.733-28.57l.661.66-32.407 31.022 5.285 5.286L56.106 75.2l.662.66s-27.864 30.536-28.684 32.432c0 0 6.032 6.853 7.569 7.824.702-2.836 27.884-33.485 27.884-33.485l.661.66s-20.597 23.755-24.964 36.732c3.21 3.549 7.5 5.137 10.926 6.298-2.19-11.817 30.724-47.487 30.724-47.487z\"/></svg>"
},
"$:/core/images/palette": {
"title": "$:/core/images/palette",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-palette tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M80.247 39.182a93.52 93.52 0 00-16.228-1.4C28.662 37.781 0 57.131 0 81.002c0 9.642 4.676 18.546 12.58 25.735C23.504 91.19 26.34 72.395 36.89 63.562c15.183-12.713 26.538-7.828 26.538-7.828l16.82-16.552zm26.535 9.655c13.049 7.913 21.257 19.392 21.257 32.166 0 9.35.519 17.411-11.874 25.08-10.797 6.681-3.824-6.536-11.844-10.898s-19.946 1.308-18.213 7.906c3.2 12.181 19.422 11.455 6.314 16.658-13.107 5.202-18.202 4.476-28.403 4.476-7.821 0-15.315-.947-22.243-2.68 9.844-4.197 27.88-12.539 33.354-19.456C82.788 92.409 87.37 80 83.324 72.484c-.194-.359 11.215-11.668 23.458-23.647zM1.134 123.867l-.66.002c33.479-14.94 22.161-64.226 58.818-64.226.317 1.418.644 2.944 1.062 4.494-25.907-4.166-23.567 48.031-59.22 59.73zm.713-.007c38.872-.506 78.152-22.347 78.152-44.813-9.27 0-14.073-3.48-16.816-7.942-16.597-7.003-30.365 45.715-61.336 52.755zm65.351-64.008c-4.45 4.115 4.886 16.433 11.318 11.318l45.27-45.27c11.317-11.318 0-22.635-11.318-11.318-11.317 11.318-33.518 34.405-45.27 45.27z\"/></svg>"
},
"$:/core/images/permalink-button": {
"title": "$:/core/images/permalink-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-permalink-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M80.483 48l-7.387 32h-25.58l7.388-32h25.58zm3.694-16l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L100.598 32h3.403c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8h-7.096l-7.387 32H104c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H85.824l-5.624 24.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L69.402 96h-25.58L38.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L27.402 96h-3.403C19.59 96 16 92.418 16 88c0-4.41 3.581-8 8-8h7.096l7.387-32H24C19.59 48 16 44.418 16 40c0-4.41 3.581-8 8-8h18.177l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L58.598 32h25.58z\"/></svg>"
},
"$:/core/images/permaview-button": {
"title": "$:/core/images/permaview-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-permaview-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M81.483 48l-1.846 8h-5.58l1.847-8h5.58zm3.694-16l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L101.598 32h2.403c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8h-6.096l-1.847 8h7.944c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H92.364l-1.846 8H104c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H86.824l-5.624 24.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L70.402 96h-5.58L59.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L48.402 96h-5.58L37.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L26.402 96h-2.403C19.59 96 16 92.418 16 88c0-4.41 3.581-8 8-8h6.096l1.847-8h-7.944C19.59 72 16 68.418 16 64c0-4.41 3.581-8 8-8h11.637l1.846-8H24C19.59 48 16 44.418 16 40c0-4.41 3.581-8 8-8h17.177l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L57.598 32h5.58L68.8 7.642c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L79.598 32h5.58zM53.904 48l-1.847 8h5.58l1.846-8h-5.579zm22.039 24l-1.847 8h-5.58l1.847-8h5.58zm-27.58 0l-1.846 8h5.579l1.847-8h-5.58z\"/></svg>"
},
"$:/core/images/picture": {
"title": "$:/core/images/picture",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-picture tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M112 68.233v-48.23A4.001 4.001 0 00107.997 16H20.003A4.001 4.001 0 0016 20.003v38.31l9.241-14.593c2.8-4.422 9.023-5.008 12.6-1.186l18.247 20.613 13.687-6.407a8 8 0 018.903 1.492 264.97 264.97 0 002.92 2.739 249.44 249.44 0 006.798 6.066 166.5 166.5 0 002.106 1.778c2.108 1.747 3.967 3.188 5.482 4.237.748.518 1.383.92 2.044 1.33.444.117 1.046.144 1.809.05 1.873-.233 4.238-1.144 6.723-2.547a36.016 36.016 0 003.205-2.044c.558-.4.93-.686 1.07-.802.376-.31.765-.577 1.165-.806zM0 8.007A8.01 8.01 0 018.007 0h111.986A8.01 8.01 0 01128 8.007v111.986a8.01 8.01 0 01-8.007 8.007H8.007A8.01 8.01 0 010 119.993V8.007zM95 42a8 8 0 100-16 8 8 0 000 16zM32 76c15.859 4.83 20.035 7.244 20.035 12S32 95.471 32 102.347c0 6.876 1.285 4.99 1.285 9.653H68s-13.685-6.625-13.685-10.8c0-7.665 10.615-8.34 10.615-13.2 0-7.357-14.078-8.833-32.93-12z\"/></svg>"
},
"$:/core/images/plugin-generic-language": {
"title": "$:/core/images/plugin-generic-language",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M61.207 68.137c-4.324 2.795-6.999 6.656-6.999 10.921 0 7.906 9.19 14.424 21.042 15.336 2.162 3.902 8.598 6.785 16.318 7.01-5.126-1.125-9.117-3.742-10.62-7.01C92.805 93.487 102 86.967 102 79.059c0-8.53-10.699-15.445-23.896-15.445-6.599 0-12.572 1.729-16.897 4.524zm12.794-14.158c-4.324 2.795-10.298 4.524-16.897 4.524-2.619 0-5.14-.272-7.497-.775-3.312 2.25-8.383 3.69-14.067 3.69l-.255-.002c4.119-.892 7.511-2.747 9.478-5.13-6.925-2.704-11.555-7.617-11.555-13.228 0-8.53 10.699-15.445 23.896-15.445C70.301 27.613 81 34.528 81 43.058c0 4.265-2.675 8.126-6.999 10.921zM64 0l54.56 32v64L64 128 9.44 96V32L64 0z\"/></svg>"
},
"$:/core/images/plugin-generic-plugin": {
"title": "$:/core/images/plugin-generic-plugin",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M40.397 76.446V95.34h14.12l-.001-.005a6.912 6.912 0 005.364-11.593l.046-.023a6.912 6.912 0 119.979.526l.086.055a6.914 6.914 0 004.408 10.948l-.023.092h21.32V75.568l-.15.038a6.912 6.912 0 00-11.593-5.364l-.022-.046a6.912 6.912 0 11.526-9.979l.055-.086a6.914 6.914 0 0010.948-4.408c.079.018.158.038.236.059v-15.74h-21.32l.023-.094a6.914 6.914 0 01-4.408-10.947 10.23 10.23 0 00-.086-.055 6.912 6.912 0 10-9.979-.526l-.046.023a6.912 6.912 0 01-5.364 11.593l.001.005h-14.12v12.847A6.912 6.912 0 0129.5 59.843l-.054.086a6.912 6.912 0 10-.526 9.979l.023.046a6.912 6.912 0 0111.455 6.492zM64 0l54.56 32v64L64 128 9.44 96V32L64 0z\"/></svg>"
},
"$:/core/images/plugin-generic-theme": {
"title": "$:/core/images/plugin-generic-theme",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M29.408 91.472L51.469 69.41l-.004-.005a2.22 2.22 0 01.004-3.146c.87-.87 2.281-.872 3.147-.005l9.465 9.464a2.22 2.22 0 01-.005 3.147c-.87.87-2.28.871-3.147.005l-.005-.005-22.061 22.062a6.686 6.686 0 11-9.455-9.455zM60.802 66.38c-2.436-2.704-4.465-5.091-5.817-6.869-6.855-9.014-10.313-4.268-14.226 0-3.913 4.268 1.03 7.726-2.683 10.741-3.713 3.015-3.484 4.06-9.752-1.455-6.267-5.516-6.7-7.034-3.823-10.181 2.877-3.147 5.281 1.808 11.159-3.785 5.877-5.593.94-10.55.94-10.55s12.237-25.014 28.588-23.167c16.351 1.848-6.186-2.392-11.792 17.226-2.4 8.4.447 6.42 4.998 9.968 1.394 1.086 6.03 4.401 11.794 8.685l20.677-20.676 1.615-4.766 7.84-4.689 3.151 3.152-4.688 7.84-4.766 1.615-20.224 20.223c12.663 9.547 28.312 22.146 28.312 26.709 0 7.217-3.071 11.526-9.535 9.164-4.693-1.715-18.768-15.192-28.753-25.897l-2.893 2.893-3.151-3.152 3.029-3.029zM63.953 0l54.56 32v64l-54.56 32-54.56-32V32l54.56-32z\"/></svg>"
},
"$:/core/images/preview-closed": {
"title": "$:/core/images/preview-closed",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-preview-closed tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M.088 64a7.144 7.144 0 001.378 5.458C16.246 88.818 39.17 100.414 64 100.414c24.83 0 47.753-11.596 62.534-30.956A7.144 7.144 0 00127.912 64C110.582 78.416 88.304 87.086 64 87.086 39.696 87.086 17.418 78.416.088 64z\"/><rect width=\"4\" height=\"16\" x=\"62\" y=\"96\" rx=\"4\"/><rect width=\"4\" height=\"16\" x=\"78\" y=\"93\" rx=\"4\" transform=\"rotate(-5 80 101)\"/><rect width=\"4\" height=\"16\" x=\"46\" y=\"93\" rx=\"4\" transform=\"rotate(5 48 101)\"/><rect width=\"4\" height=\"16\" x=\"30\" y=\"88\" rx=\"4\" transform=\"rotate(10 32 96)\"/><rect width=\"4\" height=\"16\" x=\"94\" y=\"88\" rx=\"4\" transform=\"rotate(-10 96 96)\"/><rect width=\"4\" height=\"16\" x=\"110\" y=\"80\" rx=\"4\" transform=\"rotate(-20 112 88)\"/><rect width=\"4\" height=\"16\" x=\"14\" y=\"80\" rx=\"4\" transform=\"rotate(20 16 88)\"/></g></svg>"
},
"$:/core/images/preview-open": {
"title": "$:/core/images/preview-open",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-preview-open tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64.11 99.588c-24.83 0-47.754-11.596-62.534-30.957a7.148 7.148 0 010-8.675C16.356 40.596 39.28 29 64.11 29c24.83 0 47.753 11.596 62.534 30.956a7.148 7.148 0 010 8.675c-14.78 19.36-37.703 30.957-62.534 30.957zm46.104-32.007c1.44-1.524 1.44-3.638 0-5.162C99.326 50.9 82.439 44 64.147 44S28.968 50.9 18.08 62.42c-1.44 1.523-1.44 3.637 0 5.16C28.968 79.1 45.855 86 64.147 86s35.179-6.9 46.067-18.42z\"/><path d=\"M63.5 88C76.479 88 87 77.479 87 64.5S76.479 41 63.5 41 40 51.521 40 64.5 50.521 88 63.5 88z\"/></g></svg>"
},
"$:/core/images/print-button": {
"title": "$:/core/images/print-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-print-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M112 71V30.5h-.032c-.035-2-.816-3.99-2.343-5.516L86.998 2.357A7.978 7.978 0 0081 .02V0H24a8 8 0 00-8 8v63h8V8h57v14.5c0 4.422 3.582 8 8 8h15V71h8z\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"36\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"52\" rx=\"4\"/><rect width=\"40\" height=\"8\" x=\"32\" y=\"20\" rx=\"4\"/><path d=\"M0 80.005C0 71.165 7.156 64 16 64h96c8.836 0 16 7.155 16 16.005v31.99c0 8.84-7.156 16.005-16 16.005H16c-8.836 0-16-7.155-16-16.005v-31.99zM104 96a8 8 0 100-16 8 8 0 000 16z\"/></g></svg>"
},
"$:/core/images/quote": {
"title": "$:/core/images/quote",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-quote tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M51.219 117.713V62.199H27.427c0-8.891 1.683-16.401 5.047-22.53 3.365-6.127 9.613-10.754 18.745-13.878V2c-7.45.961-14.36 3.184-20.728 6.669-6.368 3.484-11.835 7.87-16.401 13.157C9.524 27.113 5.98 33.241 3.456 40.21.933 47.18-.21 54.63.03 62.56v55.153H51.22zm76.781 0V62.199h-23.791c0-8.891 1.682-16.401 5.046-22.53 3.365-6.127 9.613-10.754 18.745-13.878V2c-7.45.961-14.359 3.184-20.727 6.669-6.369 3.484-11.836 7.87-16.402 13.157-4.566 5.287-8.11 11.415-10.634 18.384-2.523 6.97-3.665 14.42-3.424 22.35v55.153H128z\"/></svg>"
},
"$:/core/images/refresh-button": {
"title": "$:/core/images/refresh-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-refresh-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M106.369 39.433c10.16 20.879 6.57 46.764-10.771 64.106-21.87 21.87-57.327 21.87-79.196 0-21.87-21.87-21.87-57.326 0-79.196a8 8 0 1111.314 11.314c-15.621 15.62-15.621 40.947 0 56.568 15.62 15.621 40.947 15.621 56.568 0C97.72 78.79 99.6 58.175 89.924 42.73l-6.44 12.264a8 8 0 11-14.166-7.437L84.435 18.76a8 8 0 0110.838-3.345l28.873 15.345a8 8 0 11-7.51 14.129l-10.267-5.457zm-8.222-12.368c-.167-.19-.336-.38-.506-.57l.96-.296-.454.866z\"/></svg>"
},
"$:/core/images/right-arrow": {
"title": "$:/core/images/right-arrow",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-right-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M99.069 64.173c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l50.382-50.382-50.382-50.382a7.92 7.92 0 010-11.195c3.086-3.085 8.104-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.316 5.595z\"/></svg>"
},
"$:/core/images/rotate-left": {
"title": "$:/core/images/rotate-left",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-rotate-left tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"32\" height=\"80\" rx=\"8\"/><rect width=\"80\" height=\"32\" x=\"48\" y=\"96\" rx=\"8\"/><path d=\"M61.32 36.65c19.743 2.45 35.023 19.287 35.023 39.693a4 4 0 01-8 0c0-15.663-11.254-28.698-26.117-31.46l3.916 3.916a4 4 0 11-5.657 5.657L49.172 43.142a4 4 0 010-5.657l11.313-11.313a4 4 0 115.657 5.656l-4.821 4.822z\"/></g></svg>"
},
"$:/core/images/save-button": {
"title": "$:/core/images/save-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-save-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M120.783 34.33c4.641 8.862 7.266 18.948 7.266 29.646 0 35.347-28.653 64-64 64-35.346 0-64-28.653-64-64 0-35.346 28.654-64 64-64 18.808 0 35.72 8.113 47.43 21.03l2.68-2.68c3.13-3.13 8.197-3.132 11.321-.008 3.118 3.118 3.121 8.193-.007 11.32l-4.69 4.691zm-12.058 12.058a47.876 47.876 0 013.324 17.588c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48c14.39 0 27.3 6.332 36.098 16.362L58.941 73.544 41.976 56.578c-3.127-3.127-8.201-3.123-11.32-.005-3.123 3.124-3.119 8.194.006 11.319l22.617 22.617a7.992 7.992 0 005.659 2.347c2.05 0 4.101-.783 5.667-2.349l44.12-44.12z\"/></svg>"
},
"$:/core/images/size": {
"title": "$:/core/images/size",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-size tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M92.343 26l-9.171 9.172a4 4 0 105.656 5.656l16-16a4 4 0 000-5.656l-16-16a4 4 0 10-5.656 5.656L92.343 18H22a4 4 0 00-4 4v70.343l-9.172-9.171a4 4 0 10-5.656 5.656l16 16a4 4 0 005.656 0l16-16a4 4 0 10-5.656-5.656L26 92.343V22l-4 4h70.343zM112 52v64l4-4H52a4 4 0 100 8h64a4 4 0 004-4V52a4 4 0 10-8 0z\"/></svg>"
},
"$:/core/images/spiral": {
"title": "$:/core/images/spiral",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-spiral tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M64.534 68.348c3.39 0 6.097-2.62 6.476-5.968l-4.755-.538 4.75.583c.377-3.07-1.194-6.054-3.89-7.78-2.757-1.773-6.34-2.01-9.566-.7-3.46 1.403-6.14 4.392-7.35 8.148l-.01.026c-1.3 4.08-.72 8.64 1.58 12.52 2.5 4.2 6.77 7.2 11.76 8.27 5.37 1.15 11.11-.05 15.83-3.31 5.04-3.51 8.46-9.02 9.45-15.3 1.05-6.7-.72-13.63-4.92-19.19l.02.02c-4.42-5.93-11.2-9.82-18.78-10.78-7.96-1.01-16.13 1.31-22.59 6.43-6.81 5.39-11.18 13.41-12.11 22.26-.98 9.27 1.87 18.65 7.93 26.02 6.32 7.69 15.6 12.56 25.74 13.48 10.54.96 21.15-2.42 29.45-9.4l.01-.01c8.58-7.25 13.94-17.78 14.86-29.21.94-11.84-2.96-23.69-10.86-32.9-8.19-9.5-19.95-15.36-32.69-16.27-13.16-.94-26.24 3.49-36.34 12.34l.01-.01c-10.41 9.08-16.78 22.1-17.68 36.15-.93 14.44 4.03 28.77 13.79 39.78 10.03 11.32 24.28 18.2 39.6 19.09 15.73.92 31.31-4.56 43.24-15.234 12.23-10.954 19.61-26.44 20.5-43.074a4.785 4.785 0 00-4.52-5.03 4.778 4.778 0 00-5.03 4.52c-.75 14.1-7 27.2-17.33 36.45-10.03 8.98-23.11 13.58-36.3 12.81-12.79-.75-24.67-6.48-33-15.89-8.07-9.11-12.17-20.94-11.41-32.827.74-11.52 5.942-22.15 14.43-29.54l.01-.01c8.18-7.17 18.74-10.75 29.35-9.998 10.21.726 19.6 5.41 26.11 12.96 6.24 7.273 9.32 16.61 8.573 25.894-.718 8.9-4.88 17.064-11.504 22.66l.01-.007c-6.36 5.342-14.44 7.92-22.425 7.19-7.604-.68-14.52-4.314-19.21-10.027-4.44-5.4-6.517-12.23-5.806-18.94.67-6.3 3.76-11.977 8.54-15.766 4.46-3.54 10.05-5.128 15.44-4.44 5.03.63 9.46 3.18 12.32 7.01l.02.024c2.65 3.5 3.75 7.814 3.1 11.92-.59 3.71-2.58 6.925-5.45 8.924-2.56 1.767-5.61 2.403-8.38 1.81-2.42-.516-4.42-1.92-5.53-3.79-.93-1.56-1.15-3.3-.69-4.75l-4.56-1.446L59.325 65c.36-1.12 1.068-1.905 1.84-2.22.25-.103.48-.14.668-.13.06.006.11.015.14.025.01 0 .01 0-.01-.01a1.047 1.047 0 01-.264-.332c-.15-.29-.23-.678-.18-1.11l-.005.04c.15-1.332 1.38-2.523 3.035-2.523-2.65 0-4.79 2.144-4.79 4.787s2.14 4.785 4.78 4.785z\"/></svg>"
},
"$:/core/images/stamp": {
"title": "$:/core/images/stamp",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-stamp tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M49.733 64H16.01C11.584 64 8 67.583 8 72.003V97h112V72.003A8 8 0 00111.99 64H78.267A22.813 22.813 0 0175.5 53.077c0-6.475 2.687-12.324 7.009-16.497A22.818 22.818 0 0087 22.952C87 10.276 76.703 0 64 0S41 10.276 41 22.952c0 5.103 1.669 9.817 4.491 13.628 4.322 4.173 7.009 10.022 7.009 16.497 0 3.954-1.002 7.675-2.767 10.923zM8 104h112v8H8v-8z\"/></svg>"
},
"$:/core/images/star-filled": {
"title": "$:/core/images/star-filled",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-star-filled tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M61.836 96.823l37.327 27.287c2.72 1.99 6.379-.69 5.343-3.912L90.29 75.988l-1.26 3.91 37.285-27.345c2.718-1.993 1.32-6.327-2.041-6.33l-46.113-.036 3.3 2.416L67.176 4.416c-1.04-3.221-5.563-3.221-6.604 0L46.29 48.603l3.3-2.416-46.113.036c-3.362.003-4.759 4.337-2.04 6.33L38.72 79.898l-1.26-3.91-14.216 44.21c-1.036 3.223 2.622 5.901 5.343 3.912l37.326-27.287h-4.078z\"/></svg>"
},
"$:/core/images/storyview-classic": {
"title": "$:/core/images/storyview-classic",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-classic tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16C19.581 16 16 19.578 16 23.992v16.016C16 44.422 19.588 48 24 48h80c4.419 0 8-3.578 8-7.992V23.992c0-4.414-3.588-7.992-8-7.992H24zm0 48C19.581 64 16 67.59 16 72c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24zm0 32C19.581 96 16 99.59 16 104c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24z\"/></svg>"
},
"$:/core/images/storyview-pop": {
"title": "$:/core/images/storyview-pop",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-pop tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16C19.581 16 16 19.578 16 23.992v16.016C16 44.422 19.588 48 24 48h80c4.419 0 8-3.578 8-7.992V23.992c0-4.414-3.588-7.992-8-7.992H24zm-7.99 40C11.587 56 8 59.578 8 63.992v16.016C8 84.422 11.584 88 16.01 88h95.98c4.424 0 8.01-3.578 8.01-7.992V63.992c0-4.414-3.584-7.992-8.01-7.992H16.01zM24 96C19.581 96 16 99.59 16 104c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24zm0-32C19.581 64 16 67.59 16 72c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24z\"/></svg>"
},
"$:/core/images/storyview-zoomin": {
"title": "$:/core/images/storyview-zoomin",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-zoomin tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16A8 8 0 0016 24.009V71.99C16 76.414 19.588 80 24 80h80a8 8 0 008-8.009V24.01c0-4.423-3.588-8.009-8-8.009H24z\"/></svg>"
},
"$:/core/images/strikethrough": {
"title": "$:/core/images/strikethrough",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-strikethrough tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M92.794 38.726h15.422c-.229-6.74-1.514-12.538-3.856-17.393-2.342-4.855-5.54-8.881-9.596-12.08-4.055-3.199-8.767-5.54-14.136-7.025C75.258.743 69.433 0 63.15 0a62.76 62.76 0 00-16.364 2.142C41.474 3.57 36.733 5.74 32.564 8.653c-4.17 2.913-7.511 6.626-10.025 11.138-2.513 4.512-3.77 9.853-3.77 16.022 0 5.597 1.115 10.252 3.342 13.965 2.228 3.712 5.198 6.74 8.91 9.081 3.713 2.342 7.911 4.227 12.595 5.655a194.641 194.641 0 0014.308 3.77c4.855 1.085 9.624 2.142 14.308 3.17 4.683 1.028 8.881 2.37 12.594 4.027 3.713 1.656 6.683 3.798 8.91 6.425 2.228 2.628 3.342 6.055 3.342 10.281 0 4.456-.914 8.111-2.742 10.967a19.953 19.953 0 01-7.197 6.768c-2.97 1.657-6.311 2.828-10.024 3.513a60.771 60.771 0 01-11.052 1.028c-4.57 0-9.025-.571-13.366-1.713-4.34-1.143-8.139-2.913-11.394-5.312-3.256-2.4-5.884-5.455-7.883-9.168-1.999-3.712-2.998-8.139-2.998-13.28H15c0 7.426 1.342 13.852 4.027 19.278 2.684 5.426 6.34 9.881 10.966 13.365 4.627 3.484 9.996 6.083 16.107 7.797 6.112 1.713 12.595 2.57 19.449 2.57 5.597 0 11.223-.657 16.878-1.97 5.655-1.314 10.767-3.428 15.336-6.34 4.57-2.914 8.31-6.683 11.224-11.31 2.913-4.626 4.37-10.195 4.37-16.707 0-6.054-1.115-11.08-3.342-15.079-2.228-3.998-5.198-7.31-8.91-9.938-3.713-2.627-7.911-4.712-12.595-6.254a170.83 170.83 0 00-14.308-4.027 549.669 549.669 0 00-14.308-3.17c-4.683-.971-8.881-2.2-12.594-3.684-3.713-1.485-6.683-3.399-8.91-5.74-2.228-2.342-3.342-5.398-3.342-9.168 0-3.998.771-7.34 2.313-10.024 1.543-2.685 3.599-4.826 6.17-6.426 2.57-1.599 5.51-2.741 8.824-3.427a49.767 49.767 0 0110.11-1.028c8.453 0 15.393 1.97 20.819 5.912 5.426 3.94 8.596 10.31 9.51 19.106z\"/><path d=\"M5 54h118v16H5z\"/></g></svg>"
},
"$:/core/images/subscript": {
"title": "$:/core/images/subscript",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-subscript tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M2.272 16h19.91l21.649 33.675L66.414 16h18.708L53.585 61.969l33.809 49.443H67.082L43.296 74.93l-24.187 36.48H0L33.808 61.97 2.272 16zM127.91 128.412H85.328c.059-5.168 1.306-9.681 3.741-13.542 2.435-3.86 5.761-7.216 9.978-10.066a112.388 112.388 0 016.325-4.321 50.09 50.09 0 006.058-4.499c1.841-1.603 3.356-3.34 4.543-5.211 1.188-1.871 1.812-4.024 1.871-6.46 0-1.128-.133-2.33-.4-3.607a9.545 9.545 0 00-1.56-3.564c-.772-1.098-1.84-2.019-3.207-2.761-1.366-.743-3.148-1.114-5.345-1.114-2.02 0-3.697.4-5.033 1.203-1.337.801-2.406 1.9-3.208 3.296-.801 1.396-1.395 3.044-1.781 4.944-.386 1.9-.609 3.95-.668 6.147H86.486c0-3.445.46-6.637 1.38-9.577.921-2.94 2.302-5.478 4.143-7.617 1.841-2.138 4.083-3.815 6.726-5.033 2.643-1.217 5.716-1.826 9.22-1.826 3.802 0 6.979.623 9.533 1.87 2.554 1.248 4.617 2.822 6.191 4.722 1.574 1.9 2.688 3.965 3.341 6.192.653 2.227.98 4.35.98 6.37 0 2.494-.386 4.75-1.158 6.77a21.803 21.803 0 01-3.118 5.568 31.516 31.516 0 01-4.454 4.677 66.788 66.788 0 01-5.167 4.009 139.198 139.198 0 01-5.346 3.563 79.237 79.237 0 00-4.944 3.386c-1.514 1.128-2.836 2.3-3.964 3.518-1.129 1.218-1.9 2.51-2.317 3.876h30.379v9.087z\"/></svg>"
},
"$:/core/images/superscript": {
"title": "$:/core/images/superscript",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-superscript tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M2.272 16h19.91l21.649 33.675L66.414 16h18.708L53.585 61.969l33.809 49.443H67.082L43.296 74.93l-24.187 36.48H0L33.808 61.97 2.272 16zM127.91 63.412H85.328c.059-5.168 1.306-9.681 3.741-13.542 2.435-3.86 5.761-7.216 9.978-10.066a112.388 112.388 0 016.325-4.321 50.09 50.09 0 006.058-4.499c1.841-1.603 3.356-3.34 4.543-5.211 1.188-1.871 1.812-4.024 1.871-6.46 0-1.128-.133-2.33-.4-3.607a9.545 9.545 0 00-1.56-3.564c-.772-1.098-1.84-2.019-3.207-2.761-1.366-.743-3.148-1.114-5.345-1.114-2.02 0-3.697.4-5.033 1.203-1.337.801-2.406 1.9-3.208 3.296-.801 1.396-1.395 3.044-1.781 4.944-.386 1.9-.609 3.95-.668 6.147H86.486c0-3.445.46-6.637 1.38-9.577.921-2.94 2.302-5.478 4.143-7.617 1.841-2.138 4.083-3.815 6.726-5.033 2.643-1.217 5.716-1.826 9.22-1.826 3.802 0 6.979.623 9.533 1.87 2.554 1.248 4.617 2.822 6.191 4.722 1.574 1.9 2.688 3.965 3.341 6.192.653 2.227.98 4.35.98 6.37 0 2.494-.386 4.75-1.158 6.77a21.803 21.803 0 01-3.118 5.568 31.516 31.516 0 01-4.454 4.677 66.788 66.788 0 01-5.167 4.009 139.198 139.198 0 01-5.346 3.563 79.237 79.237 0 00-4.944 3.386c-1.514 1.128-2.836 2.3-3.964 3.518-1.129 1.218-1.9 2.51-2.317 3.876h30.379v9.087z\"/></svg>"
},
"$:/core/images/tag-button": {
"title": "$:/core/images/tag-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-tag-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M18.164 47.66l.004 4.105c.003 3.823 2.19 9.097 4.885 11.792l61.85 61.85c2.697 2.697 7.068 2.69 9.769-.01L125.767 94.3a6.903 6.903 0 00.01-9.77L63.928 22.683c-2.697-2.697-7.976-4.88-11.796-4.881l-27.076-.007a6.902 6.902 0 00-6.91 6.91l.008 9.96.287.033c3.73.411 8.489-.044 13.365-1.153a9.702 9.702 0 0111.14-3.662l.291-.13.128.285a9.7 9.7 0 013.3 2.17c3.796 3.796 3.801 9.945.012 13.734-3.618 3.618-9.386 3.777-13.204.482-5.365 1.122-10.674 1.596-15.309 1.237z\"/><path d=\"M47.633 39.532l.023.051c-9.689 4.356-21.584 6.799-30.396 5.828C5.273 44.089-1.028 36.43 2.443 24.078 5.562 12.976 14.3 4.361 24.047 1.548c10.68-3.083 19.749 1.968 19.749 13.225h-8.623c0-4.859-3.078-6.573-8.735-4.94-6.91 1.995-13.392 8.383-15.694 16.577-1.915 6.818.417 9.653 7.46 10.43 7.126.785 17.531-1.352 25.917-5.121l.027.06.036-.017c1.76-.758 6.266 6.549 3.524 7.74a2.8 2.8 0 01-.075.03z\"/></g></svg>"
},
"$:/core/images/theme-button": {
"title": "$:/core/images/theme-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-theme-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.854 66.945a122.626 122.626 0 01-3.9-4.819c-11.064-14.548-16.645-6.888-22.96 0-6.315 6.888 1.664 12.47-4.33 17.335-5.993 4.866-5.623 6.552-15.737-2.35-10.115-8.9-10.815-11.351-6.172-16.43 4.644-5.08 8.524 2.918 18.01-6.108 9.485-9.026 1.517-17.026 1.517-17.026S42.03-2.824 68.42.157c26.39 2.982-9.984-3.86-19.031 27.801-3.874 13.556.72 10.362 8.066 16.087 1.707 1.33 6.428 4.732 12.671 9.318-6.129 5.879-11.157 10.669-14.273 13.582zm11.641 12.947c16.013 17.036 37.742 37.726 45.117 40.42 10.432 3.813 15.388-3.141 15.388-14.79 0-7.151-23.83-26.542-43.924-41.769-7.408 7.156-13.376 12.953-16.58 16.139z\"/><path d=\"M11.069 109.828L46.31 74.587a3.56 3.56 0 115.037-5.032l15.098 15.098a3.56 3.56 0 11-5.032 5.037l-35.24 35.241c-4.171 4.17-10.933 4.17-15.104 0-4.17-4.17-4.17-10.933 0-15.103zM124.344 6.622l5.034 5.034-7.49 12.524-7.613 2.58L61.413 79.62l-5.034-5.034 52.861-52.862 2.58-7.614 12.524-7.49z\"/></g></svg>"
},
"$:/core/images/timestamp-off": {
"title": "$:/core/images/timestamp-off",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-timestamp-off tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M58.25 11C26.08 11 0 37.082 0 69.25s26.08 58.25 58.25 58.25c32.175 0 58.25-26.082 58.25-58.25S90.425 11 58.25 11zm0 100.5C34.914 111.5 16 92.586 16 69.25 16 45.92 34.914 27 58.25 27s42.25 18.92 42.25 42.25c0 23.336-18.914 42.25-42.25 42.25zM49.704 10a5 5 0 010-10H66.69a5 5 0 015 5c.006 2.757-2.238 5-5 5H49.705z\"/><path d=\"M58.25 35.88c-18.777 0-33.998 15.224-33.998 33.998 0 18.773 15.22 34.002 33.998 34.002 18.784 0 34.002-15.23 34.002-34.002 0-18.774-15.218-33.998-34.002-33.998zm-3.03 50.123H44.196v-34H55.22v34zm16.976 0H61.17v-34h11.025v34z\"/></g></svg>"
},
"$:/core/images/timestamp-on": {
"title": "$:/core/images/timestamp-on",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-timestamp-on tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M58.25 11C26.08 11 0 37.082 0 69.25s26.08 58.25 58.25 58.25c32.175 0 58.25-26.082 58.25-58.25S90.425 11 58.25 11zm0 100.5C34.914 111.5 16 92.586 16 69.25 16 45.92 34.914 27 58.25 27s42.25 18.92 42.25 42.25c0 23.336-18.914 42.25-42.25 42.25zM49.704 10a5 5 0 010-10H66.69a5 5 0 015 5c.006 2.757-2.238 5-5 5H49.705z\"/><path d=\"M13.41 27.178a5.005 5.005 0 01-7.045-.613 5.008 5.008 0 01.616-7.047l9.95-8.348a5 5 0 016.429 7.661l-9.95 8.348zm89.573 0a5.005 5.005 0 007.045-.613 5.008 5.008 0 00-.616-7.047l-9.95-8.348a5 5 0 00-6.428 7.661l9.95 8.348zM65.097 71.072c0 3.826-3.09 6.928-6.897 6.928-3.804.006-6.9-3.102-6.903-6.928 0 0 4.76-39.072 6.903-39.072s6.897 39.072 6.897 39.072z\"/></g></svg>"
},
"$:/core/images/tip": {
"title": "$:/core/images/tip",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-tip tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 128.242c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64-35.346 0-64 28.654-64 64 0 35.346 28.654 64 64 64zm11.936-36.789c-.624 4.129-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349C54.33 94.05 58.824 95.82 64 95.82c5.175 0 9.67-1.769 11.936-4.366zm0 4.492c-.624 4.13-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zm0 4.456c-.624 4.129-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zm0 4.492c-.624 4.13-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zM64.3 24.242c11.618 0 23.699 7.82 23.699 24.2S75.92 71.754 75.92 83.576c0 5.873-5.868 9.26-11.92 9.26s-12.027-3.006-12.027-9.26C51.973 71.147 40 65.47 40 48.442s12.683-24.2 24.301-24.2z\"/></svg>"
},
"$:/core/images/transcludify": {
"title": "$:/core/images/transcludify",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-transcludify-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M0 59.482c.591 0 1.36-.089 2.306-.266a10.417 10.417 0 002.75-.932 6.762 6.762 0 002.306-1.907c.651-.828.976-1.863.976-3.104V35.709c0-2.01.414-3.74 1.242-5.19.828-1.448 1.833-2.66 3.016-3.636s2.425-1.7 3.726-2.173c1.3-.473 2.424-.71 3.37-.71h8.073v7.451h-4.88c-1.241 0-2.232.207-2.97.621-.74.414-1.302.932-1.686 1.552a4.909 4.909 0 00-.71 1.996c-.089.71-.133 1.39-.133 2.04v16.677c0 1.715-.325 3.134-.976 4.258-.65 1.123-1.434 2.025-2.35 2.705-.917.68-1.863 1.168-2.839 1.464-.976.296-1.818.473-2.528.532v.178c.71.059 1.552.207 2.528.443.976.237 1.922.68 2.839 1.33.916.651 1.7 1.583 2.35 2.795.65 1.212.976 2.853.976 4.923v16.144c0 .65.044 1.33.133 2.04.089.71.325 1.375.71 1.996.384.621.946 1.139 1.685 1.553.74.414 1.73.62 2.972.62h4.879v7.452h-8.073c-.946 0-2.07-.237-3.37-.71-1.301-.473-2.543-1.197-3.726-2.173-1.183-.976-2.188-2.188-3.016-3.637-.828-1.449-1.242-3.179-1.242-5.19V74.119c0-1.42-.325-2.572-.976-3.46-.65-.886-1.419-1.581-2.306-2.084a8.868 8.868 0 00-2.75-1.02C1.36 67.377.591 67.288 0 67.288v-7.806zm24.66 0c.591 0 1.36-.089 2.306-.266a10.417 10.417 0 002.75-.932 6.762 6.762 0 002.306-1.907c.65-.828.976-1.863.976-3.104V35.709c0-2.01.414-3.74 1.242-5.19.828-1.448 1.833-2.66 3.016-3.636s2.425-1.7 3.726-2.173c1.3-.473 2.424-.71 3.37-.71h8.073v7.451h-4.88c-1.241 0-2.232.207-2.97.621-.74.414-1.302.932-1.686 1.552a4.909 4.909 0 00-.71 1.996c-.089.71-.133 1.39-.133 2.04v16.677c0 1.715-.325 3.134-.976 4.258-.65 1.123-1.434 2.025-2.35 2.705-.917.68-1.863 1.168-2.839 1.464-.976.296-1.818.473-2.528.532v.178c.71.059 1.552.207 2.528.443.976.237 1.922.68 2.839 1.33.916.651 1.7 1.583 2.35 2.795.65 1.212.976 2.853.976 4.923v16.144c0 .65.044 1.33.133 2.04.089.71.325 1.375.71 1.996.384.621.946 1.139 1.685 1.553.74.414 1.73.62 2.972.62h4.879v7.452h-8.073c-.946 0-2.07-.237-3.37-.71-1.301-.473-2.543-1.197-3.726-2.173-1.183-.976-2.188-2.188-3.016-3.637-.828-1.449-1.242-3.179-1.242-5.19V74.119c0-1.42-.325-2.572-.976-3.46-.65-.886-1.419-1.581-2.306-2.084a8.868 8.868 0 00-2.75-1.02c-.946-.177-1.715-.266-2.306-.266v-7.806zm43.965-3.538L80.6 52.041l2.306 7.097-12.063 3.903 7.628 10.378-6.12 4.435-7.63-10.467-7.45 10.201-5.943-4.524 7.628-10.023-12.152-4.17 2.306-7.096 12.064 4.17V43.347h7.451v12.596zm34.425 11.344c-.65 0-1.449.089-2.395.266-.946.177-1.863.488-2.75.931a6.356 6.356 0 00-2.262 1.908c-.62.828-.931 1.862-.931 3.104v17.564c0 2.01-.414 3.74-1.242 5.189-.828 1.449-1.833 2.661-3.016 3.637s-2.425 1.7-3.726 2.173c-1.3.473-2.424.71-3.37.71h-8.073v-7.451h4.88c1.241 0 2.232-.207 2.97-.621.74-.414 1.302-.932 1.686-1.553a4.9 4.9 0 00.71-1.995c.089-.71.133-1.39.133-2.04V72.432c0-1.715.325-3.134.976-4.258.65-1.124 1.434-2.01 2.35-2.661.917-.65 1.863-1.124 2.839-1.42.976-.295 1.818-.502 2.528-.62v-.178c-.71-.059-1.552-.207-2.528-.443-.976-.237-1.922-.68-2.839-1.33-.916-.651-1.7-1.583-2.35-2.795-.65-1.212-.976-2.853-.976-4.923V37.66c0-.651-.044-1.331-.133-2.04a4.909 4.909 0 00-.71-1.997c-.384-.62-.946-1.138-1.685-1.552-.74-.414-1.73-.62-2.972-.62h-4.879V24h8.073c.946 0 2.07.237 3.37.71 1.301.473 2.543 1.197 3.726 2.173 1.183.976 2.188 2.188 3.016 3.637.828 1.449 1.242 3.178 1.242 5.189v16.943c0 1.419.31 2.572.931 3.46a6.897 6.897 0 002.262 2.084 8.868 8.868 0 002.75 1.02c.946.177 1.745.266 2.395.266v7.806zm24.66 0c-.65 0-1.449.089-2.395.266-.946.177-1.863.488-2.75.931a6.356 6.356 0 00-2.262 1.908c-.62.828-.931 1.862-.931 3.104v17.564c0 2.01-.414 3.74-1.242 5.189-.828 1.449-1.833 2.661-3.016 3.637s-2.425 1.7-3.726 2.173c-1.3.473-2.424.71-3.37.71h-8.073v-7.451h4.88c1.241 0 2.232-.207 2.97-.621.74-.414 1.302-.932 1.686-1.553a4.9 4.9 0 00.71-1.995c.089-.71.133-1.39.133-2.04V72.432c0-1.715.325-3.134.976-4.258.65-1.124 1.434-2.01 2.35-2.661.917-.65 1.863-1.124 2.839-1.42.976-.295 1.818-.502 2.528-.62v-.178c-.71-.059-1.552-.207-2.528-.443-.976-.237-1.922-.68-2.839-1.33-.916-.651-1.7-1.583-2.35-2.795-.65-1.212-.976-2.853-.976-4.923V37.66c0-.651-.044-1.331-.133-2.04a4.909 4.909 0 00-.71-1.997c-.384-.62-.946-1.138-1.685-1.552-.74-.414-1.73-.62-2.972-.62h-4.879V24h8.073c.946 0 2.07.237 3.37.71 1.301.473 2.543 1.197 3.726 2.173 1.183.976 2.188 2.188 3.016 3.637.828 1.449 1.242 3.178 1.242 5.189v16.943c0 1.419.31 2.572.931 3.46a6.897 6.897 0 002.262 2.084 8.868 8.868 0 002.75 1.02c.946.177 1.745.266 2.395.266v7.806z\"/></svg>"
},
"$:/core/images/twitter": {
"title": "$:/core/images/twitter",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-twitter tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M41.626 115.803A73.376 73.376 0 012 104.235c2.022.238 4.08.36 6.166.36 12.111 0 23.258-4.117 32.105-11.023-11.312-.208-20.859-7.653-24.148-17.883a25.98 25.98 0 0011.674-.441C15.971 72.881 7.061 62.474 7.061 49.997c0-.108 0-.216.002-.323a25.824 25.824 0 0011.709 3.22c-6.936-4.617-11.5-12.5-11.5-21.433 0-4.719 1.274-9.142 3.5-12.945 12.75 15.579 31.797 25.83 53.281 26.904-.44-1.884-.67-3.85-.67-5.868 0-14.22 11.575-25.75 25.852-25.75a25.865 25.865 0 0118.869 8.132 51.892 51.892 0 0016.415-6.248c-1.93 6.012-6.029 11.059-11.366 14.246A51.844 51.844 0 00128 25.878a52.428 52.428 0 01-12.9 13.33c.05 1.104.075 2.214.075 3.33 0 34.028-26 73.265-73.549 73.265\"/></svg>"
},
"$:/core/images/underline": {
"title": "$:/core/images/underline",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-underline tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M7 117.421h114.248V128H7v-10.579zm97.871-18.525V0h-16.26v55.856c0 4.463-.605 8.576-1.816 12.338-1.212 3.762-3.03 7.046-5.452 9.851-2.423 2.806-5.452 4.974-9.086 6.504-3.635 1.53-7.939 2.296-12.912 2.296-6.25 0-11.159-1.786-14.73-5.356-3.57-3.571-5.356-8.417-5.356-14.538V0H23v65.038c0 5.356.542 10.234 1.626 14.633 1.084 4.4 2.965 8.194 5.643 11.382 2.678 3.188 6.185 5.643 10.52 7.365 4.337 1.721 9.756 2.582 16.26 2.582 7.27 0 13.582-1.435 18.938-4.304 5.356-2.87 9.755-7.365 13.199-13.486h.382v15.686h15.303z\"/></svg>"
},
"$:/core/images/unfold-all-button": {
"title": "$:/core/images/unfold-all-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unfold-all tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"64\" rx=\"8\"/><path d=\"M63.945 60.624c-2.05 0-4.101-.78-5.666-2.345L35.662 35.662c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L63.94 41.314l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.603 58.279a7.986 7.986 0 01-5.663 2.346zM64.004 124.565c-2.05 0-4.102-.78-5.666-2.345L35.721 99.603c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.191-3.122 11.318.005L64 105.255l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.662 122.22a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
},
"$:/core/images/unfold-button": {
"title": "$:/core/images/unfold-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unfold tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><path d=\"M63.945 63.624c-2.05 0-4.101-.78-5.666-2.345L35.662 38.662c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L63.94 44.314l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.603 61.279a7.986 7.986 0 01-5.663 2.346zM64.004 105.682c-2.05.001-4.102-.78-5.666-2.344L35.721 80.721c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.191-3.122 11.318.005L64 86.373l16.966-16.966c3.124-3.125 8.194-3.13 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319l-22.617 22.617a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
},
"$:/core/images/unlocked-padlock": {
"title": "$:/core/images/unlocked-padlock",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unlocked-padlock tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M48.627 64H105v32.01C105 113.674 90.674 128 73.001 128H56C38.318 128 24 113.677 24 96.01V64h6.136c-10.455-12.651-27.364-35.788-4.3-55.142 24.636-20.672 45.835 4.353 55.777 16.201 9.943 11.85-2.676 22.437-12.457 9.892-9.78-12.545-21.167-24.146-33.207-14.043-12.041 10.104-1.757 22.36 8.813 34.958 2.467 2.94 3.641 5.732 3.865 8.134zm19.105 28.364A8.503 8.503 0 0064.5 76a8.5 8.5 0 00-3.498 16.25l-5.095 22.77H72.8l-5.07-22.656z\"/></svg>"
},
"$:/core/images/up-arrow": {
"title": "$:/core/images/up-arrow",
"created": "20150316000544368",
"modified": "20150316000831867",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-up-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M63.892.281c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.104 3.092-11.196 0L63.894 19.393 13.513 69.774a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l55.98-55.98A7.892 7.892 0 0163.893.28z\"/></svg>"
},
"$:/core/images/video": {
"title": "$:/core/images/video",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-video tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 12c-34.91 0-55.273 2.917-58.182 5.833C2.91 20.75 0 41.167 0 64.5c0 23.333 2.91 43.75 5.818 46.667C8.728 114.083 29.091 117 64 117c34.91 0 55.273-2.917 58.182-5.833C125.09 108.25 128 87.833 128 64.5c0-23.333-2.91-43.75-5.818-46.667C119.272 14.917 98.909 12 64 12zm-9.084 32.618c-3.813-2.542-6.905-.879-6.905 3.698v31.368c0 4.585 3.099 6.235 6.905 3.698l22.168-14.779c3.813-2.542 3.806-6.669 0-9.206L54.916 44.618z\"/></svg>"
},
"$:/core/images/warning": {
"title": "$:/core/images/warning",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-warning tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M57.072 11c3.079-5.333 10.777-5.333 13.856 0l55.426 96c3.079 5.333-.77 12-6.928 12H8.574c-6.158 0-10.007-6.667-6.928-12l55.426-96zM64 37c-4.418 0-8 3.582-8 7.994v28.012C56 77.421 59.59 81 64 81c4.418 0 8-3.582 8-7.994V44.994C72 40.579 68.41 37 64 37zm0 67a8 8 0 100-16 8 8 0 000 16z\"/></svg>"
},
"$:/language/Buttons/AdvancedSearch/Caption": {
"title": "$:/language/Buttons/AdvancedSearch/Caption",
"text": "advanced search"
},
"$:/language/Buttons/AdvancedSearch/Hint": {
"title": "$:/language/Buttons/AdvancedSearch/Hint",
"text": "Advanced search"
},
"$:/language/Buttons/Cancel/Caption": {
"title": "$:/language/Buttons/Cancel/Caption",
"text": "cancel"
},
"$:/language/Buttons/Cancel/Hint": {
"title": "$:/language/Buttons/Cancel/Hint",
"text": "Discard changes to this tiddler"
},
"$:/language/Buttons/Clone/Caption": {
"title": "$:/language/Buttons/Clone/Caption",
"text": "clone"
},
"$:/language/Buttons/Clone/Hint": {
"title": "$:/language/Buttons/Clone/Hint",
"text": "Clone this tiddler"
},
"$:/language/Buttons/Close/Caption": {
"title": "$:/language/Buttons/Close/Caption",
"text": "close"
},
"$:/language/Buttons/Close/Hint": {
"title": "$:/language/Buttons/Close/Hint",
"text": "Close this tiddler"
},
"$:/language/Buttons/CloseAll/Caption": {
"title": "$:/language/Buttons/CloseAll/Caption",
"text": "close all"
},
"$:/language/Buttons/CloseAll/Hint": {
"title": "$:/language/Buttons/CloseAll/Hint",
"text": "Close all tiddlers"
},
"$:/language/Buttons/CloseOthers/Caption": {
"title": "$:/language/Buttons/CloseOthers/Caption",
"text": "close others"
},
"$:/language/Buttons/CloseOthers/Hint": {
"title": "$:/language/Buttons/CloseOthers/Hint",
"text": "Close other tiddlers"
},
"$:/language/Buttons/ControlPanel/Caption": {
"title": "$:/language/Buttons/ControlPanel/Caption",
"text": "control panel"
},
"$:/language/Buttons/ControlPanel/Hint": {
"title": "$:/language/Buttons/ControlPanel/Hint",
"text": "Open control panel"
},
"$:/language/Buttons/CopyToClipboard/Caption": {
"title": "$:/language/Buttons/CopyToClipboard/Caption",
"text": "copy to clipboard"
},
"$:/language/Buttons/CopyToClipboard/Hint": {
"title": "$:/language/Buttons/CopyToClipboard/Hint",
"text": "Copy this text to the clipboard"
},
"$:/language/Buttons/Delete/Caption": {
"title": "$:/language/Buttons/Delete/Caption",
"text": "delete"
},
"$:/language/Buttons/Delete/Hint": {
"title": "$:/language/Buttons/Delete/Hint",
"text": "Delete this tiddler"
},
"$:/language/Buttons/Edit/Caption": {
"title": "$:/language/Buttons/Edit/Caption",
"text": "edit"
},
"$:/language/Buttons/Edit/Hint": {
"title": "$:/language/Buttons/Edit/Hint",
"text": "Edit this tiddler"
},
"$:/language/Buttons/Encryption/Caption": {
"title": "$:/language/Buttons/Encryption/Caption",
"text": "encryption"
},
"$:/language/Buttons/Encryption/Hint": {
"title": "$:/language/Buttons/Encryption/Hint",
"text": "Set or clear a password for saving this wiki"
},
"$:/language/Buttons/Encryption/ClearPassword/Caption": {
"title": "$:/language/Buttons/Encryption/ClearPassword/Caption",
"text": "clear password"
},
"$:/language/Buttons/Encryption/ClearPassword/Hint": {
"title": "$:/language/Buttons/Encryption/ClearPassword/Hint",
"text": "Clear the password and save this wiki without encryption"
},
"$:/language/Buttons/Encryption/SetPassword/Caption": {
"title": "$:/language/Buttons/Encryption/SetPassword/Caption",
"text": "set password"
},
"$:/language/Buttons/Encryption/SetPassword/Hint": {
"title": "$:/language/Buttons/Encryption/SetPassword/Hint",
"text": "Set a password for saving this wiki with encryption"
},
"$:/language/Buttons/ExportPage/Caption": {
"title": "$:/language/Buttons/ExportPage/Caption",
"text": "export all"
},
"$:/language/Buttons/ExportPage/Hint": {
"title": "$:/language/Buttons/ExportPage/Hint",
"text": "Export all tiddlers"
},
"$:/language/Buttons/ExportTiddler/Caption": {
"title": "$:/language/Buttons/ExportTiddler/Caption",
"text": "export tiddler"
},
"$:/language/Buttons/ExportTiddler/Hint": {
"title": "$:/language/Buttons/ExportTiddler/Hint",
"text": "Export tiddler"
},
"$:/language/Buttons/ExportTiddlers/Caption": {
"title": "$:/language/Buttons/ExportTiddlers/Caption",
"text": "export tiddlers"
},
"$:/language/Buttons/ExportTiddlers/Hint": {
"title": "$:/language/Buttons/ExportTiddlers/Hint",
"text": "Export tiddlers"
},
"$:/language/Buttons/SidebarSearch/Hint": {
"title": "$:/language/Buttons/SidebarSearch/Hint",
"text": "Select the sidebar search field"
},
"$:/language/Buttons/Fold/Caption": {
"title": "$:/language/Buttons/Fold/Caption",
"text": "fold tiddler"
},
"$:/language/Buttons/Fold/Hint": {
"title": "$:/language/Buttons/Fold/Hint",
"text": "Fold the body of this tiddler"
},
"$:/language/Buttons/Fold/FoldBar/Caption": {
"title": "$:/language/Buttons/Fold/FoldBar/Caption",
"text": "fold-bar"
},
"$:/language/Buttons/Fold/FoldBar/Hint": {
"title": "$:/language/Buttons/Fold/FoldBar/Hint",
"text": "Optional bars to fold and unfold tiddlers"
},
"$:/language/Buttons/Unfold/Caption": {
"title": "$:/language/Buttons/Unfold/Caption",
"text": "unfold tiddler"
},
"$:/language/Buttons/Unfold/Hint": {
"title": "$:/language/Buttons/Unfold/Hint",
"text": "Unfold the body of this tiddler"
},
"$:/language/Buttons/FoldOthers/Caption": {
"title": "$:/language/Buttons/FoldOthers/Caption",
"text": "fold other tiddlers"
},
"$:/language/Buttons/FoldOthers/Hint": {
"title": "$:/language/Buttons/FoldOthers/Hint",
"text": "Fold the bodies of other opened tiddlers"
},
"$:/language/Buttons/FoldAll/Caption": {
"title": "$:/language/Buttons/FoldAll/Caption",
"text": "fold all tiddlers"
},
"$:/language/Buttons/FoldAll/Hint": {
"title": "$:/language/Buttons/FoldAll/Hint",
"text": "Fold the bodies of all opened tiddlers"
},
"$:/language/Buttons/UnfoldAll/Caption": {
"title": "$:/language/Buttons/UnfoldAll/Caption",
"text": "unfold all tiddlers"
},
"$:/language/Buttons/UnfoldAll/Hint": {
"title": "$:/language/Buttons/UnfoldAll/Hint",
"text": "Unfold the bodies of all opened tiddlers"
},
"$:/language/Buttons/FullScreen/Caption": {
"title": "$:/language/Buttons/FullScreen/Caption",
"text": "full-screen"
},
"$:/language/Buttons/FullScreen/Hint": {
"title": "$:/language/Buttons/FullScreen/Hint",
"text": "Enter or leave full-screen mode"
},
"$:/language/Buttons/Help/Caption": {
"title": "$:/language/Buttons/Help/Caption",
"text": "help"
},
"$:/language/Buttons/Help/Hint": {
"title": "$:/language/Buttons/Help/Hint",
"text": "Show help panel"
},
"$:/language/Buttons/Import/Caption": {
"title": "$:/language/Buttons/Import/Caption",
"text": "import"
},
"$:/language/Buttons/Import/Hint": {
"title": "$:/language/Buttons/Import/Hint",
"text": "Import many types of file including text, image, TiddlyWiki or JSON"
},
"$:/language/Buttons/Info/Caption": {
"title": "$:/language/Buttons/Info/Caption",
"text": "info"
},
"$:/language/Buttons/Info/Hint": {
"title": "$:/language/Buttons/Info/Hint",
"text": "Show information for this tiddler"
},
"$:/language/Buttons/Home/Caption": {
"title": "$:/language/Buttons/Home/Caption",
"text": "home"
},
"$:/language/Buttons/Home/Hint": {
"title": "$:/language/Buttons/Home/Hint",
"text": "Open the default tiddlers"
},
"$:/language/Buttons/Language/Caption": {
"title": "$:/language/Buttons/Language/Caption",
"text": "language"
},
"$:/language/Buttons/Language/Hint": {
"title": "$:/language/Buttons/Language/Hint",
"text": "Choose the user interface language"
},
"$:/language/Buttons/Manager/Caption": {
"title": "$:/language/Buttons/Manager/Caption",
"text": "tiddler manager"
},
"$:/language/Buttons/Manager/Hint": {
"title": "$:/language/Buttons/Manager/Hint",
"text": "Open tiddler manager"
},
"$:/language/Buttons/More/Caption": {
"title": "$:/language/Buttons/More/Caption",
"text": "more"
},
"$:/language/Buttons/More/Hint": {
"title": "$:/language/Buttons/More/Hint",
"text": "More actions"
},
"$:/language/Buttons/NewHere/Caption": {
"title": "$:/language/Buttons/NewHere/Caption",
"text": "new here"
},
"$:/language/Buttons/NewHere/Hint": {
"title": "$:/language/Buttons/NewHere/Hint",
"text": "Create a new tiddler tagged with this one"
},
"$:/language/Buttons/NewJournal/Caption": {
"title": "$:/language/Buttons/NewJournal/Caption",
"text": "new journal"
},
"$:/language/Buttons/NewJournal/Hint": {
"title": "$:/language/Buttons/NewJournal/Hint",
"text": "Create a new journal tiddler"
},
"$:/language/Buttons/NewJournalHere/Caption": {
"title": "$:/language/Buttons/NewJournalHere/Caption",
"text": "new journal here"
},
"$:/language/Buttons/NewJournalHere/Hint": {
"title": "$:/language/Buttons/NewJournalHere/Hint",
"text": "Create a new journal tiddler tagged with this one"
},
"$:/language/Buttons/NewImage/Caption": {
"title": "$:/language/Buttons/NewImage/Caption",
"text": "new image"
},
"$:/language/Buttons/NewImage/Hint": {
"title": "$:/language/Buttons/NewImage/Hint",
"text": "Create a new image tiddler"
},
"$:/language/Buttons/NewMarkdown/Caption": {
"title": "$:/language/Buttons/NewMarkdown/Caption",
"text": "new Markdown tiddler"
},
"$:/language/Buttons/NewMarkdown/Hint": {
"title": "$:/language/Buttons/NewMarkdown/Hint",
"text": "Create a new Markdown tiddler"
},
"$:/language/Buttons/NewTiddler/Caption": {
"title": "$:/language/Buttons/NewTiddler/Caption",
"text": "new tiddler"
},
"$:/language/Buttons/NewTiddler/Hint": {
"title": "$:/language/Buttons/NewTiddler/Hint",
"text": "Create a new tiddler"
},
"$:/language/Buttons/OpenWindow/Caption": {
"title": "$:/language/Buttons/OpenWindow/Caption",
"text": "open in new window"
},
"$:/language/Buttons/OpenWindow/Hint": {
"title": "$:/language/Buttons/OpenWindow/Hint",
"text": "Open tiddler in new window"
},
"$:/language/Buttons/Palette/Caption": {
"title": "$:/language/Buttons/Palette/Caption",
"text": "palette"
},
"$:/language/Buttons/Palette/Hint": {
"title": "$:/language/Buttons/Palette/Hint",
"text": "Choose the colour palette"
},
"$:/language/Buttons/Permalink/Caption": {
"title": "$:/language/Buttons/Permalink/Caption",
"text": "permalink"
},
"$:/language/Buttons/Permalink/Hint": {
"title": "$:/language/Buttons/Permalink/Hint",
"text": "Set browser address bar to a direct link to this tiddler"
},
"$:/language/Buttons/Permaview/Caption": {
"title": "$:/language/Buttons/Permaview/Caption",
"text": "permaview"
},
"$:/language/Buttons/Permaview/Hint": {
"title": "$:/language/Buttons/Permaview/Hint",
"text": "Set browser address bar to a direct link to all the tiddlers in this story"
},
"$:/language/Buttons/Print/Caption": {
"title": "$:/language/Buttons/Print/Caption",
"text": "print page"
},
"$:/language/Buttons/Print/Hint": {
"title": "$:/language/Buttons/Print/Hint",
"text": "Print the current page"
},
"$:/language/Buttons/Refresh/Caption": {
"title": "$:/language/Buttons/Refresh/Caption",
"text": "refresh"
},
"$:/language/Buttons/Refresh/Hint": {
"title": "$:/language/Buttons/Refresh/Hint",
"text": "Perform a full refresh of the wiki"
},
"$:/language/Buttons/Save/Caption": {
"title": "$:/language/Buttons/Save/Caption",
"text": "ok"
},
"$:/language/Buttons/Save/Hint": {
"title": "$:/language/Buttons/Save/Hint",
"text": "Confirm changes to this tiddler"
},
"$:/language/Buttons/SaveWiki/Caption": {
"title": "$:/language/Buttons/SaveWiki/Caption",
"text": "save changes"
},
"$:/language/Buttons/SaveWiki/Hint": {
"title": "$:/language/Buttons/SaveWiki/Hint",
"text": "Save changes"
},
"$:/language/Buttons/StoryView/Caption": {
"title": "$:/language/Buttons/StoryView/Caption",
"text": "storyview"
},
"$:/language/Buttons/StoryView/Hint": {
"title": "$:/language/Buttons/StoryView/Hint",
"text": "Choose the story visualisation"
},
"$:/language/Buttons/HideSideBar/Caption": {
"title": "$:/language/Buttons/HideSideBar/Caption",
"text": "hide sidebar"
},
"$:/language/Buttons/HideSideBar/Hint": {
"title": "$:/language/Buttons/HideSideBar/Hint",
"text": "Hide sidebar"
},
"$:/language/Buttons/ShowSideBar/Caption": {
"title": "$:/language/Buttons/ShowSideBar/Caption",
"text": "show sidebar"
},
"$:/language/Buttons/ShowSideBar/Hint": {
"title": "$:/language/Buttons/ShowSideBar/Hint",
"text": "Show sidebar"
},
"$:/language/Buttons/TagManager/Caption": {
"title": "$:/language/Buttons/TagManager/Caption",
"text": "tag manager"
},
"$:/language/Buttons/TagManager/Hint": {
"title": "$:/language/Buttons/TagManager/Hint",
"text": "Open tag manager"
},
"$:/language/Buttons/Timestamp/Caption": {
"title": "$:/language/Buttons/Timestamp/Caption",
"text": "timestamps"
},
"$:/language/Buttons/Timestamp/Hint": {
"title": "$:/language/Buttons/Timestamp/Hint",
"text": "Choose whether modifications update timestamps"
},
"$:/language/Buttons/Timestamp/On/Caption": {
"title": "$:/language/Buttons/Timestamp/On/Caption",
"text": "timestamps are on"
},
"$:/language/Buttons/Timestamp/On/Hint": {
"title": "$:/language/Buttons/Timestamp/On/Hint",
"text": "Update timestamps when tiddlers are modified"
},
"$:/language/Buttons/Timestamp/Off/Caption": {
"title": "$:/language/Buttons/Timestamp/Off/Caption",
"text": "timestamps are off"
},
"$:/language/Buttons/Timestamp/Off/Hint": {
"title": "$:/language/Buttons/Timestamp/Off/Hint",
"text": "Don't update timestamps when tiddlers are modified"
},
"$:/language/Buttons/Theme/Caption": {
"title": "$:/language/Buttons/Theme/Caption",
"text": "theme"
},
"$:/language/Buttons/Theme/Hint": {
"title": "$:/language/Buttons/Theme/Hint",
"text": "Choose the display theme"
},
"$:/language/Buttons/Bold/Caption": {
"title": "$:/language/Buttons/Bold/Caption",
"text": "bold"
},
"$:/language/Buttons/Bold/Hint": {
"title": "$:/language/Buttons/Bold/Hint",
"text": "Apply bold formatting to selection"
},
"$:/language/Buttons/Clear/Caption": {
"title": "$:/language/Buttons/Clear/Caption",
"text": "clear"
},
"$:/language/Buttons/Clear/Hint": {
"title": "$:/language/Buttons/Clear/Hint",
"text": "Clear image to solid colour"
},
"$:/language/Buttons/EditorHeight/Caption": {
"title": "$:/language/Buttons/EditorHeight/Caption",
"text": "editor height"
},
"$:/language/Buttons/EditorHeight/Caption/Auto": {
"title": "$:/language/Buttons/EditorHeight/Caption/Auto",
"text": "Automatically adjust height to fit content"
},
"$:/language/Buttons/EditorHeight/Caption/Fixed": {
"title": "$:/language/Buttons/EditorHeight/Caption/Fixed",
"text": "Fixed height:"
},
"$:/language/Buttons/EditorHeight/Hint": {
"title": "$:/language/Buttons/EditorHeight/Hint",
"text": "Choose the height of the text editor"
},
"$:/language/Buttons/Excise/Caption": {
"title": "$:/language/Buttons/Excise/Caption",
"text": "excise"
},
"$:/language/Buttons/Excise/Caption/Excise": {
"title": "$:/language/Buttons/Excise/Caption/Excise",
"text": "Perform excision"
},
"$:/language/Buttons/Excise/Caption/MacroName": {
"title": "$:/language/Buttons/Excise/Caption/MacroName",
"text": "Macro name:"
},
"$:/language/Buttons/Excise/Caption/NewTitle": {
"title": "$:/language/Buttons/Excise/Caption/NewTitle",
"text": "Title of new tiddler:"
},
"$:/language/Buttons/Excise/Caption/Replace": {
"title": "$:/language/Buttons/Excise/Caption/Replace",
"text": "Replace excised text with:"
},
"$:/language/Buttons/Excise/Caption/Replace/Macro": {
"title": "$:/language/Buttons/Excise/Caption/Replace/Macro",
"text": "macro"
},
"$:/language/Buttons/Excise/Caption/Replace/Link": {
"title": "$:/language/Buttons/Excise/Caption/Replace/Link",
"text": "link"
},
"$:/language/Buttons/Excise/Caption/Replace/Transclusion": {
"title": "$:/language/Buttons/Excise/Caption/Replace/Transclusion",
"text": "transclusion"
},
"$:/language/Buttons/Excise/Caption/Tag": {
"title": "$:/language/Buttons/Excise/Caption/Tag",
"text": "Tag new tiddler with the title of this tiddler"
},
"$:/language/Buttons/Excise/Caption/TiddlerExists": {
"title": "$:/language/Buttons/Excise/Caption/TiddlerExists",
"text": "Warning: tiddler already exists"
},
"$:/language/Buttons/Excise/Hint": {
"title": "$:/language/Buttons/Excise/Hint",
"text": "Excise the selected text into a new tiddler"
},
"$:/language/Buttons/Heading1/Caption": {
"title": "$:/language/Buttons/Heading1/Caption",
"text": "heading 1"
},
"$:/language/Buttons/Heading1/Hint": {
"title": "$:/language/Buttons/Heading1/Hint",
"text": "Apply heading level 1 formatting to lines containing selection"
},
"$:/language/Buttons/Heading2/Caption": {
"title": "$:/language/Buttons/Heading2/Caption",
"text": "heading 2"
},
"$:/language/Buttons/Heading2/Hint": {
"title": "$:/language/Buttons/Heading2/Hint",
"text": "Apply heading level 2 formatting to lines containing selection"
},
"$:/language/Buttons/Heading3/Caption": {
"title": "$:/language/Buttons/Heading3/Caption",
"text": "heading 3"
},
"$:/language/Buttons/Heading3/Hint": {
"title": "$:/language/Buttons/Heading3/Hint",
"text": "Apply heading level 3 formatting to lines containing selection"
},
"$:/language/Buttons/Heading4/Caption": {
"title": "$:/language/Buttons/Heading4/Caption",
"text": "heading 4"
},
"$:/language/Buttons/Heading4/Hint": {
"title": "$:/language/Buttons/Heading4/Hint",
"text": "Apply heading level 4 formatting to lines containing selection"
},
"$:/language/Buttons/Heading5/Caption": {
"title": "$:/language/Buttons/Heading5/Caption",
"text": "heading 5"
},
"$:/language/Buttons/Heading5/Hint": {
"title": "$:/language/Buttons/Heading5/Hint",
"text": "Apply heading level 5 formatting to lines containing selection"
},
"$:/language/Buttons/Heading6/Caption": {
"title": "$:/language/Buttons/Heading6/Caption",
"text": "heading 6"
},
"$:/language/Buttons/Heading6/Hint": {
"title": "$:/language/Buttons/Heading6/Hint",
"text": "Apply heading level 6 formatting to lines containing selection"
},
"$:/language/Buttons/Italic/Caption": {
"title": "$:/language/Buttons/Italic/Caption",
"text": "italic"
},
"$:/language/Buttons/Italic/Hint": {
"title": "$:/language/Buttons/Italic/Hint",
"text": "Apply italic formatting to selection"
},
"$:/language/Buttons/LineWidth/Caption": {
"title": "$:/language/Buttons/LineWidth/Caption",
"text": "line width"
},
"$:/language/Buttons/LineWidth/Hint": {
"title": "$:/language/Buttons/LineWidth/Hint",
"text": "Set line width for painting"
},
"$:/language/Buttons/Link/Caption": {
"title": "$:/language/Buttons/Link/Caption",
"text": "link"
},
"$:/language/Buttons/Link/Hint": {
"title": "$:/language/Buttons/Link/Hint",
"text": "Create wikitext link"
},
"$:/language/Buttons/Linkify/Caption": {
"title": "$:/language/Buttons/Linkify/Caption",
"text": "wikilink"
},
"$:/language/Buttons/Linkify/Hint": {
"title": "$:/language/Buttons/Linkify/Hint",
"text": "Wrap selection in square brackets"
},
"$:/language/Buttons/ListBullet/Caption": {
"title": "$:/language/Buttons/ListBullet/Caption",
"text": "bulleted list"
},
"$:/language/Buttons/ListBullet/Hint": {
"title": "$:/language/Buttons/ListBullet/Hint",
"text": "Apply bulleted list formatting to lines containing selection"
},
"$:/language/Buttons/ListNumber/Caption": {
"title": "$:/language/Buttons/ListNumber/Caption",
"text": "numbered list"
},
"$:/language/Buttons/ListNumber/Hint": {
"title": "$:/language/Buttons/ListNumber/Hint",
"text": "Apply numbered list formatting to lines containing selection"
},
"$:/language/Buttons/MonoBlock/Caption": {
"title": "$:/language/Buttons/MonoBlock/Caption",
"text": "monospaced block"
},
"$:/language/Buttons/MonoBlock/Hint": {
"title": "$:/language/Buttons/MonoBlock/Hint",
"text": "Apply monospaced block formatting to lines containing selection"
},
"$:/language/Buttons/MonoLine/Caption": {
"title": "$:/language/Buttons/MonoLine/Caption",
"text": "monospaced"
},
"$:/language/Buttons/MonoLine/Hint": {
"title": "$:/language/Buttons/MonoLine/Hint",
"text": "Apply monospaced character formatting to selection"
},
"$:/language/Buttons/Opacity/Caption": {
"title": "$:/language/Buttons/Opacity/Caption",
"text": "opacity"
},
"$:/language/Buttons/Opacity/Hint": {
"title": "$:/language/Buttons/Opacity/Hint",
"text": "Set painting opacity"
},
"$:/language/Buttons/Paint/Caption": {
"title": "$:/language/Buttons/Paint/Caption",
"text": "paint colour"
},
"$:/language/Buttons/Paint/Hint": {
"title": "$:/language/Buttons/Paint/Hint",
"text": "Set painting colour"
},
"$:/language/Buttons/Picture/Caption": {
"title": "$:/language/Buttons/Picture/Caption",
"text": "picture"
},
"$:/language/Buttons/Picture/Hint": {
"title": "$:/language/Buttons/Picture/Hint",
"text": "Insert picture"
},
"$:/language/Buttons/Preview/Caption": {
"title": "$:/language/Buttons/Preview/Caption",
"text": "preview"
},
"$:/language/Buttons/Preview/Hint": {
"title": "$:/language/Buttons/Preview/Hint",
"text": "Show preview pane"
},
"$:/language/Buttons/PreviewType/Caption": {
"title": "$:/language/Buttons/PreviewType/Caption",
"text": "preview type"
},
"$:/language/Buttons/PreviewType/Hint": {
"title": "$:/language/Buttons/PreviewType/Hint",
"text": "Choose preview type"
},
"$:/language/Buttons/Quote/Caption": {
"title": "$:/language/Buttons/Quote/Caption",
"text": "quote"
},
"$:/language/Buttons/Quote/Hint": {
"title": "$:/language/Buttons/Quote/Hint",
"text": "Apply quoted text formatting to lines containing selection"
},
"$:/language/Buttons/RotateLeft/Caption": {
"title": "$:/language/Buttons/RotateLeft/Caption",
"text": "rotate left"
},
"$:/language/Buttons/RotateLeft/Hint": {
"title": "$:/language/Buttons/RotateLeft/Hint",
"text": "Rotate image left by 90 degrees"
},
"$:/language/Buttons/Size/Caption": {
"title": "$:/language/Buttons/Size/Caption",
"text": "image size"
},
"$:/language/Buttons/Size/Caption/Height": {
"title": "$:/language/Buttons/Size/Caption/Height",
"text": "Height:"
},
"$:/language/Buttons/Size/Caption/Resize": {
"title": "$:/language/Buttons/Size/Caption/Resize",
"text": "Resize image"
},
"$:/language/Buttons/Size/Caption/Width": {
"title": "$:/language/Buttons/Size/Caption/Width",
"text": "Width:"
},
"$:/language/Buttons/Size/Hint": {
"title": "$:/language/Buttons/Size/Hint",
"text": "Set image size"
},
"$:/language/Buttons/Stamp/Caption": {
"title": "$:/language/Buttons/Stamp/Caption",
"text": "stamp"
},
"$:/language/Buttons/Stamp/Caption/New": {
"title": "$:/language/Buttons/Stamp/Caption/New",
"text": "Add your own"
},
"$:/language/Buttons/Stamp/Hint": {
"title": "$:/language/Buttons/Stamp/Hint",
"text": "Insert a preconfigured snippet of text"
},
"$:/language/Buttons/Stamp/New/Title": {
"title": "$:/language/Buttons/Stamp/New/Title",
"text": "Name as shown in menu"
},
"$:/language/Buttons/Stamp/New/Text": {
"title": "$:/language/Buttons/Stamp/New/Text",
"text": "Text of snippet. (Remember to add a descriptive title in the caption field)."
},
"$:/language/Buttons/Strikethrough/Caption": {
"title": "$:/language/Buttons/Strikethrough/Caption",
"text": "strikethrough"
},
"$:/language/Buttons/Strikethrough/Hint": {
"title": "$:/language/Buttons/Strikethrough/Hint",
"text": "Apply strikethrough formatting to selection"
},
"$:/language/Buttons/Subscript/Caption": {
"title": "$:/language/Buttons/Subscript/Caption",
"text": "subscript"
},
"$:/language/Buttons/Subscript/Hint": {
"title": "$:/language/Buttons/Subscript/Hint",
"text": "Apply subscript formatting to selection"
},
"$:/language/Buttons/Superscript/Caption": {
"title": "$:/language/Buttons/Superscript/Caption",
"text": "superscript"
},
"$:/language/Buttons/Superscript/Hint": {
"title": "$:/language/Buttons/Superscript/Hint",
"text": "Apply superscript formatting to selection"
},
"$:/language/Buttons/ToggleSidebar/Hint": {
"title": "$:/language/Buttons/ToggleSidebar/Hint",
"text": "Toggle the sidebar visibility"
},
"$:/language/Buttons/Transcludify/Caption": {
"title": "$:/language/Buttons/Transcludify/Caption",
"text": "transclusion"
},
"$:/language/Buttons/Transcludify/Hint": {
"title": "$:/language/Buttons/Transcludify/Hint",
"text": "Wrap selection in curly brackets"
},
"$:/language/Buttons/Underline/Caption": {
"title": "$:/language/Buttons/Underline/Caption",
"text": "underline"
},
"$:/language/Buttons/Underline/Hint": {
"title": "$:/language/Buttons/Underline/Hint",
"text": "Apply underline formatting to selection"
},
"$:/language/ControlPanel/Advanced/Caption": {
"title": "$:/language/ControlPanel/Advanced/Caption",
"text": "Advanced"
},
"$:/language/ControlPanel/Advanced/Hint": {
"title": "$:/language/ControlPanel/Advanced/Hint",
"text": "Internal information about this TiddlyWiki"
},
"$:/language/ControlPanel/Appearance/Caption": {
"title": "$:/language/ControlPanel/Appearance/Caption",
"text": "Appearance"
},
"$:/language/ControlPanel/Appearance/Hint": {
"title": "$:/language/ControlPanel/Appearance/Hint",
"text": "Ways to customise the appearance of your TiddlyWiki."
},
"$:/language/ControlPanel/Basics/AnimDuration/Prompt": {
"title": "$:/language/ControlPanel/Basics/AnimDuration/Prompt",
"text": "Animation duration"
},
"$:/language/ControlPanel/Basics/AutoFocus/Prompt": {
"title": "$:/language/ControlPanel/Basics/AutoFocus/Prompt",
"text": "Default focus field for new tiddlers"
},
"$:/language/ControlPanel/Basics/Caption": {
"title": "$:/language/ControlPanel/Basics/Caption",
"text": "Basics"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint",
"text": "Use [[double square brackets]] for titles with spaces. Or you can choose to <$button set=\"$:/DefaultTiddlers\" setTo=\"[list[$:/StoryList]]\">retain story ordering</$button>"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt",
"text": "Default tiddlers"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint",
"text": "Choose which tiddlers are displayed at startup"
},
"$:/language/ControlPanel/Basics/Language/Prompt": {
"title": "$:/language/ControlPanel/Basics/Language/Prompt",
"text": "Hello! Current language:"
},
"$:/language/ControlPanel/Basics/NewJournal/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt",
"text": "Title of new journal tiddlers"
},
"$:/language/ControlPanel/Basics/NewJournal/Text/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt",
"text": "Text for new journal tiddlers"
},
"$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt",
"text": "Tags for new journal tiddlers"
},
"$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt",
"text": "Title of new tiddlers"
},
"$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt",
"text": "Tags for new tiddlers"
},
"$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt",
"text": "Number of overridden shadow tiddlers"
},
"$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt",
"text": "Number of shadow tiddlers"
},
"$:/language/ControlPanel/Basics/Subtitle/Prompt": {
"title": "$:/language/ControlPanel/Basics/Subtitle/Prompt",
"text": "Subtitle"
},
"$:/language/ControlPanel/Basics/SystemTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt",
"text": "Number of system tiddlers"
},
"$:/language/ControlPanel/Basics/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/Tags/Prompt",
"text": "Number of tags"
},
"$:/language/ControlPanel/Basics/Tiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/Tiddlers/Prompt",
"text": "Number of tiddlers"
},
"$:/language/ControlPanel/Basics/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/Title/Prompt",
"text": "Title of this ~TiddlyWiki"
},
"$:/language/ControlPanel/Basics/Username/Prompt": {
"title": "$:/language/ControlPanel/Basics/Username/Prompt",
"text": "Username for signing edits"
},
"$:/language/ControlPanel/Basics/Version/Prompt": {
"title": "$:/language/ControlPanel/Basics/Version/Prompt",
"text": "~TiddlyWiki version"
},
"$:/language/ControlPanel/EditorTypes/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Caption",
"text": "Editor Types"
},
"$:/language/ControlPanel/EditorTypes/Editor/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Editor/Caption",
"text": "Editor"
},
"$:/language/ControlPanel/EditorTypes/Hint": {
"title": "$:/language/ControlPanel/EditorTypes/Hint",
"text": "These tiddlers determine which editor is used to edit specific tiddler types."
},
"$:/language/ControlPanel/EditorTypes/Type/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Type/Caption",
"text": "Type"
},
"$:/language/ControlPanel/Info/Caption": {
"title": "$:/language/ControlPanel/Info/Caption",
"text": "Info"
},
"$:/language/ControlPanel/Info/Hint": {
"title": "$:/language/ControlPanel/Info/Hint",
"text": "Information about this TiddlyWiki"
},
"$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt",
"text": "Type shortcut here"
},
"$:/language/ControlPanel/KeyboardShortcuts/Add/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption",
"text": "add shortcut"
},
"$:/language/ControlPanel/KeyboardShortcuts/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Caption",
"text": "Keyboard Shortcuts"
},
"$:/language/ControlPanel/KeyboardShortcuts/Hint": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Hint",
"text": "Manage keyboard shortcut assignments"
},
"$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption",
"text": "No keyboard shortcuts assigned"
},
"$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint",
"text": "remove keyboard shortcut"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/All": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/All",
"text": "All platforms"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac",
"text": "Macintosh platform only"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac",
"text": "Non-Macintosh platforms only"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux",
"text": "Linux platform only"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux",
"text": "Non-Linux platforms only"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows",
"text": "Windows platform only"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows",
"text": "Non-Windows platforms only"
},
"$:/language/ControlPanel/LoadedModules/Caption": {
"title": "$:/language/ControlPanel/LoadedModules/Caption",
"text": "Loaded Modules"
},
"$:/language/ControlPanel/LoadedModules/Hint": {
"title": "$:/language/ControlPanel/LoadedModules/Hint",
"text": "These are the currently loaded tiddler modules linked to their source tiddlers. Any italicised modules lack a source tiddler, typically because they were setup during the boot process."
},
"$:/language/ControlPanel/Palette/Caption": {
"title": "$:/language/ControlPanel/Palette/Caption",
"text": "Palette"
},
"$:/language/ControlPanel/Palette/Editor/Clone/Caption": {
"title": "$:/language/ControlPanel/Palette/Editor/Clone/Caption",
"text": "clone"
},
"$:/language/ControlPanel/Palette/Editor/Clone/Prompt": {
"title": "$:/language/ControlPanel/Palette/Editor/Clone/Prompt",
"text": "It is recommended that you clone this shadow palette before editing it"
},
"$:/language/ControlPanel/Palette/Editor/Delete/Hint": {
"title": "$:/language/ControlPanel/Palette/Editor/Delete/Hint",
"text": "delete this entry from the current palette"
},
"$:/language/ControlPanel/Palette/Editor/Names/External/Show": {
"title": "$:/language/ControlPanel/Palette/Editor/Names/External/Show",
"text": "Show color names that are not part of the current palette"
},
"$:/language/ControlPanel/Palette/Editor/Prompt/Modified": {
"title": "$:/language/ControlPanel/Palette/Editor/Prompt/Modified",
"text": "This shadow palette has been modified"
},
"$:/language/ControlPanel/Palette/Editor/Prompt": {
"title": "$:/language/ControlPanel/Palette/Editor/Prompt",
"text": "Editing"
},
"$:/language/ControlPanel/Palette/Editor/Reset/Caption": {
"title": "$:/language/ControlPanel/Palette/Editor/Reset/Caption",
"text": "reset"
},
"$:/language/ControlPanel/Palette/HideEditor/Caption": {
"title": "$:/language/ControlPanel/Palette/HideEditor/Caption",
"text": "hide editor"
},
"$:/language/ControlPanel/Palette/Prompt": {
"title": "$:/language/ControlPanel/Palette/Prompt",
"text": "Current palette:"
},
"$:/language/ControlPanel/Palette/ShowEditor/Caption": {
"title": "$:/language/ControlPanel/Palette/ShowEditor/Caption",
"text": "show editor"
},
"$:/language/ControlPanel/Parsing/Caption": {
"title": "$:/language/ControlPanel/Parsing/Caption",
"text": "Parsing"
},
"$:/language/ControlPanel/Parsing/Hint": {
"title": "$:/language/ControlPanel/Parsing/Hint",
"text": "Here you can globally disable/enable wiki parser rules. For changes to take effect, save and reload your wiki. Disabling certain parser rules can prevent <$text text=\"TiddlyWiki\"/> from functioning correctly. Use [[safe mode|https://tiddlywiki.com/#SafeMode]] to restore normal operation."
},
"$:/language/ControlPanel/Parsing/Block/Caption": {
"title": "$:/language/ControlPanel/Parsing/Block/Caption",
"text": "Block Parse Rules"
},
"$:/language/ControlPanel/Parsing/Inline/Caption": {
"title": "$:/language/ControlPanel/Parsing/Inline/Caption",
"text": "Inline Parse Rules"
},
"$:/language/ControlPanel/Parsing/Pragma/Caption": {
"title": "$:/language/ControlPanel/Parsing/Pragma/Caption",
"text": "Pragma Parse Rules"
},
"$:/language/ControlPanel/Plugins/Add/Caption": {
"title": "$:/language/ControlPanel/Plugins/Add/Caption",
"text": "Get more plugins"
},
"$:/language/ControlPanel/Plugins/Add/Hint": {
"title": "$:/language/ControlPanel/Plugins/Add/Hint",
"text": "Install plugins from the official library"
},
"$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint": {
"title": "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint",
"text": "This plugin is already installed at version <$text text=<<installedVersion>>/>"
},
"$:/language/ControlPanel/Plugins/AlsoRequires": {
"title": "$:/language/ControlPanel/Plugins/AlsoRequires",
"text": "Also requires:"
},
"$:/language/ControlPanel/Plugins/Caption": {
"title": "$:/language/ControlPanel/Plugins/Caption",
"text": "Plugins"
},
"$:/language/ControlPanel/Plugins/Disable/Caption": {
"title": "$:/language/ControlPanel/Plugins/Disable/Caption",
"text": "disable"
},
"$:/language/ControlPanel/Plugins/Disable/Hint": {
"title": "$:/language/ControlPanel/Plugins/Disable/Hint",
"text": "Disable this plugin when reloading page"
},
"$:/language/ControlPanel/Plugins/Disabled/Status": {
"title": "$:/language/ControlPanel/Plugins/Disabled/Status",
"text": "(disabled)"
},
"$:/language/ControlPanel/Plugins/Downgrade/Caption": {
"title": "$:/language/ControlPanel/Plugins/Downgrade/Caption",
"text": "downgrade"
},
"$:/language/ControlPanel/Plugins/Empty/Hint": {
"title": "$:/language/ControlPanel/Plugins/Empty/Hint",
"text": "None"
},
"$:/language/ControlPanel/Plugins/Enable/Caption": {
"title": "$:/language/ControlPanel/Plugins/Enable/Caption",
"text": "enable"
},
"$:/language/ControlPanel/Plugins/Enable/Hint": {
"title": "$:/language/ControlPanel/Plugins/Enable/Hint",
"text": "Enable this plugin when reloading page"
},
"$:/language/ControlPanel/Plugins/Install/Caption": {
"title": "$:/language/ControlPanel/Plugins/Install/Caption",
"text": "install"
},
"$:/language/ControlPanel/Plugins/Installed/Hint": {
"title": "$:/language/ControlPanel/Plugins/Installed/Hint",
"text": "Currently installed plugins:"
},
"$:/language/ControlPanel/Plugins/Languages/Caption": {
"title": "$:/language/ControlPanel/Plugins/Languages/Caption",
"text": "Languages"
},
"$:/language/ControlPanel/Plugins/Languages/Hint": {
"title": "$:/language/ControlPanel/Plugins/Languages/Hint",
"text": "Language pack plugins"
},
"$:/language/ControlPanel/Plugins/NoInfoFound/Hint": {
"title": "$:/language/ControlPanel/Plugins/NoInfoFound/Hint",
"text": "No ''\"<$text text=<<currentTab>>/>\"'' found"
},
"$:/language/ControlPanel/Plugins/NotInstalled/Hint": {
"title": "$:/language/ControlPanel/Plugins/NotInstalled/Hint",
"text": "This plugin is not currently installed"
},
"$:/language/ControlPanel/Plugins/OpenPluginLibrary": {
"title": "$:/language/ControlPanel/Plugins/OpenPluginLibrary",
"text": "open plugin library"
},
"$:/language/ControlPanel/Plugins/ClosePluginLibrary": {
"title": "$:/language/ControlPanel/Plugins/ClosePluginLibrary",
"text": "close plugin library"
},
"$:/language/ControlPanel/Plugins/PluginWillRequireReload": {
"title": "$:/language/ControlPanel/Plugins/PluginWillRequireReload",
"text": "(requires reload)"
},
"$:/language/ControlPanel/Plugins/Plugins/Caption": {
"title": "$:/language/ControlPanel/Plugins/Plugins/Caption",
"text": "Plugins"
},
"$:/language/ControlPanel/Plugins/Plugins/Hint": {
"title": "$:/language/ControlPanel/Plugins/Plugins/Hint",
"text": "Plugins"
},
"$:/language/ControlPanel/Plugins/Reinstall/Caption": {
"title": "$:/language/ControlPanel/Plugins/Reinstall/Caption",
"text": "reinstall"
},
"$:/language/ControlPanel/Plugins/Themes/Caption": {
"title": "$:/language/ControlPanel/Plugins/Themes/Caption",
"text": "Themes"
},
"$:/language/ControlPanel/Plugins/Themes/Hint": {
"title": "$:/language/ControlPanel/Plugins/Themes/Hint",
"text": "Theme plugins"
},
"$:/language/ControlPanel/Plugins/Update/Caption": {
"title": "$:/language/ControlPanel/Plugins/Update/Caption",
"text": "update"
},
"$:/language/ControlPanel/Plugins/Updates/Caption": {
"title": "$:/language/ControlPanel/Plugins/Updates/Caption",
"text": "Updates"
},
"$:/language/ControlPanel/Plugins/Updates/Hint": {
"title": "$:/language/ControlPanel/Plugins/Updates/Hint",
"text": "Available updates to installed plugins"
},
"$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption": {
"title": "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption",
"text": "Update <<update-count>> plugins"
},
"$:/language/ControlPanel/Plugins/SubPluginPrompt": {
"title": "$:/language/ControlPanel/Plugins/SubPluginPrompt",
"text": "With <<count>> sub-plugins available"
},
"$:/language/ControlPanel/Saving/Caption": {
"title": "$:/language/ControlPanel/Saving/Caption",
"text": "Saving"
},
"$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description",
"text": "Permit automatic saving for the download saver"
},
"$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint",
"text": "Enable Autosave for Download Saver"
},
"$:/language/ControlPanel/Saving/DownloadSaver/Caption": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/Caption",
"text": "Download Saver"
},
"$:/language/ControlPanel/Saving/DownloadSaver/Hint": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/Hint",
"text": "These settings apply to the HTML5-compatible download saver"
},
"$:/language/ControlPanel/Saving/General/Caption": {
"title": "$:/language/ControlPanel/Saving/General/Caption",
"text": "General"
},
"$:/language/ControlPanel/Saving/General/Hint": {
"title": "$:/language/ControlPanel/Saving/General/Hint",
"text": "These settings apply to all the loaded savers"
},
"$:/language/ControlPanel/Saving/Hint": {
"title": "$:/language/ControlPanel/Saving/Hint",
"text": "Settings used for saving the entire TiddlyWiki as a single file via a saver module"
},
"$:/language/ControlPanel/Saving/GitService/Branch": {
"title": "$:/language/ControlPanel/Saving/GitService/Branch",
"text": "Target branch for saving"
},
"$:/language/ControlPanel/Saving/GitService/CommitMessage": {
"title": "$:/language/ControlPanel/Saving/GitService/CommitMessage",
"text": "Saved by TiddlyWiki"
},
"$:/language/ControlPanel/Saving/GitService/Description": {
"title": "$:/language/ControlPanel/Saving/GitService/Description",
"text": "These settings are only used when saving to <<service-name>>"
},
"$:/language/ControlPanel/Saving/GitService/Filename": {
"title": "$:/language/ControlPanel/Saving/GitService/Filename",
"text": "Filename of target file (e.g. `index.html`)"
},
"$:/language/ControlPanel/Saving/GitService/Path": {
"title": "$:/language/ControlPanel/Saving/GitService/Path",
"text": "Path to target file (e.g. `/wiki/`)"
},
"$:/language/ControlPanel/Saving/GitService/Repo": {
"title": "$:/language/ControlPanel/Saving/GitService/Repo",
"text": "Target repository (e.g. `Jermolene/TiddlyWiki5`)"
},
"$:/language/ControlPanel/Saving/GitService/ServerURL": {
"title": "$:/language/ControlPanel/Saving/GitService/ServerURL",
"text": "Server API URL"
},
"$:/language/ControlPanel/Saving/GitService/UserName": {
"title": "$:/language/ControlPanel/Saving/GitService/UserName",
"text": "Username"
},
"$:/language/ControlPanel/Saving/GitService/GitHub/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/GitHub/Caption",
"text": "~GitHub Saver"
},
"$:/language/ControlPanel/Saving/GitService/GitHub/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/GitHub/Password",
"text": "Password, OAUTH token, or personal access token (see [[GitHub help page|https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line]] for details)"
},
"$:/language/ControlPanel/Saving/GitService/GitLab/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/GitLab/Caption",
"text": "~GitLab Saver"
},
"$:/language/ControlPanel/Saving/GitService/GitLab/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/GitLab/Password",
"text": "Personal access token for API (see [[GitLab help page|https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html]] for details)"
},
"$:/language/ControlPanel/Saving/GitService/Gitea/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/Gitea/Caption",
"text": "Gitea Saver"
},
"$:/language/ControlPanel/Saving/GitService/Gitea/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/Gitea/Password",
"text": "Personal access token for API (via Gitea’s web interface: `Settings | Applications | Generate New Token`)"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading",
"text": "Advanced Settings"
},
"$:/language/ControlPanel/Saving/TiddlySpot/BackupDir": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir",
"text": "Backup Directory"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Backups": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Backups",
"text": "Backups"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Caption": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Caption",
"text": "~TiddlySpot Saver"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Description": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Description",
"text": "These settings are only used when saving to http://tiddlyspot.com or a compatible remote server"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Filename": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Filename",
"text": "Upload Filename"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Heading": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Heading",
"text": "~TiddlySpot"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Hint": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Hint",
"text": "//The server URL defaults to `http://<wikiname>.tiddlyspot.com/store.cgi` and can be changed to use a custom server address, e.g. `http://example.com/store.php`.//"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Password": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Password",
"text": "Password"
},
"$:/language/ControlPanel/Saving/TiddlySpot/ServerURL": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL",
"text": "Server URL"
},
"$:/language/ControlPanel/Saving/TiddlySpot/UploadDir": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir",
"text": "Upload Directory"
},
"$:/language/ControlPanel/Saving/TiddlySpot/UserName": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/UserName",
"text": "Wiki Name"
},
"$:/language/ControlPanel/Settings/AutoSave/Caption": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Caption",
"text": "Autosave"
},
"$:/language/ControlPanel/Settings/AutoSave/Disabled/Description": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description",
"text": "Do not save changes automatically"
},
"$:/language/ControlPanel/Settings/AutoSave/Enabled/Description": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description",
"text": "Save changes automatically"
},
"$:/language/ControlPanel/Settings/AutoSave/Hint": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Hint",
"text": "Attempt to automatically save changes during editing when using a supporting saver"
},
"$:/language/ControlPanel/Settings/CamelCase/Caption": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Caption",
"text": "Camel Case Wiki Links"
},
"$:/language/ControlPanel/Settings/CamelCase/Hint": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Hint",
"text": "You can globally disable automatic linking of ~CamelCase phrases. Requires reload to take effect"
},
"$:/language/ControlPanel/Settings/CamelCase/Description": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Description",
"text": "Enable automatic ~CamelCase linking"
},
"$:/language/ControlPanel/Settings/Caption": {
"title": "$:/language/ControlPanel/Settings/Caption",
"text": "Settings"
},
"$:/language/ControlPanel/Settings/EditorToolbar/Caption": {
"title": "$:/language/ControlPanel/Settings/EditorToolbar/Caption",
"text": "Editor Toolbar"
},
"$:/language/ControlPanel/Settings/EditorToolbar/Hint": {
"title": "$:/language/ControlPanel/Settings/EditorToolbar/Hint",
"text": "Enable or disable the editor toolbar:"
},
"$:/language/ControlPanel/Settings/EditorToolbar/Description": {
"title": "$:/language/ControlPanel/Settings/EditorToolbar/Description",
"text": "Show editor toolbar"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Caption": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Caption",
"text": "Tiddler Info Panel Mode"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Hint": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Hint",
"text": "Control when the tiddler info panel closes:"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description",
"text": "Tiddler info panel closes automatically"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description",
"text": "Tiddler info panel stays open until explicitly closed"
},
"$:/language/ControlPanel/Settings/Hint": {
"title": "$:/language/ControlPanel/Settings/Hint",
"text": "These settings let you customise the behaviour of TiddlyWiki."
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption",
"text": "Navigation Address Bar"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint",
"text": "Behaviour of the browser address bar when navigating to a tiddler:"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description",
"text": "Do not update the address bar"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description",
"text": "Include the target tiddler"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description",
"text": "Include the target tiddler and the current story sequence"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Caption",
"text": "Navigation History"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Hint",
"text": "Update browser history when navigating to a tiddler:"
},
"$:/language/ControlPanel/Settings/NavigationHistory/No/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/No/Description",
"text": "Do not update history"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description",
"text": "Update history"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption",
"text": "Permalink/permaview Mode"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint",
"text": "Choose how permalink/permaview is handled:"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description",
"text": "Copy permalink/permaview URL to clipboard"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description",
"text": "Update address bar with permalink/permaview URL"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption",
"text": "Performance Instrumentation"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint",
"text": "Displays performance statistics in the browser developer console. Requires reload to take effect"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description",
"text": "Enable performance instrumentation"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption",
"text": "Toolbar Button Style"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint",
"text": "Choose the style for toolbar buttons:"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless",
"text": "Borderless"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed",
"text": "Boxed"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded",
"text": "Rounded"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Caption": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Caption",
"text": "Toolbar Buttons"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Hint": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Hint",
"text": "Default toolbar button appearance:"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description",
"text": "Include icon"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description",
"text": "Include text"
},
"$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption": {
"title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption",
"text": "Default Sidebar Tab"
},
"$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint": {
"title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint",
"text": "Specify which sidebar tab is displayed by default"
},
"$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption": {
"title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption",
"text": "Default More Sidebar Tab"
},
"$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint": {
"title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint",
"text": "Specify which More sidebar tab is displayed by default"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/Caption": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption",
"text": "Tiddler Opening Behaviour"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint",
"text": "Navigation from //within// the story river"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint",
"text": "Navigation from //outside// the story river"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove",
"text": "Open above the current tiddler"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow",
"text": "Open below the current tiddler"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop",
"text": "Open at the top of the story river"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom",
"text": "Open at the bottom of the story river"
},
"$:/language/ControlPanel/Settings/TitleLinks/Caption": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Caption",
"text": "Tiddler Titles"
},
"$:/language/ControlPanel/Settings/TitleLinks/Hint": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Hint",
"text": "Optionally display tiddler titles as links"
},
"$:/language/ControlPanel/Settings/TitleLinks/No/Description": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/No/Description",
"text": "Do not display tiddler titles as links"
},
"$:/language/ControlPanel/Settings/TitleLinks/Yes/Description": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description",
"text": "Display tiddler titles as links"
},
"$:/language/ControlPanel/Settings/MissingLinks/Caption": {
"title": "$:/language/ControlPanel/Settings/MissingLinks/Caption",
"text": "Wiki Links"
},
"$:/language/ControlPanel/Settings/MissingLinks/Hint": {
"title": "$:/language/ControlPanel/Settings/MissingLinks/Hint",
"text": "Choose whether to link to tiddlers that do not exist yet"
},
"$:/language/ControlPanel/Settings/MissingLinks/Description": {
"title": "$:/language/ControlPanel/Settings/MissingLinks/Description",
"text": "Enable links to missing tiddlers"
},
"$:/language/ControlPanel/StoryView/Caption": {
"title": "$:/language/ControlPanel/StoryView/Caption",
"text": "Story View"
},
"$:/language/ControlPanel/StoryView/Prompt": {
"title": "$:/language/ControlPanel/StoryView/Prompt",
"text": "Current view:"
},
"$:/language/ControlPanel/Stylesheets/Caption": {
"title": "$:/language/ControlPanel/Stylesheets/Caption",
"text": "Stylesheets"
},
"$:/language/ControlPanel/Stylesheets/Expand/Caption": {
"title": "$:/language/ControlPanel/Stylesheets/Expand/Caption",
"text": "Expand All"
},
"$:/language/ControlPanel/Stylesheets/Hint": {
"title": "$:/language/ControlPanel/Stylesheets/Hint",
"text": "This is the rendered CSS of the current stylesheet tiddlers tagged with <<tag \"$:/tags/Stylesheet\">>"
},
"$:/language/ControlPanel/Stylesheets/Restore/Caption": {
"title": "$:/language/ControlPanel/Stylesheets/Restore/Caption",
"text": "Restore"
},
"$:/language/ControlPanel/Theme/Caption": {
"title": "$:/language/ControlPanel/Theme/Caption",
"text": "Theme"
},
"$:/language/ControlPanel/Theme/Prompt": {
"title": "$:/language/ControlPanel/Theme/Prompt",
"text": "Current theme:"
},
"$:/language/ControlPanel/TiddlerFields/Caption": {
"title": "$:/language/ControlPanel/TiddlerFields/Caption",
"text": "Tiddler Fields"
},
"$:/language/ControlPanel/TiddlerFields/Hint": {
"title": "$:/language/ControlPanel/TiddlerFields/Hint",
"text": "This is the full set of TiddlerFields in use in this wiki (including system tiddlers but excluding shadow tiddlers)."
},
"$:/language/ControlPanel/Toolbars/Caption": {
"title": "$:/language/ControlPanel/Toolbars/Caption",
"text": "Toolbars"
},
"$:/language/ControlPanel/Toolbars/EditToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/EditToolbar/Caption",
"text": "Edit Toolbar"
},
"$:/language/ControlPanel/Toolbars/EditToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/EditToolbar/Hint",
"text": "Choose which buttons are displayed for tiddlers in edit mode. Drag and drop to change the ordering"
},
"$:/language/ControlPanel/Toolbars/Hint": {
"title": "$:/language/ControlPanel/Toolbars/Hint",
"text": "Select which toolbar buttons are displayed"
},
"$:/language/ControlPanel/Toolbars/PageControls/Caption": {
"title": "$:/language/ControlPanel/Toolbars/PageControls/Caption",
"text": "Page Toolbar"
},
"$:/language/ControlPanel/Toolbars/PageControls/Hint": {
"title": "$:/language/ControlPanel/Toolbars/PageControls/Hint",
"text": "Choose which buttons are displayed on the main page toolbar. Drag and drop to change the ordering"
},
"$:/language/ControlPanel/Toolbars/EditorToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption",
"text": "Editor Toolbar"
},
"$:/language/ControlPanel/Toolbars/EditorToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint",
"text": "Choose which buttons are displayed in the editor toolbar. Note that some buttons will only appear when editing tiddlers of a certain type. Drag and drop to change the ordering"
},
"$:/language/ControlPanel/Toolbars/ViewToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption",
"text": "View Toolbar"
},
"$:/language/ControlPanel/Toolbars/ViewToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint",
"text": "Choose which buttons are displayed for tiddlers in view mode. Drag and drop to change the ordering"
},
"$:/language/ControlPanel/Tools/Download/Full/Caption": {
"title": "$:/language/ControlPanel/Tools/Download/Full/Caption",
"text": "Download full wiki"
},
"$:/language/Date/DaySuffix/1": {
"title": "$:/language/Date/DaySuffix/1",
"text": "st"
},
"$:/language/Date/DaySuffix/2": {
"title": "$:/language/Date/DaySuffix/2",
"text": "nd"
},
"$:/language/Date/DaySuffix/3": {
"title": "$:/language/Date/DaySuffix/3",
"text": "rd"
},
"$:/language/Date/DaySuffix/4": {
"title": "$:/language/Date/DaySuffix/4",
"text": "th"
},
"$:/language/Date/DaySuffix/5": {
"title": "$:/language/Date/DaySuffix/5",
"text": "th"
},
"$:/language/Date/DaySuffix/6": {
"title": "$:/language/Date/DaySuffix/6",
"text": "th"
},
"$:/language/Date/DaySuffix/7": {
"title": "$:/language/Date/DaySuffix/7",
"text": "th"
},
"$:/language/Date/DaySuffix/8": {
"title": "$:/language/Date/DaySuffix/8",
"text": "th"
},
"$:/language/Date/DaySuffix/9": {
"title": "$:/language/Date/DaySuffix/9",
"text": "th"
},
"$:/language/Date/DaySuffix/10": {
"title": "$:/language/Date/DaySuffix/10",
"text": "th"
},
"$:/language/Date/DaySuffix/11": {
"title": "$:/language/Date/DaySuffix/11",
"text": "th"
},
"$:/language/Date/DaySuffix/12": {
"title": "$:/language/Date/DaySuffix/12",
"text": "th"
},
"$:/language/Date/DaySuffix/13": {
"title": "$:/language/Date/DaySuffix/13",
"text": "th"
},
"$:/language/Date/DaySuffix/14": {
"title": "$:/language/Date/DaySuffix/14",
"text": "th"
},
"$:/language/Date/DaySuffix/15": {
"title": "$:/language/Date/DaySuffix/15",
"text": "th"
},
"$:/language/Date/DaySuffix/16": {
"title": "$:/language/Date/DaySuffix/16",
"text": "th"
},
"$:/language/Date/DaySuffix/17": {
"title": "$:/language/Date/DaySuffix/17",
"text": "th"
},
"$:/language/Date/DaySuffix/18": {
"title": "$:/language/Date/DaySuffix/18",
"text": "th"
},
"$:/language/Date/DaySuffix/19": {
"title": "$:/language/Date/DaySuffix/19",
"text": "th"
},
"$:/language/Date/DaySuffix/20": {
"title": "$:/language/Date/DaySuffix/20",
"text": "th"
},
"$:/language/Date/DaySuffix/21": {
"title": "$:/language/Date/DaySuffix/21",
"text": "st"
},
"$:/language/Date/DaySuffix/22": {
"title": "$:/language/Date/DaySuffix/22",
"text": "nd"
},
"$:/language/Date/DaySuffix/23": {
"title": "$:/language/Date/DaySuffix/23",
"text": "rd"
},
"$:/language/Date/DaySuffix/24": {
"title": "$:/language/Date/DaySuffix/24",
"text": "th"
},
"$:/language/Date/DaySuffix/25": {
"title": "$:/language/Date/DaySuffix/25",
"text": "th"
},
"$:/language/Date/DaySuffix/26": {
"title": "$:/language/Date/DaySuffix/26",
"text": "th"
},
"$:/language/Date/DaySuffix/27": {
"title": "$:/language/Date/DaySuffix/27",
"text": "th"
},
"$:/language/Date/DaySuffix/28": {
"title": "$:/language/Date/DaySuffix/28",
"text": "th"
},
"$:/language/Date/DaySuffix/29": {
"title": "$:/language/Date/DaySuffix/29",
"text": "th"
},
"$:/language/Date/DaySuffix/30": {
"title": "$:/language/Date/DaySuffix/30",
"text": "th"
},
"$:/language/Date/DaySuffix/31": {
"title": "$:/language/Date/DaySuffix/31",
"text": "st"
},
"$:/language/Date/Long/Day/0": {
"title": "$:/language/Date/Long/Day/0",
"text": "Sunday"
},
"$:/language/Date/Long/Day/1": {
"title": "$:/language/Date/Long/Day/1",
"text": "Monday"
},
"$:/language/Date/Long/Day/2": {
"title": "$:/language/Date/Long/Day/2",
"text": "Tuesday"
},
"$:/language/Date/Long/Day/3": {
"title": "$:/language/Date/Long/Day/3",
"text": "Wednesday"
},
"$:/language/Date/Long/Day/4": {
"title": "$:/language/Date/Long/Day/4",
"text": "Thursday"
},
"$:/language/Date/Long/Day/5": {
"title": "$:/language/Date/Long/Day/5",
"text": "Friday"
},
"$:/language/Date/Long/Day/6": {
"title": "$:/language/Date/Long/Day/6",
"text": "Saturday"
},
"$:/language/Date/Long/Month/1": {
"title": "$:/language/Date/Long/Month/1",
"text": "January"
},
"$:/language/Date/Long/Month/2": {
"title": "$:/language/Date/Long/Month/2",
"text": "February"
},
"$:/language/Date/Long/Month/3": {
"title": "$:/language/Date/Long/Month/3",
"text": "March"
},
"$:/language/Date/Long/Month/4": {
"title": "$:/language/Date/Long/Month/4",
"text": "April"
},
"$:/language/Date/Long/Month/5": {
"title": "$:/language/Date/Long/Month/5",
"text": "May"
},
"$:/language/Date/Long/Month/6": {
"title": "$:/language/Date/Long/Month/6",
"text": "June"
},
"$:/language/Date/Long/Month/7": {
"title": "$:/language/Date/Long/Month/7",
"text": "July"
},
"$:/language/Date/Long/Month/8": {
"title": "$:/language/Date/Long/Month/8",
"text": "August"
},
"$:/language/Date/Long/Month/9": {
"title": "$:/language/Date/Long/Month/9",
"text": "September"
},
"$:/language/Date/Long/Month/10": {
"title": "$:/language/Date/Long/Month/10",
"text": "October"
},
"$:/language/Date/Long/Month/11": {
"title": "$:/language/Date/Long/Month/11",
"text": "November"
},
"$:/language/Date/Long/Month/12": {
"title": "$:/language/Date/Long/Month/12",
"text": "December"
},
"$:/language/Date/Period/am": {
"title": "$:/language/Date/Period/am",
"text": "am"
},
"$:/language/Date/Period/pm": {
"title": "$:/language/Date/Period/pm",
"text": "pm"
},
"$:/language/Date/Short/Day/0": {
"title": "$:/language/Date/Short/Day/0",
"text": "Sun"
},
"$:/language/Date/Short/Day/1": {
"title": "$:/language/Date/Short/Day/1",
"text": "Mon"
},
"$:/language/Date/Short/Day/2": {
"title": "$:/language/Date/Short/Day/2",
"text": "Tue"
},
"$:/language/Date/Short/Day/3": {
"title": "$:/language/Date/Short/Day/3",
"text": "Wed"
},
"$:/language/Date/Short/Day/4": {
"title": "$:/language/Date/Short/Day/4",
"text": "Thu"
},
"$:/language/Date/Short/Day/5": {
"title": "$:/language/Date/Short/Day/5",
"text": "Fri"
},
"$:/language/Date/Short/Day/6": {
"title": "$:/language/Date/Short/Day/6",
"text": "Sat"
},
"$:/language/Date/Short/Month/1": {
"title": "$:/language/Date/Short/Month/1",
"text": "Jan"
},
"$:/language/Date/Short/Month/2": {
"title": "$:/language/Date/Short/Month/2",
"text": "Feb"
},
"$:/language/Date/Short/Month/3": {
"title": "$:/language/Date/Short/Month/3",
"text": "Mar"
},
"$:/language/Date/Short/Month/4": {
"title": "$:/language/Date/Short/Month/4",
"text": "Apr"
},
"$:/language/Date/Short/Month/5": {
"title": "$:/language/Date/Short/Month/5",
"text": "May"
},
"$:/language/Date/Short/Month/6": {
"title": "$:/language/Date/Short/Month/6",
"text": "Jun"
},
"$:/language/Date/Short/Month/7": {
"title": "$:/language/Date/Short/Month/7",
"text": "Jul"
},
"$:/language/Date/Short/Month/8": {
"title": "$:/language/Date/Short/Month/8",
"text": "Aug"
},
"$:/language/Date/Short/Month/9": {
"title": "$:/language/Date/Short/Month/9",
"text": "Sep"
},
"$:/language/Date/Short/Month/10": {
"title": "$:/language/Date/Short/Month/10",
"text": "Oct"
},
"$:/language/Date/Short/Month/11": {
"title": "$:/language/Date/Short/Month/11",
"text": "Nov"
},
"$:/language/Date/Short/Month/12": {
"title": "$:/language/Date/Short/Month/12",
"text": "Dec"
},
"$:/language/RelativeDate/Future/Days": {
"title": "$:/language/RelativeDate/Future/Days",
"text": "<<period>> days from now"
},
"$:/language/RelativeDate/Future/Hours": {
"title": "$:/language/RelativeDate/Future/Hours",
"text": "<<period>> hours from now"
},
"$:/language/RelativeDate/Future/Minutes": {
"title": "$:/language/RelativeDate/Future/Minutes",
"text": "<<period>> minutes from now"
},
"$:/language/RelativeDate/Future/Months": {
"title": "$:/language/RelativeDate/Future/Months",
"text": "<<period>> months from now"
},
"$:/language/RelativeDate/Future/Second": {
"title": "$:/language/RelativeDate/Future/Second",
"text": "1 second from now"
},
"$:/language/RelativeDate/Future/Seconds": {
"title": "$:/language/RelativeDate/Future/Seconds",
"text": "<<period>> seconds from now"
},
"$:/language/RelativeDate/Future/Years": {
"title": "$:/language/RelativeDate/Future/Years",
"text": "<<period>> years from now"
},
"$:/language/RelativeDate/Past/Days": {
"title": "$:/language/RelativeDate/Past/Days",
"text": "<<period>> days ago"
},
"$:/language/RelativeDate/Past/Hours": {
"title": "$:/language/RelativeDate/Past/Hours",
"text": "<<period>> hours ago"
},
"$:/language/RelativeDate/Past/Minutes": {
"title": "$:/language/RelativeDate/Past/Minutes",
"text": "<<period>> minutes ago"
},
"$:/language/RelativeDate/Past/Months": {
"title": "$:/language/RelativeDate/Past/Months",
"text": "<<period>> months ago"
},
"$:/language/RelativeDate/Past/Second": {
"title": "$:/language/RelativeDate/Past/Second",
"text": "1 second ago"
},
"$:/language/RelativeDate/Past/Seconds": {
"title": "$:/language/RelativeDate/Past/Seconds",
"text": "<<period>> seconds ago"
},
"$:/language/RelativeDate/Past/Years": {
"title": "$:/language/RelativeDate/Past/Years",
"text": "<<period>> years ago"
},
"$:/language/Docs/ModuleTypes/allfilteroperator": {
"title": "$:/language/Docs/ModuleTypes/allfilteroperator",
"text": "A sub-operator for the ''all'' filter operator."
},
"$:/language/Docs/ModuleTypes/animation": {
"title": "$:/language/Docs/ModuleTypes/animation",
"text": "Animations that may be used with the RevealWidget."
},
"$:/language/Docs/ModuleTypes/authenticator": {
"title": "$:/language/Docs/ModuleTypes/authenticator",
"text": "Defines how requests are authenticated by the built-in HTTP server."
},
"$:/language/Docs/ModuleTypes/bitmapeditoroperation": {
"title": "$:/language/Docs/ModuleTypes/bitmapeditoroperation",
"text": "A bitmap editor toolbar operation."
},
"$:/language/Docs/ModuleTypes/command": {
"title": "$:/language/Docs/ModuleTypes/command",
"text": "Commands that can be executed under Node.js."
},
"$:/language/Docs/ModuleTypes/config": {
"title": "$:/language/Docs/ModuleTypes/config",
"text": "Data to be inserted into `$tw.config`."
},
"$:/language/Docs/ModuleTypes/filteroperator": {
"title": "$:/language/Docs/ModuleTypes/filteroperator",
"text": "Individual filter operator methods."
},
"$:/language/Docs/ModuleTypes/global": {
"title": "$:/language/Docs/ModuleTypes/global",
"text": "Global data to be inserted into `$tw`."
},
"$:/language/Docs/ModuleTypes/info": {
"title": "$:/language/Docs/ModuleTypes/info",
"text": "Publishes system information via the [[$:/temp/info-plugin]] pseudo-plugin."
},
"$:/language/Docs/ModuleTypes/isfilteroperator": {
"title": "$:/language/Docs/ModuleTypes/isfilteroperator",
"text": "Operands for the ''is'' filter operator."
},
"$:/language/Docs/ModuleTypes/library": {
"title": "$:/language/Docs/ModuleTypes/library",
"text": "Generic module type for general purpose JavaScript modules."
},
"$:/language/Docs/ModuleTypes/macro": {
"title": "$:/language/Docs/ModuleTypes/macro",
"text": "JavaScript macro definitions."
},
"$:/language/Docs/ModuleTypes/parser": {
"title": "$:/language/Docs/ModuleTypes/parser",
"text": "Parsers for different content types."
},
"$:/language/Docs/ModuleTypes/route": {
"title": "$:/language/Docs/ModuleTypes/route",
"text": "Defines how individual URL patterns are handled by the built-in HTTP server."
},
"$:/language/Docs/ModuleTypes/saver": {
"title": "$:/language/Docs/ModuleTypes/saver",
"text": "Savers handle different methods for saving files from the browser."
},
"$:/language/Docs/ModuleTypes/startup": {
"title": "$:/language/Docs/ModuleTypes/startup",
"text": "Startup functions."
},
"$:/language/Docs/ModuleTypes/storyview": {
"title": "$:/language/Docs/ModuleTypes/storyview",
"text": "Story views customise the animation and behaviour of list widgets."
},
"$:/language/Docs/ModuleTypes/texteditoroperation": {
"title": "$:/language/Docs/ModuleTypes/texteditoroperation",
"text": "A text editor toolbar operation."
},
"$:/language/Docs/ModuleTypes/tiddlerdeserializer": {
"title": "$:/language/Docs/ModuleTypes/tiddlerdeserializer",
"text": "Converts different content types into tiddlers."
},
"$:/language/Docs/ModuleTypes/tiddlerfield": {
"title": "$:/language/Docs/ModuleTypes/tiddlerfield",
"text": "Defines the behaviour of an individual tiddler field."
},
"$:/language/Docs/ModuleTypes/tiddlermethod": {
"title": "$:/language/Docs/ModuleTypes/tiddlermethod",
"text": "Adds methods to the `$tw.Tiddler` prototype."
},
"$:/language/Docs/ModuleTypes/upgrader": {
"title": "$:/language/Docs/ModuleTypes/upgrader",
"text": "Applies upgrade processing to tiddlers during an upgrade/import."
},
"$:/language/Docs/ModuleTypes/utils": {
"title": "$:/language/Docs/ModuleTypes/utils",
"text": "Adds methods to `$tw.utils`."
},
"$:/language/Docs/ModuleTypes/utils-node": {
"title": "$:/language/Docs/ModuleTypes/utils-node",
"text": "Adds Node.js-specific methods to `$tw.utils`."
},
"$:/language/Docs/ModuleTypes/widget": {
"title": "$:/language/Docs/ModuleTypes/widget",
"text": "Widgets encapsulate DOM rendering and refreshing."
},
"$:/language/Docs/ModuleTypes/wikimethod": {
"title": "$:/language/Docs/ModuleTypes/wikimethod",
"text": "Adds methods to `$tw.Wiki`."
},
"$:/language/Docs/ModuleTypes/wikirule": {
"title": "$:/language/Docs/ModuleTypes/wikirule",
"text": "Individual parser rules for the main WikiText parser."
},
"$:/language/Docs/PaletteColours/alert-background": {
"title": "$:/language/Docs/PaletteColours/alert-background",
"text": "Alert background"
},
"$:/language/Docs/PaletteColours/alert-border": {
"title": "$:/language/Docs/PaletteColours/alert-border",
"text": "Alert border"
},
"$:/language/Docs/PaletteColours/alert-highlight": {
"title": "$:/language/Docs/PaletteColours/alert-highlight",
"text": "Alert highlight"
},
"$:/language/Docs/PaletteColours/alert-muted-foreground": {
"title": "$:/language/Docs/PaletteColours/alert-muted-foreground",
"text": "Alert muted foreground"
},
"$:/language/Docs/PaletteColours/background": {
"title": "$:/language/Docs/PaletteColours/background",
"text": "General background"
},
"$:/language/Docs/PaletteColours/blockquote-bar": {
"title": "$:/language/Docs/PaletteColours/blockquote-bar",
"text": "Blockquote bar"
},
"$:/language/Docs/PaletteColours/button-background": {
"title": "$:/language/Docs/PaletteColours/button-background",
"text": "Default button background"
},
"$:/language/Docs/PaletteColours/button-border": {
"title": "$:/language/Docs/PaletteColours/button-border",
"text": "Default button border"
},
"$:/language/Docs/PaletteColours/button-foreground": {
"title": "$:/language/Docs/PaletteColours/button-foreground",
"text": "Default button foreground"
},
"$:/language/Docs/PaletteColours/dirty-indicator": {
"title": "$:/language/Docs/PaletteColours/dirty-indicator",
"text": "Unsaved changes indicator"
},
"$:/language/Docs/PaletteColours/code-background": {
"title": "$:/language/Docs/PaletteColours/code-background",
"text": "Code background"
},
"$:/language/Docs/PaletteColours/code-border": {
"title": "$:/language/Docs/PaletteColours/code-border",
"text": "Code border"
},
"$:/language/Docs/PaletteColours/code-foreground": {
"title": "$:/language/Docs/PaletteColours/code-foreground",
"text": "Code foreground"
},
"$:/language/Docs/PaletteColours/download-background": {
"title": "$:/language/Docs/PaletteColours/download-background",
"text": "Download button background"
},
"$:/language/Docs/PaletteColours/download-foreground": {
"title": "$:/language/Docs/PaletteColours/download-foreground",
"text": "Download button foreground"
},
"$:/language/Docs/PaletteColours/dragger-background": {
"title": "$:/language/Docs/PaletteColours/dragger-background",
"text": "Dragger background"
},
"$:/language/Docs/PaletteColours/dragger-foreground": {
"title": "$:/language/Docs/PaletteColours/dragger-foreground",
"text": "Dragger foreground"
},
"$:/language/Docs/PaletteColours/dropdown-background": {
"title": "$:/language/Docs/PaletteColours/dropdown-background",
"text": "Dropdown background"
},
"$:/language/Docs/PaletteColours/dropdown-border": {
"title": "$:/language/Docs/PaletteColours/dropdown-border",
"text": "Dropdown border"
},
"$:/language/Docs/PaletteColours/dropdown-tab-background-selected": {
"title": "$:/language/Docs/PaletteColours/dropdown-tab-background-selected",
"text": "Dropdown tab background for selected tabs"
},
"$:/language/Docs/PaletteColours/dropdown-tab-background": {
"title": "$:/language/Docs/PaletteColours/dropdown-tab-background",
"text": "Dropdown tab background"
},
"$:/language/Docs/PaletteColours/dropzone-background": {
"title": "$:/language/Docs/PaletteColours/dropzone-background",
"text": "Dropzone background"
},
"$:/language/Docs/PaletteColours/external-link-background-hover": {
"title": "$:/language/Docs/PaletteColours/external-link-background-hover",
"text": "External link background hover"
},
"$:/language/Docs/PaletteColours/external-link-background-visited": {
"title": "$:/language/Docs/PaletteColours/external-link-background-visited",
"text": "External link background visited"
},
"$:/language/Docs/PaletteColours/external-link-background": {
"title": "$:/language/Docs/PaletteColours/external-link-background",
"text": "External link background"
},
"$:/language/Docs/PaletteColours/external-link-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/external-link-foreground-hover",
"text": "External link foreground hover"
},
"$:/language/Docs/PaletteColours/external-link-foreground-visited": {
"title": "$:/language/Docs/PaletteColours/external-link-foreground-visited",
"text": "External link foreground visited"
},
"$:/language/Docs/PaletteColours/external-link-foreground": {
"title": "$:/language/Docs/PaletteColours/external-link-foreground",
"text": "External link foreground"
},
"$:/language/Docs/PaletteColours/foreground": {
"title": "$:/language/Docs/PaletteColours/foreground",
"text": "General foreground"
},
"$:/language/Docs/PaletteColours/menubar-background": {
"title": "$:/language/Docs/PaletteColours/menubar-background",
"text": "Menu bar background"
},
"$:/language/Docs/PaletteColours/menubar-foreground": {
"title": "$:/language/Docs/PaletteColours/menubar-foreground",
"text": "Menu bar foreground"
},
"$:/language/Docs/PaletteColours/message-background": {
"title": "$:/language/Docs/PaletteColours/message-background",
"text": "Message box background"
},
"$:/language/Docs/PaletteColours/message-border": {
"title": "$:/language/Docs/PaletteColours/message-border",
"text": "Message box border"
},
"$:/language/Docs/PaletteColours/message-foreground": {
"title": "$:/language/Docs/PaletteColours/message-foreground",
"text": "Message box foreground"
},
"$:/language/Docs/PaletteColours/modal-backdrop": {
"title": "$:/language/Docs/PaletteColours/modal-backdrop",
"text": "Modal backdrop"
},
"$:/language/Docs/PaletteColours/modal-background": {
"title": "$:/language/Docs/PaletteColours/modal-background",
"text": "Modal background"
},
"$:/language/Docs/PaletteColours/modal-border": {
"title": "$:/language/Docs/PaletteColours/modal-border",
"text": "Modal border"
},
"$:/language/Docs/PaletteColours/modal-footer-background": {
"title": "$:/language/Docs/PaletteColours/modal-footer-background",
"text": "Modal footer background"
},
"$:/language/Docs/PaletteColours/modal-footer-border": {
"title": "$:/language/Docs/PaletteColours/modal-footer-border",
"text": "Modal footer border"
},
"$:/language/Docs/PaletteColours/modal-header-border": {
"title": "$:/language/Docs/PaletteColours/modal-header-border",
"text": "Modal header border"
},
"$:/language/Docs/PaletteColours/muted-foreground": {
"title": "$:/language/Docs/PaletteColours/muted-foreground",
"text": "General muted foreground"
},
"$:/language/Docs/PaletteColours/notification-background": {
"title": "$:/language/Docs/PaletteColours/notification-background",
"text": "Notification background"
},
"$:/language/Docs/PaletteColours/notification-border": {
"title": "$:/language/Docs/PaletteColours/notification-border",
"text": "Notification border"
},
"$:/language/Docs/PaletteColours/page-background": {
"title": "$:/language/Docs/PaletteColours/page-background",
"text": "Page background"
},
"$:/language/Docs/PaletteColours/pre-background": {
"title": "$:/language/Docs/PaletteColours/pre-background",
"text": "Preformatted code background"
},
"$:/language/Docs/PaletteColours/pre-border": {
"title": "$:/language/Docs/PaletteColours/pre-border",
"text": "Preformatted code border"
},
"$:/language/Docs/PaletteColours/primary": {
"title": "$:/language/Docs/PaletteColours/primary",
"text": "General primary"
},
"$:/language/Docs/PaletteColours/select-tag-background": {
"title": "$:/language/Docs/PaletteColours/select-tag-background",
"text": "`<select>` element background"
},
"$:/language/Docs/PaletteColours/select-tag-foreground": {
"title": "$:/language/Docs/PaletteColours/select-tag-foreground",
"text": "`<select>` element text"
},
"$:/language/Docs/PaletteColours/sidebar-button-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-button-foreground",
"text": "Sidebar button foreground"
},
"$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover",
"text": "Sidebar controls foreground hover"
},
"$:/language/Docs/PaletteColours/sidebar-controls-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground",
"text": "Sidebar controls foreground"
},
"$:/language/Docs/PaletteColours/sidebar-foreground-shadow": {
"title": "$:/language/Docs/PaletteColours/sidebar-foreground-shadow",
"text": "Sidebar foreground shadow"
},
"$:/language/Docs/PaletteColours/sidebar-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-foreground",
"text": "Sidebar foreground"
},
"$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover",
"text": "Sidebar muted foreground hover"
},
"$:/language/Docs/PaletteColours/sidebar-muted-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground",
"text": "Sidebar muted foreground"
},
"$:/language/Docs/PaletteColours/sidebar-tab-background-selected": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-background-selected",
"text": "Sidebar tab background for selected tabs"
},
"$:/language/Docs/PaletteColours/sidebar-tab-background": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-background",
"text": "Sidebar tab background"
},
"$:/language/Docs/PaletteColours/sidebar-tab-border-selected": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-border-selected",
"text": "Sidebar tab border for selected tabs"
},
"$:/language/Docs/PaletteColours/sidebar-tab-border": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-border",
"text": "Sidebar tab border"
},
"$:/language/Docs/PaletteColours/sidebar-tab-divider": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-divider",
"text": "Sidebar tab divider"
},
"$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected",
"text": "Sidebar tab foreground for selected tabs"
},
"$:/language/Docs/PaletteColours/sidebar-tab-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground",
"text": "Sidebar tab foreground"
},
"$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover",
"text": "Sidebar tiddler link foreground hover"
},
"$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground",
"text": "Sidebar tiddler link foreground"
},
"$:/language/Docs/PaletteColours/site-title-foreground": {
"title": "$:/language/Docs/PaletteColours/site-title-foreground",
"text": "Site title foreground"
},
"$:/language/Docs/PaletteColours/static-alert-foreground": {
"title": "$:/language/Docs/PaletteColours/static-alert-foreground",
"text": "Static alert foreground"
},
"$:/language/Docs/PaletteColours/tab-background-selected": {
"title": "$:/language/Docs/PaletteColours/tab-background-selected",
"text": "Tab background for selected tabs"
},
"$:/language/Docs/PaletteColours/tab-background": {
"title": "$:/language/Docs/PaletteColours/tab-background",
"text": "Tab background"
},
"$:/language/Docs/PaletteColours/tab-border-selected": {
"title": "$:/language/Docs/PaletteColours/tab-border-selected",
"text": "Tab border for selected tabs"
},
"$:/language/Docs/PaletteColours/tab-border": {
"title": "$:/language/Docs/PaletteColours/tab-border",
"text": "Tab border"
},
"$:/language/Docs/PaletteColours/tab-divider": {
"title": "$:/language/Docs/PaletteColours/tab-divider",
"text": "Tab divider"
},
"$:/language/Docs/PaletteColours/tab-foreground-selected": {
"title": "$:/language/Docs/PaletteColours/tab-foreground-selected",
"text": "Tab foreground for selected tabs"
},
"$:/language/Docs/PaletteColours/tab-foreground": {
"title": "$:/language/Docs/PaletteColours/tab-foreground",
"text": "Tab foreground"
},
"$:/language/Docs/PaletteColours/table-border": {
"title": "$:/language/Docs/PaletteColours/table-border",
"text": "Table border"
},
"$:/language/Docs/PaletteColours/table-footer-background": {
"title": "$:/language/Docs/PaletteColours/table-footer-background",
"text": "Table footer background"
},
"$:/language/Docs/PaletteColours/table-header-background": {
"title": "$:/language/Docs/PaletteColours/table-header-background",
"text": "Table header background"
},
"$:/language/Docs/PaletteColours/tag-background": {
"title": "$:/language/Docs/PaletteColours/tag-background",
"text": "Tag background"
},
"$:/language/Docs/PaletteColours/tag-foreground": {
"title": "$:/language/Docs/PaletteColours/tag-foreground",
"text": "Tag foreground"
},
"$:/language/Docs/PaletteColours/tiddler-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-background",
"text": "Tiddler background"
},
"$:/language/Docs/PaletteColours/tiddler-border": {
"title": "$:/language/Docs/PaletteColours/tiddler-border",
"text": "Tiddler border"
},
"$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover",
"text": "Tiddler controls foreground hover"
},
"$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected": {
"title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected",
"text": "Tiddler controls foreground for selected controls"
},
"$:/language/Docs/PaletteColours/tiddler-controls-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground",
"text": "Tiddler controls foreground"
},
"$:/language/Docs/PaletteColours/tiddler-editor-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-background",
"text": "Tiddler editor background"
},
"$:/language/Docs/PaletteColours/tiddler-editor-border-image": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-border-image",
"text": "Tiddler editor border image"
},
"$:/language/Docs/PaletteColours/tiddler-editor-border": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-border",
"text": "Tiddler editor border"
},
"$:/language/Docs/PaletteColours/tiddler-editor-fields-even": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-even",
"text": "Tiddler editor background for even fields"
},
"$:/language/Docs/PaletteColours/tiddler-editor-fields-odd": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd",
"text": "Tiddler editor background for odd fields"
},
"$:/language/Docs/PaletteColours/tiddler-info-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-info-background",
"text": "Tiddler info panel background"
},
"$:/language/Docs/PaletteColours/tiddler-info-border": {
"title": "$:/language/Docs/PaletteColours/tiddler-info-border",
"text": "Tiddler info panel border"
},
"$:/language/Docs/PaletteColours/tiddler-info-tab-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-info-tab-background",
"text": "Tiddler info panel tab background"
},
"$:/language/Docs/PaletteColours/tiddler-link-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-link-background",
"text": "Tiddler link background"
},
"$:/language/Docs/PaletteColours/tiddler-link-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-link-foreground",
"text": "Tiddler link foreground"
},
"$:/language/Docs/PaletteColours/tiddler-subtitle-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground",
"text": "Tiddler subtitle foreground"
},
"$:/language/Docs/PaletteColours/tiddler-title-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-title-foreground",
"text": "Tiddler title foreground"
},
"$:/language/Docs/PaletteColours/toolbar-new-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-new-button",
"text": "Toolbar 'new tiddler' button foreground"
},
"$:/language/Docs/PaletteColours/toolbar-options-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-options-button",
"text": "Toolbar 'options' button foreground"
},
"$:/language/Docs/PaletteColours/toolbar-save-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-save-button",
"text": "Toolbar 'save' button foreground"
},
"$:/language/Docs/PaletteColours/toolbar-info-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-info-button",
"text": "Toolbar 'info' button foreground"
},
"$:/language/Docs/PaletteColours/toolbar-edit-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-edit-button",
"text": "Toolbar 'edit' button foreground"
},
"$:/language/Docs/PaletteColours/toolbar-close-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-close-button",
"text": "Toolbar 'close' button foreground"
},
"$:/language/Docs/PaletteColours/toolbar-delete-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-delete-button",
"text": "Toolbar 'delete' button foreground"
},
"$:/language/Docs/PaletteColours/toolbar-cancel-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-cancel-button",
"text": "Toolbar 'cancel' button foreground"
},
"$:/language/Docs/PaletteColours/toolbar-done-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-done-button",
"text": "Toolbar 'done' button foreground"
},
"$:/language/Docs/PaletteColours/untagged-background": {
"title": "$:/language/Docs/PaletteColours/untagged-background",
"text": "Untagged pill background"
},
"$:/language/Docs/PaletteColours/very-muted-foreground": {
"title": "$:/language/Docs/PaletteColours/very-muted-foreground",
"text": "Very muted foreground"
},
"$:/language/EditTemplate/Body/External/Hint": {
"title": "$:/language/EditTemplate/Body/External/Hint",
"text": "This tiddler shows content stored outside of the main TiddlyWiki file. You can edit the tags and fields but cannot directly edit the content itself"
},
"$:/language/EditTemplate/Body/Placeholder": {
"title": "$:/language/EditTemplate/Body/Placeholder",
"text": "Type the text for this tiddler"
},
"$:/language/EditTemplate/Body/Preview/Type/Output": {
"title": "$:/language/EditTemplate/Body/Preview/Type/Output",
"text": "output"
},
"$:/language/EditTemplate/Field/Remove/Caption": {
"title": "$:/language/EditTemplate/Field/Remove/Caption",
"text": "remove field"
},
"$:/language/EditTemplate/Field/Remove/Hint": {
"title": "$:/language/EditTemplate/Field/Remove/Hint",
"text": "Remove field"
},
"$:/language/EditTemplate/Field/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Field/Dropdown/Caption",
"text": "field list"
},
"$:/language/EditTemplate/Field/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Field/Dropdown/Hint",
"text": "Show field list"
},
"$:/language/EditTemplate/Fields/Add/Button": {
"title": "$:/language/EditTemplate/Fields/Add/Button",
"text": "add"
},
"$:/language/EditTemplate/Fields/Add/Button/Hint": {
"title": "$:/language/EditTemplate/Fields/Add/Button/Hint",
"text": "Add the new field to the tiddler"
},
"$:/language/EditTemplate/Fields/Add/Name/Placeholder": {
"title": "$:/language/EditTemplate/Fields/Add/Name/Placeholder",
"text": "field name"
},
"$:/language/EditTemplate/Fields/Add/Prompt": {
"title": "$:/language/EditTemplate/Fields/Add/Prompt",
"text": "Add a new field:"
},
"$:/language/EditTemplate/Fields/Add/Value/Placeholder": {
"title": "$:/language/EditTemplate/Fields/Add/Value/Placeholder",
"text": "field value"
},
"$:/language/EditTemplate/Fields/Add/Dropdown/System": {
"title": "$:/language/EditTemplate/Fields/Add/Dropdown/System",
"text": "System fields"
},
"$:/language/EditTemplate/Fields/Add/Dropdown/User": {
"title": "$:/language/EditTemplate/Fields/Add/Dropdown/User",
"text": "User fields"
},
"$:/language/EditTemplate/Shadow/Warning": {
"title": "$:/language/EditTemplate/Shadow/Warning",
"text": "This is a shadow tiddler. Any changes you make will override the default version from the plugin <<pluginLink>>"
},
"$:/language/EditTemplate/Shadow/OverriddenWarning": {
"title": "$:/language/EditTemplate/Shadow/OverriddenWarning",
"text": "This is a modified shadow tiddler. You can revert to the default version in the plugin <<pluginLink>> by deleting this tiddler"
},
"$:/language/EditTemplate/Tags/Add/Button": {
"title": "$:/language/EditTemplate/Tags/Add/Button",
"text": "add"
},
"$:/language/EditTemplate/Tags/Add/Button/Hint": {
"title": "$:/language/EditTemplate/Tags/Add/Button/Hint",
"text": "add tag"
},
"$:/language/EditTemplate/Tags/Add/Placeholder": {
"title": "$:/language/EditTemplate/Tags/Add/Placeholder",
"text": "tag name"
},
"$:/language/EditTemplate/Tags/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Tags/Dropdown/Caption",
"text": "tag list"
},
"$:/language/EditTemplate/Tags/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Tags/Dropdown/Hint",
"text": "Show tag list"
},
"$:/language/EditTemplate/Title/BadCharacterWarning": {
"title": "$:/language/EditTemplate/Title/BadCharacterWarning",
"text": "Warning: avoid using any of the characters <<bad-chars>> in tiddler titles"
},
"$:/language/EditTemplate/Title/Exists/Prompt": {
"title": "$:/language/EditTemplate/Title/Exists/Prompt",
"text": "Target tiddler already exists"
},
"$:/language/EditTemplate/Title/Relink/Prompt": {
"title": "$:/language/EditTemplate/Title/Relink/Prompt",
"text": "Update ''<$text text=<<fromTitle>>/>'' to ''<$text text=<<toTitle>>/>'' in the //tags// and //list// fields of other tiddlers"
},
"$:/language/EditTemplate/Title/References/Prompt": {
"title": "$:/language/EditTemplate/Title/References/Prompt",
"text": "The following references to this tiddler will not be automatically updated:"
},
"$:/language/EditTemplate/Type/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Type/Dropdown/Caption",
"text": "content type list"
},
"$:/language/EditTemplate/Type/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Type/Dropdown/Hint",
"text": "Show content type list"
},
"$:/language/EditTemplate/Type/Delete/Caption": {
"title": "$:/language/EditTemplate/Type/Delete/Caption",
"text": "delete content type"
},
"$:/language/EditTemplate/Type/Delete/Hint": {
"title": "$:/language/EditTemplate/Type/Delete/Hint",
"text": "Delete content type"
},
"$:/language/EditTemplate/Type/Placeholder": {
"title": "$:/language/EditTemplate/Type/Placeholder",
"text": "content type"
},
"$:/language/EditTemplate/Type/Prompt": {
"title": "$:/language/EditTemplate/Type/Prompt",
"text": "Type:"
},
"$:/language/Exporters/StaticRiver": {
"title": "$:/language/Exporters/StaticRiver",
"text": "Static HTML"
},
"$:/language/Exporters/JsonFile": {
"title": "$:/language/Exporters/JsonFile",
"text": "JSON file"
},
"$:/language/Exporters/CsvFile": {
"title": "$:/language/Exporters/CsvFile",
"text": "CSV file"
},
"$:/language/Exporters/TidFile": {
"title": "$:/language/Exporters/TidFile",
"text": "\".tid\" file"
},
"$:/language/Docs/Fields/_canonical_uri": {
"title": "$:/language/Docs/Fields/_canonical_uri",
"text": "The full URI of an external image tiddler"
},
"$:/language/Docs/Fields/bag": {
"title": "$:/language/Docs/Fields/bag",
"text": "The name of the bag from which a tiddler came"
},
"$:/language/Docs/Fields/caption": {
"title": "$:/language/Docs/Fields/caption",
"text": "The text to be displayed on a tab or button"
},
"$:/language/Docs/Fields/color": {
"title": "$:/language/Docs/Fields/color",
"text": "The CSS color value associated with a tiddler"
},
"$:/language/Docs/Fields/component": {
"title": "$:/language/Docs/Fields/component",
"text": "The name of the component responsible for an [[alert tiddler|AlertMechanism]]"
},
"$:/language/Docs/Fields/current-tiddler": {
"title": "$:/language/Docs/Fields/current-tiddler",
"text": "Used to cache the top tiddler in a [[history list|HistoryMechanism]]"
},
"$:/language/Docs/Fields/created": {
"title": "$:/language/Docs/Fields/created",
"text": "The date a tiddler was created"
},
"$:/language/Docs/Fields/creator": {
"title": "$:/language/Docs/Fields/creator",
"text": "The name of the person who created a tiddler"
},
"$:/language/Docs/Fields/dependents": {
"title": "$:/language/Docs/Fields/dependents",
"text": "For a plugin, lists the dependent plugin titles"
},
"$:/language/Docs/Fields/description": {
"title": "$:/language/Docs/Fields/description",
"text": "The descriptive text for a plugin, or a modal dialogue"
},
"$:/language/Docs/Fields/draft.of": {
"title": "$:/language/Docs/Fields/draft.of",
"text": "For draft tiddlers, contains the title of the tiddler of which this is a draft"
},
"$:/language/Docs/Fields/draft.title": {
"title": "$:/language/Docs/Fields/draft.title",
"text": "For draft tiddlers, contains the proposed new title of the tiddler"
},
"$:/language/Docs/Fields/footer": {
"title": "$:/language/Docs/Fields/footer",
"text": "The footer text for a wizard"
},
"$:/language/Docs/Fields/hide-body": {
"title": "$:/language/Docs/Fields/hide-body",
"text": "The view template will hide bodies of tiddlers if set to: ''yes''"
},
"$:/language/Docs/Fields/icon": {
"title": "$:/language/Docs/Fields/icon",
"text": "The title of the tiddler containing the icon associated with a tiddler"
},
"$:/language/Docs/Fields/library": {
"title": "$:/language/Docs/Fields/library",
"text": "Indicates that a tiddler should be saved as a JavaScript library if set to: ''yes''"
},
"$:/language/Docs/Fields/list": {
"title": "$:/language/Docs/Fields/list",
"text": "An ordered list of tiddler titles associated with a tiddler"
},
"$:/language/Docs/Fields/list-before": {
"title": "$:/language/Docs/Fields/list-before",
"text": "If set, the title of a tiddler before which this tiddler should be added to the ordered list of tiddler titles, or at the start of the list if this field is present but empty"
},
"$:/language/Docs/Fields/list-after": {
"title": "$:/language/Docs/Fields/list-after",
"text": "If set, the title of the tiddler after which this tiddler should be added to the ordered list of tiddler titles, or at the end of the list if this field is present but empty"
},
"$:/language/Docs/Fields/modified": {
"title": "$:/language/Docs/Fields/modified",
"text": "The date and time at which a tiddler was last modified"
},
"$:/language/Docs/Fields/modifier": {
"title": "$:/language/Docs/Fields/modifier",
"text": "The tiddler title associated with the person who last modified a tiddler"
},
"$:/language/Docs/Fields/name": {
"title": "$:/language/Docs/Fields/name",
"text": "The human readable name associated with a plugin tiddler"
},
"$:/language/Docs/Fields/plugin-priority": {
"title": "$:/language/Docs/Fields/plugin-priority",
"text": "A numerical value indicating the priority of a plugin tiddler"
},
"$:/language/Docs/Fields/plugin-type": {
"title": "$:/language/Docs/Fields/plugin-type",
"text": "The type of plugin in a plugin tiddler"
},
"$:/language/Docs/Fields/revision": {
"title": "$:/language/Docs/Fields/revision",
"text": "The revision of the tiddler held at the server"
},
"$:/language/Docs/Fields/released": {
"title": "$:/language/Docs/Fields/released",
"text": "Date of a TiddlyWiki release"
},
"$:/language/Docs/Fields/source": {
"title": "$:/language/Docs/Fields/source",
"text": "The source URL associated with a tiddler"
},
"$:/language/Docs/Fields/subtitle": {
"title": "$:/language/Docs/Fields/subtitle",
"text": "The subtitle text for a wizard"
},
"$:/language/Docs/Fields/tags": {
"title": "$:/language/Docs/Fields/tags",
"text": "A list of tags associated with a tiddler"
},
"$:/language/Docs/Fields/text": {
"title": "$:/language/Docs/Fields/text",
"text": "The body text of a tiddler"
},
"$:/language/Docs/Fields/throttle.refresh": {
"title": "$:/language/Docs/Fields/throttle.refresh",
"text": "If present, throttles refreshes of this tiddler"
},
"$:/language/Docs/Fields/title": {
"title": "$:/language/Docs/Fields/title",
"text": "The unique name of a tiddler"
},
"$:/language/Docs/Fields/toc-link": {
"title": "$:/language/Docs/Fields/toc-link",
"text": "Suppresses the tiddler's link in a Table of Contents tree if set to: ''no''"
},
"$:/language/Docs/Fields/type": {
"title": "$:/language/Docs/Fields/type",
"text": "The content type of a tiddler"
},
"$:/language/Docs/Fields/version": {
"title": "$:/language/Docs/Fields/version",
"text": "Version information for a plugin"
},
"$:/language/Docs/Fields/_is_skinny": {
"title": "$:/language/Docs/Fields/_is_skinny",
"text": "If present, indicates that the tiddler text field must be loaded from the server"
},
"$:/language/Filters/AllTiddlers": {
"title": "$:/language/Filters/AllTiddlers",
"text": "All tiddlers except system tiddlers"
},
"$:/language/Filters/RecentSystemTiddlers": {
"title": "$:/language/Filters/RecentSystemTiddlers",
"text": "Recently modified tiddlers, including system tiddlers"
},
"$:/language/Filters/RecentTiddlers": {
"title": "$:/language/Filters/RecentTiddlers",
"text": "Recently modified tiddlers"
},
"$:/language/Filters/AllTags": {
"title": "$:/language/Filters/AllTags",
"text": "All tags except system tags"
},
"$:/language/Filters/Missing": {
"title": "$:/language/Filters/Missing",
"text": "Missing tiddlers"
},
"$:/language/Filters/Drafts": {
"title": "$:/language/Filters/Drafts",
"text": "Draft tiddlers"
},
"$:/language/Filters/Orphans": {
"title": "$:/language/Filters/Orphans",
"text": "Orphan tiddlers"
},
"$:/language/Filters/SystemTiddlers": {
"title": "$:/language/Filters/SystemTiddlers",
"text": "System tiddlers"
},
"$:/language/Filters/ShadowTiddlers": {
"title": "$:/language/Filters/ShadowTiddlers",
"text": "Shadow tiddlers"
},
"$:/language/Filters/OverriddenShadowTiddlers": {
"title": "$:/language/Filters/OverriddenShadowTiddlers",
"text": "Overridden shadow tiddlers"
},
"$:/language/Filters/SessionTiddlers": {
"title": "$:/language/Filters/SessionTiddlers",
"text": "Tiddlers modified since the wiki was loaded"
},
"$:/language/Filters/SystemTags": {
"title": "$:/language/Filters/SystemTags",
"text": "System tags"
},
"$:/language/Filters/StoryList": {
"title": "$:/language/Filters/StoryList",
"text": "Tiddlers in the story river, excluding <$text text=\"$:/AdvancedSearch\"/>"
},
"$:/language/Filters/TypedTiddlers": {
"title": "$:/language/Filters/TypedTiddlers",
"text": "Non wiki-text tiddlers"
},
"GettingStarted": {
"title": "GettingStarted",
"text": "\\define lingo-base() $:/language/ControlPanel/Basics/\nWelcome to ~TiddlyWiki and the ~TiddlyWiki community\n\nBefore you start storing important information in ~TiddlyWiki it is vital to make sure that you can reliably save changes. See https://tiddlywiki.com/#GettingStarted for details\n\n!! Set up this ~TiddlyWiki\n\n<div class=\"tc-control-panel\">\n\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n</div>\n\nSee the [[control panel|$:/ControlPanel]] for more options.\n"
},
"$:/language/Help/build": {
"title": "$:/language/Help/build",
"description": "Automatically run configured commands",
"text": "Build the specified build targets for the current wiki. If no build targets are specified then all available targets will be built.\n\n```\n--build <target> [<target> ...]\n```\n\nBuild targets are defined in the `tiddlywiki.info` file of a wiki folder.\n\n"
},
"$:/language/Help/clearpassword": {
"title": "$:/language/Help/clearpassword",
"description": "Clear a password for subsequent crypto operations",
"text": "Clear the password for subsequent crypto operations\n\n```\n--clearpassword\n```\n"
},
"$:/language/Help/default": {
"title": "$:/language/Help/default",
"text": "\\define commandTitle()\n$:/language/Help/$(command)$\n\\end\n```\nusage: tiddlywiki [<wikifolder>] [--<command> [<args>...]...]\n```\n\nAvailable commands:\n\n<ul>\n<$list filter=\"[commands[]sort[title]]\" variable=\"command\">\n<li><$link to=<<commandTitle>>><$macrocall $name=\"command\" $type=\"text/plain\" $output=\"text/plain\"/></$link>: <$transclude tiddler=<<commandTitle>> field=\"description\"/></li>\n</$list>\n</ul>\n\nTo get detailed help on a command:\n\n```\ntiddlywiki --help <command>\n```\n"
},
"$:/language/Help/deletetiddlers": {
"title": "$:/language/Help/deletetiddlers",
"description": "Deletes a group of tiddlers",
"text": "<<.from-version \"5.1.20\">> Deletes a group of tiddlers identified by a filter.\n\n```\n--deletetiddlers <filter>\n```\n"
},
"$:/language/Help/editions": {
"title": "$:/language/Help/editions",
"description": "Lists the available editions of TiddlyWiki",
"text": "Lists the names and descriptions of the available editions. You can create a new wiki of a specified edition with the `--init` command.\n\n```\n--editions\n```\n"
},
"$:/language/Help/fetch": {
"title": "$:/language/Help/fetch",
"description": "Fetch tiddlers from wiki by URL",
"text": "Fetch one or more files over HTTP/HTTPS, and import the tiddlers matching a filter, optionally transforming the incoming titles.\n\n```\n--fetch file <url> <import-filter> <transform-filter>\n--fetch files <url-filter> <import-filter> <transform-filter>\n--fetch raw-file <url> <transform-filter>\n--fetch raw-files <url-filter> <transform-filter>\n```\n\nThe \"file\" and \"files\" variants fetch the specified files and attempt to import the tiddlers within them (the same processing as if the files were dragged into the browser window). The \"raw-file\" and \"raw-files\" variants fetch the specified files and then store the raw file data in tiddlers, without applying the import logic.\n\nWith the \"file\" and \"raw-file\" variants only a single file is fetched and the first parameter is the URL of the file to read.\n\nWith the \"files\" and \"raw-files\" variants, multiple files are fetched and the first parameter is a filter yielding a list of URLs of the files to read. For example, given a set of tiddlers tagged \"remote-server\" that have a field \"url\" the filter `[tag[remote-server]get[url]]` will retrieve all the available URLs.\n\nFor the \"file\" and \"files\" variants, the `<import-filter>` parameter specifies a filter determining which tiddlers are imported. It defaults to `[all[tiddlers]]` if not provided.\n\nFor all variants, the `<transform-filter>` parameter specifies an optional filter that transforms the titles of the imported tiddlers. For example, `[addprefix[$:/myimports/]]` would add the prefix `$:/myimports/` to each title.\n\nPreceding the `--fetch` command with `--verbose` will output progress information during the import.\n\nNote that TiddlyWiki will not fetch an older version of an already loaded plugin.\n\nThe following example retrieves all the non-system tiddlers from https://tiddlywiki.com and saves them to a JSON file:\n\n```\ntiddlywiki --verbose --fetch file \"https://tiddlywiki.com/\" \"[!is[system]]\" \"\" --rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[!is[system]]\"\n```\n\nThe following example retrieves the \"favicon\" file from tiddlywiki.com and saves it in a file called \"output.ico\". Note that the intermediate tiddler \"Icon Tiddler\" is quoted in the \"--fetch\" command because it is being used as a transformation filter to replace the default title, while there are no quotes for the \"--savetiddler\" command because it is being used directly as a title.\n\n```\ntiddlywiki --verbose --fetch raw-file \"https://tiddlywiki.com/favicon.ico\" \"[[Icon Tiddler]]\" --savetiddler \"Icon Tiddler\" output.ico\n```\n\n"
},
"$:/language/Help/help": {
"title": "$:/language/Help/help",
"description": "Display help for TiddlyWiki commands",
"text": "Displays help text for a command:\n\n```\n--help [<command>]\n```\n\nIf the command name is omitted then a list of available commands is displayed.\n"
},
"$:/language/Help/import": {
"title": "$:/language/Help/import",
"description": "Import tiddlers from a file",
"text": "Import tiddlers from TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` or other local files. The deserializer must be explicitly specified, unlike the `load` command which infers the deserializer from the file extension.\n\n```\n--import <filepath> <deserializer> [<title>] [<encoding>]\n```\n\nThe deserializers in the core include:\n\n* application/javascript\n* application/json\n* application/x-tiddler\n* application/x-tiddler-html-div\n* application/x-tiddlers\n* text/html\n* text/plain\n\nThe title of the imported tiddler defaults to the filename.\n\nThe encoding defaults to \"utf8\", but can be \"base64\" for importing binary files.\n\nNote that TiddlyWiki will not import an older version of an already loaded plugin.\n"
},
"$:/language/Help/init": {
"title": "$:/language/Help/init",
"description": "Initialise a new wiki folder",
"text": "Initialise an empty [[WikiFolder|WikiFolders]] with a copy of the specified edition.\n\n```\n--init <edition> [<edition> ...]\n```\n\nFor example:\n\n```\ntiddlywiki ./MyWikiFolder --init empty\n```\n\nNote:\n\n* The wiki folder directory will be created if necessary\n* The \"edition\" defaults to ''empty''\n* The init command will fail if the wiki folder is not empty\n* The init command removes any `includeWikis` definitions in the edition's `tiddlywiki.info` file\n* When multiple editions are specified, editions initialised later will overwrite any files shared with earlier editions (so, the final `tiddlywiki.info` file will be copied from the last edition)\n* `--editions` returns a list of available editions\n"
},
"$:/language/Help/listen": {
"title": "$:/language/Help/listen",
"description": "Provides an HTTP server interface to TiddlyWiki",
"text": "Serves a wiki over HTTP.\n\nThe listen command uses NamedCommandParameters:\n\n```\n--listen [<name>=<value>]...\n```\n\nAll parameters are optional with safe defaults, and can be specified in any order. The recognised parameters are:\n\n* ''host'' - optional hostname to serve from (defaults to \"127.0.0.1\" aka \"localhost\")\n* ''path-prefix'' - optional prefix for paths\n* ''port'' - port number on which to listen; non-numeric values are interpreted as a system environment variable from which the port number is extracted (defaults to \"8080\")\n* ''credentials'' - pathname of credentials CSV file (relative to wiki folder)\n* ''anon-username'' - the username for signing edits for anonymous users\n* ''username'' - optional username for basic authentication\n* ''password'' - optional password for basic authentication\n* ''authenticated-user-header'' - optional name of header to be used for trusted authentication\n* ''readers'' - comma separated list of principals allowed to read from this wiki\n* ''writers'' - comma separated list of principals allowed to write to this wiki\n* ''csrf-disable'' - set to \"yes\" to disable CSRF checks (defaults to \"no\")\n* ''root-tiddler'' - the tiddler to serve at the root (defaults to \"$:/core/save/all\")\n* ''root-render-type'' - the content type to which the root tiddler should be rendered (defaults to \"text/plain\")\n* ''root-serve-type'' - the content type with which the root tiddler should be served (defaults to \"text/html\")\n* ''tls-cert'' - pathname of TLS certificate file (relative to wiki folder)\n* ''tls-key'' - pathname of TLS key file (relative to wiki folder)\n* ''debug-level'' - optional debug level; set to \"debug\" to view request details (defaults to \"none\")\n* ''gzip'' - set to \"yes\" to enable gzip compression for some http endpoints (defaults to \"no\")\n\nFor information on opening up your instance to the entire local network, and possible security concerns, see the WebServer tiddler at TiddlyWiki.com.\n\n"
},
"$:/language/Help/load": {
"title": "$:/language/Help/load",
"description": "Load tiddlers from a file",
"text": "Load tiddlers from TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` or other local files. The processing applied to incoming files is determined by the file extension. Use the alternative `import` command if you need to specify the deserializer and encoding explicitly.\n\n```\n--load <filepath> [noerror]\n--load <dirpath> [noerror]\n```\n\nBy default, the load command raises an error if no tiddlers are found. The error can be suppressed by providing the optional \"noerror\" parameter.\n\nTo load tiddlers from an encrypted TiddlyWiki file you should first specify the password with the PasswordCommand. For example:\n\n```\ntiddlywiki ./MyWiki --password pa55w0rd --load my_encrypted_wiki.html\n```\n\nNote that TiddlyWiki will not load an older version of an already loaded plugin.\n"
},
"$:/language/Help/makelibrary": {
"title": "$:/language/Help/makelibrary",
"description": "Construct library plugin required by upgrade process",
"text": "Constructs the `$:/UpgradeLibrary` tiddler for the upgrade process.\n\nThe upgrade library is formatted as an ordinary plugin tiddler with the plugin type `library`. It contains a copy of each of the plugins, themes and language packs available within the TiddlyWiki5 repository.\n\nThis command is intended for internal use; it is only relevant to users constructing a custom upgrade procedure.\n\n```\n--makelibrary <title>\n```\n\nThe title argument defaults to `$:/UpgradeLibrary`.\n"
},
"$:/language/Help/notfound": {
"title": "$:/language/Help/notfound",
"text": "No such help item"
},
"$:/language/Help/output": {
"title": "$:/language/Help/output",
"description": "Set the base output directory for subsequent commands",
"text": "Sets the base output directory for subsequent commands. The default output directory is the `output` subdirectory of the edition directory.\n\n```\n--output <pathname>\n```\n\nIf the specified pathname is relative then it is resolved relative to the current working directory. For example `--output .` sets the output directory to the current working directory.\n\n"
},
"$:/language/Help/password": {
"title": "$:/language/Help/password",
"description": "Set a password for subsequent crypto operations",
"text": "Set a password for subsequent crypto operations\n\n```\n--password <password>\n```\n\n''Note'': This should not be used for serving TiddlyWiki with password protection. Instead, see the password option under the [[ServerCommand]].\n"
},
"$:/language/Help/render": {
"title": "$:/language/Help/render",
"description": "Renders individual tiddlers to files",
"text": "Render individual tiddlers identified by a filter and save the results to the specified files.\n\nOptionally, the title of a template tiddler can be specified. In this case, instead of directly rendering each tiddler, the template tiddler is rendered with the \"currentTiddler\" variable set to the title of the tiddler that is being rendered.\n\nA name and value for an additional variable may optionally also be specified.\n\n```\n--render <tiddler-filter> [<filename-filter>] [<render-type>] [<template>] [<name>] [<value>]\n```\n\n* ''tiddler-filter'': A filter identifying the tiddler(s) to be rendered\n* ''filename-filter'': Optional filter transforming tiddler titles into pathnames. If omitted, defaults to `[is[tiddler]addsuffix[.html]]`, which uses the unchanged tiddler title as the filename\n* ''render-type'': Optional render type: `text/html` (the default) returns the full HTML text and `text/plain` just returns the text content (ie it ignores HTML tags and other unprintable material)\n* ''template'': Optional template through which each tiddler is rendered\n* ''name'': Name of optional variable\n* ''value'': Value of optional variable\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nNotes:\n\n* The output directory is not cleared of any existing files\n* Any missing directories in the path to the filename are automatically created.\n* When referring to a tiddler with spaces in its title, take care to use both the quotes required by your shell and also TiddlyWiki's double square brackets : `--render \"[[Motovun Jack.jpg]]\"`\n* The filename filter is evaluated with the selected items being set to the title of the tiddler currently being rendered, allowing the title to be used as the basis for computing the filename. For example `[encodeuricomponent[]addprefix[static/]]` applies URI encoding to each title, and then adds the prefix `static/`\n* The `--render` command is a more flexible replacement for both the `--rendertiddler` and `--rendertiddlers` commands, which are deprecated\n\nExamples:\n\n* `--render \"[!is[system]]\" \"[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]\"` -- renders all non-system tiddlers as files in the subdirectory \"tiddlers\" with URL-encoded titles and the extension HTML\n\n"
},
"$:/language/Help/rendertiddler": {
"title": "$:/language/Help/rendertiddler",
"description": "Render an individual tiddler as a specified ContentType",
"text": "(Note: The `--rendertiddler` command is deprecated in favour of the new, more flexible `--render` command)\n\nRender an individual tiddler as a specified ContentType, defaulting to `text/html` and save it to the specified filename.\n\nOptionally the title of a template tiddler can be specified, in which case the template tiddler is rendered with the \"currentTiddler\" variable set to the tiddler that is being rendered (the first parameter value).\n\nA name and value for an additional variable may optionally also be specified.\n\n```\n--rendertiddler <title> <filename> [<type>] [<template>] [<name>] [<value>]\n```\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny missing directories in the path to the filename are automatically created.\n\nFor example, the following command saves all tiddlers matching the filter `[tag[done]]` to a JSON file titled `output.json` by employing the core template `$:/core/templates/exporters/JsonFile`.\n\n```\n--rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[tag[done]]\"\n```\n"
},
"$:/language/Help/rendertiddlers": {
"title": "$:/language/Help/rendertiddlers",
"description": "Render tiddlers matching a filter to a specified ContentType",
"text": "(Note: The `--rendertiddlers` command is deprecated in favour of the new, more flexible `--render` command)\n\nRender a set of tiddlers matching a filter to separate files of a specified ContentType (defaults to `text/html`) and extension (defaults to `.html`).\n\n```\n--rendertiddlers <filter> <template> <pathname> [<type>] [<extension>] [\"noclean\"]\n```\n\nFor example:\n\n```\n--rendertiddlers [!is[system]] $:/core/templates/static.tiddler.html ./static text/plain\n```\n\nBy default, the pathname is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny files in the target directory are deleted unless the ''noclean'' flag is specified. The target directory is recursively created if it is missing.\n"
},
"$:/language/Help/save": {
"title": "$:/language/Help/save",
"description": "Saves individual raw tiddlers to files",
"text": "Saves individual tiddlers identified by a filter in their raw text or binary format to the specified files.\n\n```\n--save <tiddler-filter> <filename-filter>\n```\n\n* ''tiddler-filter'': A filter identifying the tiddler(s) to be saved\n* ''filename-filter'': Optional filter transforming tiddler titles into pathnames. If omitted, defaults to `[is[tiddler]]`, which uses the unchanged tiddler title as the filename\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nNotes:\n\n* The output directory is not cleared of any existing files\n* Any missing directories in the path to the filename are automatically created.\n* When saving a tiddler with spaces in its title, take care to use both the quotes required by your shell and also TiddlyWiki's double square brackets : `--save \"[[Motovun Jack.jpg]]\"`\n* The filename filter is evaluated with the selected items being set to the title of the tiddler currently being saved, allowing the title to be used as the basis for computing the filename. For example `[encodeuricomponent[]addprefix[static/]]` applies URI encoding to each title, and then adds the prefix `static/`\n* The `--save` command is a more flexible replacement for both the `--savetiddler` and `--savetiddlers` commands, which are deprecated\n\nExamples:\n\n* `--save \"[!is[system]is[image]]\" \"[encodeuricomponent[]addprefix[tiddlers/]]\"` -- saves all non-system image tiddlers as files in the subdirectory \"tiddlers\" with URL-encoded titles\n"
},
"$:/language/Help/savetiddler": {
"title": "$:/language/Help/savetiddler",
"description": "Saves a raw tiddler to a file",
"text": "(Note: The `--savetiddler` command is deprecated in favour of the new, more flexible `--save` command)\n\nSaves an individual tiddler in its raw text or binary format to the specified filename.\n\n```\n--savetiddler <title> <filename>\n```\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny missing directories in the path to the filename are automatically created.\n"
},
"$:/language/Help/savetiddlers": {
"title": "$:/language/Help/savetiddlers",
"description": "Saves a group of raw tiddlers to a directory",
"text": "(Note: The `--savetiddlers` command is deprecated in favour of the new, more flexible `--save` command)\n\nSaves a group of tiddlers in their raw text or binary format to the specified directory.\n\n```\n--savetiddlers <filter> <pathname> [\"noclean\"]\n```\n\nBy default, the pathname is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nThe output directory is cleared of existing files before saving the specified files. The deletion can be disabled by specifying the ''noclean'' flag.\n\nAny missing directories in the pathname are automatically created.\n"
},
"$:/language/Help/savewikifolder": {
"title": "$:/language/Help/savewikifolder",
"description": "Saves a wiki to a new wiki folder",
"text": "<<.from-version \"5.1.20\">> Saves the current wiki as a wiki folder, including tiddlers, plugins and configuration:\n\n```\n--savewikifolder <wikifolderpath> [<filter>]\n```\n\n* The target wiki folder must be empty or non-existent\n* The filter specifies which tiddlers should be included. It is optional, defaulting to `[all[tiddlers]]`\n* Plugins from the official plugin library are replaced with references to those plugins in the `tiddlywiki.info` file\n* Custom plugins are unpacked into their own folder\n\nA common usage is to convert a TiddlyWiki HTML file into a wiki folder:\n\n```\ntiddlywiki --load ./mywiki.html --savewikifolder ./mywikifolder\n```\n"
},
"$:/language/Help/server": {
"title": "$:/language/Help/server",
"description": "Provides an HTTP server interface to TiddlyWiki (deprecated in favour of the new listen command)",
"text": "Legacy command to serve a wiki over HTTP.\n\n```\n--server <port> <root-tiddler> <root-render-type> <root-serve-type> <username> <password> <host> <path-prefix> <debug-level>\n```\n\nThe parameters are:\n\n* ''port'' - port number on which to listen; non-numeric values are interpreted as a system environment variable from which the port number is extracted (defaults to \"8080\")\n* ''root-tiddler'' - the tiddler to serve at the root (defaults to \"$:/core/save/all\")\n* ''root-render-type'' - the content type to which the root tiddler should be rendered (defaults to \"text/plain\")\n* ''root-serve-type'' - the content type with which the root tiddler should be served (defaults to \"text/html\")\n* ''username'' - the default username for signing edits\n* ''password'' - optional password for basic authentication\n* ''host'' - optional hostname to serve from (defaults to \"127.0.0.1\" aka \"localhost\")\n* ''path-prefix'' - optional prefix for paths\n* ''debug-level'' - optional debug level; set to \"debug\" to view request details (defaults to \"none\")\n\nIf the password parameter is specified then the browser will prompt the user for the username and password. Note that the password is transmitted in plain text so this implementation should only be used on a trusted network or over HTTPS.\n\nFor example:\n\n```\n--server 8080 $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n\nThe username and password can be specified as empty strings if you need to set the hostname or pathprefix and don't want to require a password.\n\n\n```\n--server 8080 $:/core/save/all text/plain text/html \"\" \"\" 192.168.0.245\n```\n\nUsing an address like this exposes your system to the local network. For information on opening up your instance to the entire local network, and possible security concerns, see the WebServer tiddler at TiddlyWiki.com.\n\nTo run multiple TiddlyWiki servers at the same time you'll need to put each one on a different port. It can be useful to use an environment variable to pass the port number to the Node.js process. This example references an environment variable called \"MY_PORT_NUMBER\":\n\n```\n--server MY_PORT_NUMBER $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n"
},
"$:/language/Help/setfield": {
"title": "$:/language/Help/setfield",
"description": "Prepares external tiddlers for use",
"text": "//Note that this command is experimental and may change or be replaced before being finalised//\n\nSets the specified field of a group of tiddlers to the result of wikifying a template tiddler with the `currentTiddler` variable set to the tiddler.\n\n```\n--setfield <filter> <fieldname> <templatetitle> <rendertype>\n```\n\nThe parameters are:\n\n* ''filter'' - filter identifying the tiddlers to be affected\n* ''fieldname'' - the field to modify (defaults to \"text\")\n* ''templatetitle'' - the tiddler to wikify into the specified field. If blank or missing then the specified field is deleted\n* ''rendertype'' - the text type to render (defaults to \"text/plain\"; \"text/html\" can be used to include HTML tags)\n"
},
"$:/language/Help/unpackplugin": {
"title": "$:/language/Help/unpackplugin",
"description": "Unpack the payload tiddlers from a plugin",
"text": "Extract the payload tiddlers from a plugin, creating them as ordinary tiddlers:\n\n```\n--unpackplugin <title>\n```\n"
},
"$:/language/Help/verbose": {
"title": "$:/language/Help/verbose",
"description": "Triggers verbose output mode",
"text": "Triggers verbose output, useful for debugging\n\n```\n--verbose\n```\n"
},
"$:/language/Help/version": {
"title": "$:/language/Help/version",
"description": "Displays the version number of TiddlyWiki",
"text": "Displays the version number of TiddlyWiki.\n\n```\n--version\n```\n"
},
"$:/language/Import/Imported/Hint": {
"title": "$:/language/Import/Imported/Hint",
"text": "The following tiddlers were imported:"
},
"$:/language/Import/Listing/Cancel/Caption": {
"title": "$:/language/Import/Listing/Cancel/Caption",
"text": "Cancel"
},
"$:/language/Import/Listing/Hint": {
"title": "$:/language/Import/Listing/Hint",
"text": "These tiddlers are ready to import:"
},
"$:/language/Import/Listing/Import/Caption": {
"title": "$:/language/Import/Listing/Import/Caption",
"text": "Import"
},
"$:/language/Import/Listing/Select/Caption": {
"title": "$:/language/Import/Listing/Select/Caption",
"text": "Select"
},
"$:/language/Import/Listing/Status/Caption": {
"title": "$:/language/Import/Listing/Status/Caption",
"text": "Status"
},
"$:/language/Import/Listing/Title/Caption": {
"title": "$:/language/Import/Listing/Title/Caption",
"text": "Title"
},
"$:/language/Import/Listing/Preview": {
"title": "$:/language/Import/Listing/Preview",
"text": "Preview:"
},
"$:/language/Import/Listing/Preview/Text": {
"title": "$:/language/Import/Listing/Preview/Text",
"text": "Text"
},
"$:/language/Import/Listing/Preview/TextRaw": {
"title": "$:/language/Import/Listing/Preview/TextRaw",
"text": "Text (Raw)"
},
"$:/language/Import/Listing/Preview/Fields": {
"title": "$:/language/Import/Listing/Preview/Fields",
"text": "Fields"
},
"$:/language/Import/Listing/Preview/Diff": {
"title": "$:/language/Import/Listing/Preview/Diff",
"text": "Diff"
},
"$:/language/Import/Listing/Preview/DiffFields": {
"title": "$:/language/Import/Listing/Preview/DiffFields",
"text": "Diff (Fields)"
},
"$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible": {
"title": "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible",
"text": "Blocked incompatible or obsolete plugin"
},
"$:/language/Import/Upgrader/Plugins/Suppressed/Version": {
"title": "$:/language/Import/Upgrader/Plugins/Suppressed/Version",
"text": "Blocked plugin (due to incoming <<incoming>> being older than existing <<existing>>)"
},
"$:/language/Import/Upgrader/Plugins/Upgraded": {
"title": "$:/language/Import/Upgrader/Plugins/Upgraded",
"text": "Upgraded plugin from <<incoming>> to <<upgraded>>"
},
"$:/language/Import/Upgrader/State/Suppressed": {
"title": "$:/language/Import/Upgrader/State/Suppressed",
"text": "Blocked temporary state tiddler"
},
"$:/language/Import/Upgrader/System/Suppressed": {
"title": "$:/language/Import/Upgrader/System/Suppressed",
"text": "Blocked system tiddler"
},
"$:/language/Import/Upgrader/System/Warning": {
"title": "$:/language/Import/Upgrader/System/Warning",
"text": "Core module tiddler"
},
"$:/language/Import/Upgrader/System/Alert": {
"title": "$:/language/Import/Upgrader/System/Alert",
"text": "You are about to import a tiddler that will overwrite a core module tiddler. This is not recommended as it may make the system unstable"
},
"$:/language/Import/Upgrader/ThemeTweaks/Created": {
"title": "$:/language/Import/Upgrader/ThemeTweaks/Created",
"text": "Migrated theme tweak from <$text text=<<from>>/>"
},
"$:/language/AboveStory/ClassicPlugin/Warning": {
"title": "$:/language/AboveStory/ClassicPlugin/Warning",
"text": "It looks like you are trying to load a plugin designed for ~TiddlyWiki Classic. Please note that [[these plugins do not work with TiddlyWiki version 5.x.x|https://tiddlywiki.com/#TiddlyWikiClassic]]. ~TiddlyWiki Classic plugins detected:"
},
"$:/language/BinaryWarning/Prompt": {
"title": "$:/language/BinaryWarning/Prompt",
"text": "This tiddler contains binary data"
},
"$:/language/ClassicWarning/Hint": {
"title": "$:/language/ClassicWarning/Hint",
"text": "This tiddler is written in TiddlyWiki Classic wiki text format, which is not fully compatible with TiddlyWiki version 5. See https://tiddlywiki.com/static/Upgrading.html for more details."
},
"$:/language/ClassicWarning/Upgrade/Caption": {
"title": "$:/language/ClassicWarning/Upgrade/Caption",
"text": "upgrade"
},
"$:/language/CloseAll/Button": {
"title": "$:/language/CloseAll/Button",
"text": "close all"
},
"$:/language/ColourPicker/Recent": {
"title": "$:/language/ColourPicker/Recent",
"text": "Recent:"
},
"$:/language/ConfirmCancelTiddler": {
"title": "$:/language/ConfirmCancelTiddler",
"text": "Do you wish to discard changes to the tiddler \"<$text text=<<title>>/>\"?"
},
"$:/language/ConfirmDeleteTiddler": {
"title": "$:/language/ConfirmDeleteTiddler",
"text": "Do you wish to delete the tiddler \"<$text text=<<title>>/>\"?"
},
"$:/language/ConfirmOverwriteTiddler": {
"title": "$:/language/ConfirmOverwriteTiddler",
"text": "Do you wish to overwrite the tiddler \"<$text text=<<title>>/>\"?"
},
"$:/language/ConfirmEditShadowTiddler": {
"title": "$:/language/ConfirmEditShadowTiddler",
"text": "You are about to edit a ShadowTiddler. Any changes will override the default system making future upgrades non-trivial. Are you sure you want to edit \"<$text text=<<title>>/>\"?"
},
"$:/language/Count": {
"title": "$:/language/Count",
"text": "count"
},
"$:/language/DefaultNewTiddlerTitle": {
"title": "$:/language/DefaultNewTiddlerTitle",
"text": "New Tiddler"
},
"$:/language/Diffs/CountMessage": {
"title": "$:/language/Diffs/CountMessage",
"text": "<<diff-count>> differences"
},
"$:/language/DropMessage": {
"title": "$:/language/DropMessage",
"text": "Drop here (or use the 'Escape' key to cancel)"
},
"$:/language/Encryption/Cancel": {
"title": "$:/language/Encryption/Cancel",
"text": "Cancel"
},
"$:/language/Encryption/ConfirmClearPassword": {
"title": "$:/language/Encryption/ConfirmClearPassword",
"text": "Do you wish to clear the password? This will remove the encryption applied when saving this wiki"
},
"$:/language/Encryption/PromptSetPassword": {
"title": "$:/language/Encryption/PromptSetPassword",
"text": "Set a new password for this TiddlyWiki"
},
"$:/language/Encryption/Username": {
"title": "$:/language/Encryption/Username",
"text": "Username"
},
"$:/language/Encryption/Password": {
"title": "$:/language/Encryption/Password",
"text": "Password"
},
"$:/language/Encryption/RepeatPassword": {
"title": "$:/language/Encryption/RepeatPassword",
"text": "Repeat password"
},
"$:/language/Encryption/PasswordNoMatch": {
"title": "$:/language/Encryption/PasswordNoMatch",
"text": "Passwords do not match"
},
"$:/language/Encryption/SetPassword": {
"title": "$:/language/Encryption/SetPassword",
"text": "Set password"
},
"$:/language/Error/Caption": {
"title": "$:/language/Error/Caption",
"text": "Error"
},
"$:/language/Error/EditConflict": {
"title": "$:/language/Error/EditConflict",
"text": "File changed on server"
},
"$:/language/Error/Filter": {
"title": "$:/language/Error/Filter",
"text": "Filter error"
},
"$:/language/Error/FilterSyntax": {
"title": "$:/language/Error/FilterSyntax",
"text": "Syntax error in filter expression"
},
"$:/language/Error/IsFilterOperator": {
"title": "$:/language/Error/IsFilterOperator",
"text": "Filter Error: Unknown operand for the 'is' filter operator"
},
"$:/language/Error/LoadingPluginLibrary": {
"title": "$:/language/Error/LoadingPluginLibrary",
"text": "Error loading plugin library"
},
"$:/language/Error/NetworkErrorAlert": {
"title": "$:/language/Error/NetworkErrorAlert",
"text": "`<h2>''Network Error''</h2>It looks like the connection to the server has been lost. This may indicate a problem with your network connection. Please attempt to restore network connectivity before continuing.<br><br>''Any unsaved changes will be automatically synchronised when connectivity is restored''.`"
},
"$:/language/Error/RecursiveTransclusion": {
"title": "$:/language/Error/RecursiveTransclusion",
"text": "Recursive transclusion error in transclude widget"
},
"$:/language/Error/RetrievingSkinny": {
"title": "$:/language/Error/RetrievingSkinny",
"text": "Error retrieving skinny tiddler list"
},
"$:/language/Error/SavingToTWEdit": {
"title": "$:/language/Error/SavingToTWEdit",
"text": "Error saving to TWEdit"
},
"$:/language/Error/WhileSaving": {
"title": "$:/language/Error/WhileSaving",
"text": "Error while saving"
},
"$:/language/Error/XMLHttpRequest": {
"title": "$:/language/Error/XMLHttpRequest",
"text": "XMLHttpRequest error code"
},
"$:/language/InternalJavaScriptError/Title": {
"title": "$:/language/InternalJavaScriptError/Title",
"text": "Internal JavaScript Error"
},
"$:/language/InternalJavaScriptError/Hint": {
"title": "$:/language/InternalJavaScriptError/Hint",
"text": "Well, this is embarrassing. It is recommended that you restart TiddlyWiki by refreshing your browser"
},
"$:/language/InvalidFieldName": {
"title": "$:/language/InvalidFieldName",
"text": "Illegal characters in field name \"<$text text=<<fieldName>>/>\". Fields can only contain lowercase letters, digits and the characters underscore (`_`), hyphen (`-`) and period (`.`)"
},
"$:/language/LazyLoadingWarning": {
"title": "$:/language/LazyLoadingWarning",
"text": "<p>Trying to load external content from ''<$text text={{!!_canonical_uri}}/>''</p><p>If this message doesn't disappear, either the tiddler content type doesn't match the type of the external content, or you may be using a browser that doesn't support external content for wikis loaded as standalone files. See https://tiddlywiki.com/#ExternalText</p>"
},
"$:/language/LoginToTiddlySpace": {
"title": "$:/language/LoginToTiddlySpace",
"text": "Login to TiddlySpace"
},
"$:/language/Manager/Controls/FilterByTag/None": {
"title": "$:/language/Manager/Controls/FilterByTag/None",
"text": "(none)"
},
"$:/language/Manager/Controls/FilterByTag/Prompt": {
"title": "$:/language/Manager/Controls/FilterByTag/Prompt",
"text": "Filter by tag:"
},
"$:/language/Manager/Controls/Order/Prompt": {
"title": "$:/language/Manager/Controls/Order/Prompt",
"text": "Reverse order"
},
"$:/language/Manager/Controls/Search/Placeholder": {
"title": "$:/language/Manager/Controls/Search/Placeholder",
"text": "Search"
},
"$:/language/Manager/Controls/Search/Prompt": {
"title": "$:/language/Manager/Controls/Search/Prompt",
"text": "Search:"
},
"$:/language/Manager/Controls/Show/Option/Tags": {
"title": "$:/language/Manager/Controls/Show/Option/Tags",
"text": "tags"
},
"$:/language/Manager/Controls/Show/Option/Tiddlers": {
"title": "$:/language/Manager/Controls/Show/Option/Tiddlers",
"text": "tiddlers"
},
"$:/language/Manager/Controls/Show/Prompt": {
"title": "$:/language/Manager/Controls/Show/Prompt",
"text": "Show:"
},
"$:/language/Manager/Controls/Sort/Prompt": {
"title": "$:/language/Manager/Controls/Sort/Prompt",
"text": "Sort by:"
},
"$:/language/Manager/Item/Colour": {
"title": "$:/language/Manager/Item/Colour",
"text": "Colour"
},
"$:/language/Manager/Item/Fields": {
"title": "$:/language/Manager/Item/Fields",
"text": "Fields"
},
"$:/language/Manager/Item/Icon/None": {
"title": "$:/language/Manager/Item/Icon/None",
"text": "(none)"
},
"$:/language/Manager/Item/Icon": {
"title": "$:/language/Manager/Item/Icon",
"text": "Icon"
},
"$:/language/Manager/Item/RawText": {
"title": "$:/language/Manager/Item/RawText",
"text": "Raw text"
},
"$:/language/Manager/Item/Tags": {
"title": "$:/language/Manager/Item/Tags",
"text": "Tags"
},
"$:/language/Manager/Item/Tools": {
"title": "$:/language/Manager/Item/Tools",
"text": "Tools"
},
"$:/language/Manager/Item/WikifiedText": {
"title": "$:/language/Manager/Item/WikifiedText",
"text": "Wikified text"
},
"$:/language/MissingTiddler/Hint": {
"title": "$:/language/MissingTiddler/Hint",
"text": "Missing tiddler \"<$text text=<<currentTiddler>>/>\" -- click {{||$:/core/ui/Buttons/edit}} to create"
},
"$:/language/No": {
"title": "$:/language/No",
"text": "No"
},
"$:/language/OfficialPluginLibrary": {
"title": "$:/language/OfficialPluginLibrary",
"text": "Official ~TiddlyWiki Plugin Library"
},
"$:/language/OfficialPluginLibrary/Hint": {
"title": "$:/language/OfficialPluginLibrary/Hint",
"text": "The official ~TiddlyWiki plugin library at tiddlywiki.com. Plugins, themes and language packs are maintained by the core team."
},
"$:/language/PluginReloadWarning": {
"title": "$:/language/PluginReloadWarning",
"text": "Please save {{$:/core/ui/Buttons/save-wiki}} and reload {{$:/core/ui/Buttons/refresh}} to allow changes to ~JavaScript plugins to take effect"
},
"$:/language/RecentChanges/DateFormat": {
"title": "$:/language/RecentChanges/DateFormat",
"text": "DDth MMM YYYY"
},
"$:/language/SystemTiddler/Tooltip": {
"title": "$:/language/SystemTiddler/Tooltip",
"text": "This is a system tiddler"
},
"$:/language/SystemTiddlers/Include/Prompt": {
"title": "$:/language/SystemTiddlers/Include/Prompt",
"text": "Include system tiddlers"
},
"$:/language/TagManager/Colour/Heading": {
"title": "$:/language/TagManager/Colour/Heading",
"text": "Colour"
},
"$:/language/TagManager/Count/Heading": {
"title": "$:/language/TagManager/Count/Heading",
"text": "Count"
},
"$:/language/TagManager/Icon/Heading": {
"title": "$:/language/TagManager/Icon/Heading",
"text": "Icon"
},
"$:/language/TagManager/Icons/None": {
"title": "$:/language/TagManager/Icons/None",
"text": "None"
},
"$:/language/TagManager/Info/Heading": {
"title": "$:/language/TagManager/Info/Heading",
"text": "Info"
},
"$:/language/TagManager/Tag/Heading": {
"title": "$:/language/TagManager/Tag/Heading",
"text": "Tag"
},
"$:/language/Tiddler/DateFormat": {
"title": "$:/language/Tiddler/DateFormat",
"text": "DDth MMM YYYY at hh12:0mmam"
},
"$:/language/UnsavedChangesWarning": {
"title": "$:/language/UnsavedChangesWarning",
"text": "You have unsaved changes in TiddlyWiki"
},
"$:/language/Yes": {
"title": "$:/language/Yes",
"text": "Yes"
},
"$:/language/Modals/Download": {
"title": "$:/language/Modals/Download",
"subtitle": "Download changes",
"footer": "<$button message=\"tm-close-tiddler\">Close</$button>",
"help": "https://tiddlywiki.com/static/DownloadingChanges.html",
"text": "Your browser only supports manual saving.\n\nTo save your modified wiki, right click on the download link below and select \"Download file\" or \"Save file\", and then choose the folder and filename.\n\n//You can marginally speed things up by clicking the link with the control key (Windows) or the options/alt key (Mac OS X). You will not be prompted for the folder or filename, but your browser is likely to give it an unrecognisable name -- you may need to rename the file to include an `.html` extension before you can do anything useful with it.//\n\nOn smartphones that do not allow files to be downloaded you can instead bookmark the link, and then sync your bookmarks to a desktop computer from where the wiki can be saved normally.\n"
},
"$:/language/Modals/SaveInstructions": {
"title": "$:/language/Modals/SaveInstructions",
"subtitle": "Save your work",
"footer": "<$button message=\"tm-close-tiddler\">Close</$button>",
"help": "https://tiddlywiki.com/static/SavingChanges.html",
"text": "Your changes to this wiki need to be saved as a ~TiddlyWiki HTML file.\n\n!!! Desktop browsers\n\n# Select ''Save As'' from the ''File'' menu\n# Choose a filename and location\n#* Some browsers also require you to explicitly specify the file saving format as ''Webpage, HTML only'' or similar\n# Close this tab\n\n!!! Smartphone browsers\n\n# Create a bookmark to this page\n#* If you've got iCloud or Google Sync set up then the bookmark will automatically sync to your desktop where you can open it and save it as above\n# Close this tab\n\n//If you open the bookmark again in Mobile Safari you will see this message again. If you want to go ahead and use the file, just click the ''close'' button below//\n"
},
"$:/config/NewJournal/Title": {
"title": "$:/config/NewJournal/Title",
"text": "DDth MMM YYYY"
},
"$:/config/NewJournal/Text": {
"title": "$:/config/NewJournal/Text",
"text": ""
},
"$:/config/NewJournal/Tags": {
"title": "$:/config/NewJournal/Tags",
"tags": "Journal"
},
"$:/language/Notifications/Save/Done": {
"title": "$:/language/Notifications/Save/Done",
"text": "Saved wiki"
},
"$:/language/Notifications/Save/Starting": {
"title": "$:/language/Notifications/Save/Starting",
"text": "Starting to save wiki"
},
"$:/language/Notifications/CopiedToClipboard/Succeeded": {
"title": "$:/language/Notifications/CopiedToClipboard/Succeeded",
"text": "Copied to clipboard!"
},
"$:/language/Notifications/CopiedToClipboard/Failed": {
"title": "$:/language/Notifications/CopiedToClipboard/Failed",
"text": "Failed to copy to clipboard!"
},
"$:/language/Search/DefaultResults/Caption": {
"title": "$:/language/Search/DefaultResults/Caption",
"text": "List"
},
"$:/language/Search/Filter/Caption": {
"title": "$:/language/Search/Filter/Caption",
"text": "Filter"
},
"$:/language/Search/Filter/Hint": {
"title": "$:/language/Search/Filter/Hint",
"text": "Search via a [[filter expression|https://tiddlywiki.com/static/Filters.html]]"
},
"$:/language/Search/Filter/Matches": {
"title": "$:/language/Search/Filter/Matches",
"text": "//<small><<resultCount>> matches</small>//"
},
"$:/language/Search/Matches": {
"title": "$:/language/Search/Matches",
"text": "//<small><<resultCount>> matches</small>//"
},
"$:/language/Search/Matches/All": {
"title": "$:/language/Search/Matches/All",
"text": "All matches:"
},
"$:/language/Search/Matches/Title": {
"title": "$:/language/Search/Matches/Title",
"text": "Title matches:"
},
"$:/language/Search/Search": {
"title": "$:/language/Search/Search",
"text": "Search"
},
"$:/language/Search/Search/TooShort": {
"title": "$:/language/Search/Search/TooShort",
"text": "Search text too short"
},
"$:/language/Search/Shadows/Caption": {
"title": "$:/language/Search/Shadows/Caption",
"text": "Shadows"
},
"$:/language/Search/Shadows/Hint": {
"title": "$:/language/Search/Shadows/Hint",
"text": "Search for shadow tiddlers"
},
"$:/language/Search/Shadows/Matches": {
"title": "$:/language/Search/Shadows/Matches",
"text": "//<small><<resultCount>> matches</small>//"
},
"$:/language/Search/Standard/Caption": {
"title": "$:/language/Search/Standard/Caption",
"text": "Standard"
},
"$:/language/Search/Standard/Hint": {
"title": "$:/language/Search/Standard/Hint",
"text": "Search for standard tiddlers"
},
"$:/language/Search/Standard/Matches": {
"title": "$:/language/Search/Standard/Matches",
"text": "//<small><<resultCount>> matches</small>//"
},
"$:/language/Search/System/Caption": {
"title": "$:/language/Search/System/Caption",
"text": "System"
},
"$:/language/Search/System/Hint": {
"title": "$:/language/Search/System/Hint",
"text": "Search for system tiddlers"
},
"$:/language/Search/System/Matches": {
"title": "$:/language/Search/System/Matches",
"text": "//<small><<resultCount>> matches</small>//"
},
"$:/language/SideBar/All/Caption": {
"title": "$:/language/SideBar/All/Caption",
"text": "All"
},
"$:/language/SideBar/Contents/Caption": {
"title": "$:/language/SideBar/Contents/Caption",
"text": "Contents"
},
"$:/language/SideBar/Drafts/Caption": {
"title": "$:/language/SideBar/Drafts/Caption",
"text": "Drafts"
},
"$:/language/SideBar/Explorer/Caption": {
"title": "$:/language/SideBar/Explorer/Caption",
"text": "Explorer"
},
"$:/language/SideBar/Missing/Caption": {
"title": "$:/language/SideBar/Missing/Caption",
"text": "Missing"
},
"$:/language/SideBar/More/Caption": {
"title": "$:/language/SideBar/More/Caption",
"text": "More"
},
"$:/language/SideBar/Open/Caption": {
"title": "$:/language/SideBar/Open/Caption",
"text": "Open"
},
"$:/language/SideBar/Orphans/Caption": {
"title": "$:/language/SideBar/Orphans/Caption",
"text": "Orphans"
},
"$:/language/SideBar/Recent/Caption": {
"title": "$:/language/SideBar/Recent/Caption",
"text": "Recent"
},
"$:/language/SideBar/Shadows/Caption": {
"title": "$:/language/SideBar/Shadows/Caption",
"text": "Shadows"
},
"$:/language/SideBar/System/Caption": {
"title": "$:/language/SideBar/System/Caption",
"text": "System"
},
"$:/language/SideBar/Tags/Caption": {
"title": "$:/language/SideBar/Tags/Caption",
"text": "Tags"
},
"$:/language/SideBar/Tags/Untagged/Caption": {
"title": "$:/language/SideBar/Tags/Untagged/Caption",
"text": "untagged"
},
"$:/language/SideBar/Tools/Caption": {
"title": "$:/language/SideBar/Tools/Caption",
"text": "Tools"
},
"$:/language/SideBar/Types/Caption": {
"title": "$:/language/SideBar/Types/Caption",
"text": "Types"
},
"$:/SiteSubtitle": {
"title": "$:/SiteSubtitle",
"text": "a non-linear personal web notebook"
},
"$:/SiteTitle": {
"title": "$:/SiteTitle",
"text": "My ~TiddlyWiki"
},
"$:/language/Snippets/ListByTag": {
"title": "$:/language/Snippets/ListByTag",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "List of tiddlers by tag",
"text": "<<list-links \"[tag[task]sort[title]]\">>\n"
},
"$:/language/Snippets/MacroDefinition": {
"title": "$:/language/Snippets/MacroDefinition",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Macro definition",
"text": "\\define macroName(param1:\"default value\",param2)\nText of the macro\n\\end\n"
},
"$:/language/Snippets/Table4x3": {
"title": "$:/language/Snippets/Table4x3",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Table with 4 columns by 3 rows",
"text": "|! |!Alpha |!Beta |!Gamma |!Delta |\n|!One | | | | |\n|!Two | | | | |\n|!Three | | | | |\n"
},
"$:/language/Snippets/TableOfContents": {
"title": "$:/language/Snippets/TableOfContents",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Table of Contents",
"text": "<div class=\"tc-table-of-contents\">\n\n<<toc-selective-expandable 'TableOfContents'>>\n\n</div>"
},
"$:/language/ThemeTweaks/ThemeTweaks": {
"title": "$:/language/ThemeTweaks/ThemeTweaks",
"text": "Theme Tweaks"
},
"$:/language/ThemeTweaks/ThemeTweaks/Hint": {
"title": "$:/language/ThemeTweaks/ThemeTweaks/Hint",
"text": "You can tweak certain aspects of the ''Vanilla'' theme."
},
"$:/language/ThemeTweaks/Options": {
"title": "$:/language/ThemeTweaks/Options",
"text": "Options"
},
"$:/language/ThemeTweaks/Options/SidebarLayout": {
"title": "$:/language/ThemeTweaks/Options/SidebarLayout",
"text": "Sidebar layout"
},
"$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid": {
"title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid",
"text": "Fixed story, fluid sidebar"
},
"$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed": {
"title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed",
"text": "Fluid story, fixed sidebar"
},
"$:/language/ThemeTweaks/Options/StickyTitles": {
"title": "$:/language/ThemeTweaks/Options/StickyTitles",
"text": "Sticky titles"
},
"$:/language/ThemeTweaks/Options/StickyTitles/Hint": {
"title": "$:/language/ThemeTweaks/Options/StickyTitles/Hint",
"text": "Causes tiddler titles to \"stick\" to the top of the browser window"
},
"$:/language/ThemeTweaks/Options/CodeWrapping": {
"title": "$:/language/ThemeTweaks/Options/CodeWrapping",
"text": "Wrap long lines in code blocks"
},
"$:/language/ThemeTweaks/Settings": {
"title": "$:/language/ThemeTweaks/Settings",
"text": "Settings"
},
"$:/language/ThemeTweaks/Settings/FontFamily": {
"title": "$:/language/ThemeTweaks/Settings/FontFamily",
"text": "Font family"
},
"$:/language/ThemeTweaks/Settings/CodeFontFamily": {
"title": "$:/language/ThemeTweaks/Settings/CodeFontFamily",
"text": "Code font family"
},
"$:/language/ThemeTweaks/Settings/EditorFontFamily": {
"title": "$:/language/ThemeTweaks/Settings/EditorFontFamily",
"text": "Editor font family"
},
"$:/language/ThemeTweaks/Settings/BackgroundImage": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImage",
"text": "Page background image"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageAttachment": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment",
"text": "Page background image attachment"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll",
"text": "Scroll with tiddlers"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed",
"text": "Fixed to window"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize",
"text": "Page background image size"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto",
"text": "Auto"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover",
"text": "Cover"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain",
"text": "Contain"
},
"$:/language/ThemeTweaks/Metrics": {
"title": "$:/language/ThemeTweaks/Metrics",
"text": "Sizes"
},
"$:/language/ThemeTweaks/Metrics/FontSize": {
"title": "$:/language/ThemeTweaks/Metrics/FontSize",
"text": "Font size"
},
"$:/language/ThemeTweaks/Metrics/LineHeight": {
"title": "$:/language/ThemeTweaks/Metrics/LineHeight",
"text": "Line height"
},
"$:/language/ThemeTweaks/Metrics/BodyFontSize": {
"title": "$:/language/ThemeTweaks/Metrics/BodyFontSize",
"text": "Font size for tiddler body"
},
"$:/language/ThemeTweaks/Metrics/BodyLineHeight": {
"title": "$:/language/ThemeTweaks/Metrics/BodyLineHeight",
"text": "Line height for tiddler body"
},
"$:/language/ThemeTweaks/Metrics/StoryLeft": {
"title": "$:/language/ThemeTweaks/Metrics/StoryLeft",
"text": "Story left position"
},
"$:/language/ThemeTweaks/Metrics/StoryLeft/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint",
"text": "how far the left margin of the story river<br>(tiddler area) is from the left of the page"
},
"$:/language/ThemeTweaks/Metrics/StoryTop": {
"title": "$:/language/ThemeTweaks/Metrics/StoryTop",
"text": "Story top position"
},
"$:/language/ThemeTweaks/Metrics/StoryTop/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryTop/Hint",
"text": "how far the top margin of the story river<br>is from the top of the page"
},
"$:/language/ThemeTweaks/Metrics/StoryRight": {
"title": "$:/language/ThemeTweaks/Metrics/StoryRight",
"text": "Story right"
},
"$:/language/ThemeTweaks/Metrics/StoryRight/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryRight/Hint",
"text": "how far the left margin of the sidebar <br>is from the left of the page"
},
"$:/language/ThemeTweaks/Metrics/StoryWidth": {
"title": "$:/language/ThemeTweaks/Metrics/StoryWidth",
"text": "Story width"
},
"$:/language/ThemeTweaks/Metrics/StoryWidth/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint",
"text": "the overall width of the story river"
},
"$:/language/ThemeTweaks/Metrics/TiddlerWidth": {
"title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth",
"text": "Tiddler width"
},
"$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint",
"text": "within the story river"
},
"$:/language/ThemeTweaks/Metrics/SidebarBreakpoint": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint",
"text": "Sidebar breakpoint"
},
"$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint",
"text": "the minimum page width at which the story<br>river and sidebar will appear side by side"
},
"$:/language/ThemeTweaks/Metrics/SidebarWidth": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarWidth",
"text": "Sidebar width"
},
"$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint",
"text": "the width of the sidebar in fluid-fixed layout"
},
"$:/language/TiddlerInfo/Advanced/Caption": {
"title": "$:/language/TiddlerInfo/Advanced/Caption",
"text": "Advanced"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint",
"text": "none"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Heading": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading",
"text": "Plugin Details"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint",
"text": "This plugin contains the following shadow tiddlers:"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading",
"text": "Shadow Status"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint",
"text": "The tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> is not a shadow tiddler"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint",
"text": "The tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> is a shadow tiddler"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source",
"text": "It is defined in the plugin <$link to=<<pluginTiddler>>><$text text=<<pluginTiddler>>/></$link>"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint",
"text": "It is overridden by an ordinary tiddler"
},
"$:/language/TiddlerInfo/Fields/Caption": {
"title": "$:/language/TiddlerInfo/Fields/Caption",
"text": "Fields"
},
"$:/language/TiddlerInfo/List/Caption": {
"title": "$:/language/TiddlerInfo/List/Caption",
"text": "List"
},
"$:/language/TiddlerInfo/List/Empty": {
"title": "$:/language/TiddlerInfo/List/Empty",
"text": "This tiddler does not have a list"
},
"$:/language/TiddlerInfo/Listed/Caption": {
"title": "$:/language/TiddlerInfo/Listed/Caption",
"text": "Listed"
},
"$:/language/TiddlerInfo/Listed/Empty": {
"title": "$:/language/TiddlerInfo/Listed/Empty",
"text": "This tiddler is not listed by any others"
},
"$:/language/TiddlerInfo/References/Caption": {
"title": "$:/language/TiddlerInfo/References/Caption",
"text": "References"
},
"$:/language/TiddlerInfo/References/Empty": {
"title": "$:/language/TiddlerInfo/References/Empty",
"text": "No tiddlers link to this one"
},
"$:/language/TiddlerInfo/Tagging/Caption": {
"title": "$:/language/TiddlerInfo/Tagging/Caption",
"text": "Tagging"
},
"$:/language/TiddlerInfo/Tagging/Empty": {
"title": "$:/language/TiddlerInfo/Tagging/Empty",
"text": "No tiddlers are tagged with this one"
},
"$:/language/TiddlerInfo/Tools/Caption": {
"title": "$:/language/TiddlerInfo/Tools/Caption",
"text": "Tools"
},
"$:/language/Docs/Types/application/javascript": {
"title": "$:/language/Docs/Types/application/javascript",
"description": "JavaScript code",
"name": "application/javascript",
"group": "Developer",
"group-sort": "2"
},
"$:/language/Docs/Types/application/json": {
"title": "$:/language/Docs/Types/application/json",
"description": "JSON data",
"name": "application/json",
"group": "Developer",
"group-sort": "2"
},
"$:/language/Docs/Types/application/x-tiddler-dictionary": {
"title": "$:/language/Docs/Types/application/x-tiddler-dictionary",
"description": "Data dictionary",
"name": "application/x-tiddler-dictionary",
"group": "Developer",
"group-sort": "2"
},
"$:/language/Docs/Types/image/gif": {
"title": "$:/language/Docs/Types/image/gif",
"description": "GIF image",
"name": "image/gif",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/image/jpeg": {
"title": "$:/language/Docs/Types/image/jpeg",
"description": "JPEG image",
"name": "image/jpeg",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/image/png": {
"title": "$:/language/Docs/Types/image/png",
"description": "PNG image",
"name": "image/png",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/image/svg+xml": {
"title": "$:/language/Docs/Types/image/svg+xml",
"description": "Structured Vector Graphics image",
"name": "image/svg+xml",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/image/x-icon": {
"title": "$:/language/Docs/Types/image/x-icon",
"description": "ICO format icon file",
"name": "image/x-icon",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/text/css": {
"title": "$:/language/Docs/Types/text/css",
"description": "Static stylesheet",
"name": "text/css",
"group": "Developer",
"group-sort": "2"
},
"$:/language/Docs/Types/text/html": {
"title": "$:/language/Docs/Types/text/html",
"description": "HTML markup",
"name": "text/html",
"group": "Text",
"group-sort": "0"
},
"$:/language/Docs/Types/text/plain": {
"title": "$:/language/Docs/Types/text/plain",
"description": "Plain text",
"name": "text/plain",
"group": "Text",
"group-sort": "0"
},
"$:/language/Docs/Types/text/vnd.tiddlywiki": {
"title": "$:/language/Docs/Types/text/vnd.tiddlywiki",
"description": "TiddlyWiki 5",
"name": "text/vnd.tiddlywiki",
"group": "Text",
"group-sort": "0"
},
"$:/language/Docs/Types/text/x-tiddlywiki": {
"title": "$:/language/Docs/Types/text/x-tiddlywiki",
"description": "TiddlyWiki Classic",
"name": "text/x-tiddlywiki",
"group": "Text",
"group-sort": "0"
},
"$:/languages/en-GB/icon": {
"title": "$:/languages/en-GB/icon",
"type": "image/svg+xml",
"text": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 60 30\" width=\"1200\" height=\"600\">\n<clipPath id=\"t\">\n\t<path d=\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\"/>\n</clipPath>\n<path d=\"M0,0 v30 h60 v-30 z\" fill=\"#00247d\"/>\n<path d=\"M0,0 L60,30 M60,0 L0,30\" stroke=\"#fff\" stroke-width=\"6\"/>\n<path d=\"M0,0 L60,30 M60,0 L0,30\" clip-path=\"url(#t)\" stroke=\"#cf142b\" stroke-width=\"4\"/>\n<path d=\"M30,0 v30 M0,15 h60\" stroke=\"#fff\" stroke-width=\"10\"/>\n<path d=\"M30,0 v30 M0,15 h60\" stroke=\"#cf142b\" stroke-width=\"6\"/>\n</svg>\n"
},
"$:/languages/en-GB": {
"title": "$:/languages/en-GB",
"name": "en-GB",
"description": "English (British)",
"author": "JeremyRuston",
"core-version": ">=5.0.0\"",
"text": "Stub pseudo-plugin for the default language"
},
"$:/core/modules/commander.js": {
"title": "$:/core/modules/commander.js",
"text": "/*\\\ntitle: $:/core/modules/commander.js\ntype: application/javascript\nmodule-type: global\n\nThe $tw.Commander class is a command interpreter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParse a sequence of commands\n\tcommandTokens: an array of command string tokens\n\twiki: reference to the wiki store object\n\tstreams: {output:, error:}, each of which has a write(string) method\n\tcallback: a callback invoked as callback(err) where err is null if there was no error\n*/\nvar Commander = function(commandTokens,callback,wiki,streams) {\n\tvar path = require(\"path\");\n\tthis.commandTokens = commandTokens;\n\tthis.nextToken = 0;\n\tthis.callback = callback;\n\tthis.wiki = wiki;\n\tthis.streams = streams;\n\tthis.outputPath = path.resolve($tw.boot.wikiPath,$tw.config.wikiOutputSubDir);\n};\n\n/*\nLog a string if verbose flag is set\n*/\nCommander.prototype.log = function(str) {\n\tif(this.verbose) {\n\t\tthis.streams.output.write(str + \"\\n\");\n\t}\n};\n\n/*\nWrite a string if verbose flag is set\n*/\nCommander.prototype.write = function(str) {\n\tif(this.verbose) {\n\t\tthis.streams.output.write(str);\n\t}\n};\n\n/*\nAdd a string of tokens to the command queue\n*/\nCommander.prototype.addCommandTokens = function(commandTokens) {\n\tvar params = commandTokens.slice(0);\n\tparams.unshift(0);\n\tparams.unshift(this.nextToken);\n\tArray.prototype.splice.apply(this.commandTokens,params);\n};\n\n/*\nExecute the sequence of commands and invoke a callback on completion\n*/\nCommander.prototype.execute = function() {\n\tthis.executeNextCommand();\n};\n\n/*\nExecute the next command in the sequence\n*/\nCommander.prototype.executeNextCommand = function() {\n\tvar self = this;\n\t// Invoke the callback if there are no more commands\n\tif(this.nextToken >= this.commandTokens.length) {\n\t\tthis.callback(null);\n\t} else {\n\t\t// Get and check the command token\n\t\tvar commandName = this.commandTokens[this.nextToken++];\n\t\tif(commandName.substr(0,2) !== \"--\") {\n\t\t\tthis.callback(\"Missing command: \" + commandName);\n\t\t} else {\n\t\t\tcommandName = commandName.substr(2); // Trim off the --\n\t\t\t// Accumulate the parameters to the command\n\t\t\tvar params = [];\n\t\t\twhile(this.nextToken < this.commandTokens.length && \n\t\t\t\tthis.commandTokens[this.nextToken].substr(0,2) !== \"--\") {\n\t\t\t\tparams.push(this.commandTokens[this.nextToken++]);\n\t\t\t}\n\t\t\t// Get the command info\n\t\t\tvar command = $tw.commands[commandName],\n\t\t\t\tc,err;\n\t\t\tif(!command) {\n\t\t\t\tthis.callback(\"Unknown command: \" + commandName);\n\t\t\t} else {\n\t\t\t\tif(this.verbose) {\n\t\t\t\t\tthis.streams.output.write(\"Executing command: \" + commandName + \" \" + params.join(\" \") + \"\\n\");\n\t\t\t\t}\n\t\t\t\t// Parse named parameters if required\n\t\t\t\tif(command.info.namedParameterMode) {\n\t\t\t\t\tparams = this.extractNamedParameters(params,command.info.mandatoryParameters);\n\t\t\t\t\tif(typeof params === \"string\") {\n\t\t\t\t\t\treturn this.callback(params);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif(command.info.synchronous) {\n\t\t\t\t\t// Synchronous command\n\t\t\t\t\tc = new command.Command(params,this);\n\t\t\t\t\terr = c.execute();\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\tthis.callback(err);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.executeNextCommand();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Asynchronous command\n\t\t\t\t\tc = new command.Command(params,this,function(err) {\n\t\t\t\t\t\tif(err) {\n\t\t\t\t\t\t\tself.callback(err);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tself.executeNextCommand();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\terr = c.execute();\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\tthis.callback(err);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\n/*\nGiven an array of parameter strings `params` in name:value format, and an array of mandatory parameter names in `mandatoryParameters`, returns a hashmap of values or a string if error\n*/\nCommander.prototype.extractNamedParameters = function(params,mandatoryParameters) {\n\tmandatoryParameters = mandatoryParameters || [];\n\tvar errors = [],\n\t\tparamsByName = Object.create(null);\n\t// Extract the parameters\n\t$tw.utils.each(params,function(param) {\n\t\tvar index = param.indexOf(\"=\");\n\t\tif(index < 1) {\n\t\t\terrors.push(\"malformed named parameter: '\" + param + \"'\");\n\t\t}\n\t\tparamsByName[param.slice(0,index)] = $tw.utils.trim(param.slice(index+1));\n\t});\n\t// Check the mandatory parameters are present\n\t$tw.utils.each(mandatoryParameters,function(mandatoryParameter) {\n\t\tif(!$tw.utils.hop(paramsByName,mandatoryParameter)) {\n\t\t\terrors.push(\"missing mandatory parameter: '\" + mandatoryParameter + \"'\");\n\t\t}\n\t});\n\t// Return any errors\n\tif(errors.length > 0) {\n\t\treturn errors.join(\" and\\n\");\n\t} else {\n\t\treturn paramsByName;\t\t\n\t}\n};\n\nCommander.initCommands = function(moduleType) {\n\tmoduleType = moduleType || \"command\";\n\t$tw.commands = {};\n\t$tw.modules.forEachModuleOfType(moduleType,function(title,module) {\n\t\tvar c = $tw.commands[module.info.name] = {};\n\t\t// Add the methods defined by the module\n\t\tfor(var f in module) {\n\t\t\tif($tw.utils.hop(module,f)) {\n\t\t\t\tc[f] = module[f];\n\t\t\t}\n\t\t}\n\t});\n};\n\nexports.Commander = Commander;\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/commands/build.js": {
"title": "$:/core/modules/commands/build.js",
"text": "/*\\\ntitle: $:/core/modules/commands/build.js\ntype: application/javascript\nmodule-type: command\n\nCommand to build a build target\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"build\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\t// Get the build targets defined in the wiki\n\tvar buildTargets = $tw.boot.wikiInfo.build;\n\tif(!buildTargets) {\n\t\treturn \"No build targets defined\";\n\t}\n\t// Loop through each of the specified targets\n\tvar targets;\n\tif(this.params.length > 0) {\n\t\ttargets = this.params;\n\t} else {\n\t\ttargets = Object.keys(buildTargets);\n\t}\n\tfor(var targetIndex=0; targetIndex<targets.length; targetIndex++) {\n\t\tvar target = targets[targetIndex],\n\t\t\tcommands = buildTargets[target];\n\t\tif(!commands) {\n\t\t\treturn \"Build target '\" + target + \"' not found\";\n\t\t}\n\t\t// Add the commands to the queue\n\t\tthis.commander.addCommandTokens(commands);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/clearpassword.js": {
"title": "$:/core/modules/commands/clearpassword.js",
"text": "/*\\\ntitle: $:/core/modules/commands/clearpassword.js\ntype: application/javascript\nmodule-type: command\n\nClear password for crypto operations\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"clearpassword\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\t$tw.crypto.setPassword(null);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/deletetiddlers.js": {
"title": "$:/core/modules/commands/deletetiddlers.js",
"text": "/*\\\ntitle: $:/core/modules/commands/deletetiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to delete tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"deletetiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filter\";\n\t}\n\tvar self = this,\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\twiki.deleteTiddler(title);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/editions.js": {
"title": "$:/core/modules/commands/editions.js",
"text": "/*\\\ntitle: $:/core/modules/commands/editions.js\ntype: application/javascript\nmodule-type: command\n\nCommand to list the available editions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"editions\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this;\n\t// Output the list\n\tthis.commander.streams.output.write(\"Available editions:\\n\\n\");\n\tvar editionInfo = $tw.utils.getEditionInfo();\n\t$tw.utils.each(editionInfo,function(info,name) {\n\t\tself.commander.streams.output.write(\" \" + name + \": \" + info.description + \"\\n\");\n\t});\n\tthis.commander.streams.output.write(\"\\n\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/fetch.js": {
"title": "$:/core/modules/commands/fetch.js",
"text": "/*\\\ntitle: $:/core/modules/commands/fetch.js\ntype: application/javascript\nmodule-type: command\n\nCommands to fetch external tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"fetch\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing subcommand and url\";\n\t}\n\tswitch(this.params[0]) {\n\t\tcase \"raw-file\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\traw: true,\n\t\t\t\turl: this.params[1],\n\t\t\t\ttransformFilter: this.params[2] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"file\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\turl: this.params[1],\n\t\t\t\timportFilter: this.params[2],\n\t\t\t\ttransformFilter: this.params[3] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"raw-files\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\traw: true,\n\t\t\t\turlFilter: this.params[1],\n\t\t\t\ttransformFilter: this.params[2] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"files\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\turlFilter: this.params[1],\n\t\t\t\timportFilter: this.params[2],\n\t\t\t\ttransformFilter: this.params[3] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t}\n\treturn null;\n};\n\nCommand.prototype.fetchFiles = function(options) {\n\tvar self = this;\n\t// Get the list of URLs\n\tvar urls;\n\tif(options.url) {\n\t\turls = [options.url]\n\t} else if(options.urlFilter) {\n\t\turls = $tw.wiki.filterTiddlers(options.urlFilter);\n\t} else {\n\t\treturn \"Missing URL\";\n\t}\n\t// Process each URL in turn\n\tvar next = 0;\n\tvar getNextFile = function(err) {\n\t\tif(err) {\n\t\t\treturn options.callback(err);\n\t\t}\n\t\tif(next < urls.length) {\n\t\t\tself.fetchFile(urls[next++],options,getNextFile);\n\t\t} else {\n\t\t\toptions.callback(null);\n\t\t}\n\t};\n\tgetNextFile(null);\n\t// Success\n\treturn null;\n};\n\nCommand.prototype.fetchFile = function(url,options,callback,redirectCount) {\n\tif(redirectCount > 10) {\n\t\treturn callback(\"Error too many redirects retrieving \" + url);\n\t}\n\tvar self = this,\n\t\tlib = url.substr(0,8) === \"https://\" ? require(\"https\") : require(\"http\");\n\tlib.get(url).on(\"response\",function(response) {\n\t var type = (response.headers[\"content-type\"] || \"\").split(\";\")[0],\n\t \tdata = [];\n\t self.commander.write(\"Reading \" + url + \": \");\n\t response.on(\"data\",function(chunk) {\n\t data.push(chunk);\n\t self.commander.write(\".\");\n\t });\n\t response.on(\"end\",function() {\n\t self.commander.write(\"\\n\");\n\t if(response.statusCode === 200) {\n\t\t self.processBody(Buffer.concat(data),type,options,url);\n\t\t callback(null);\n\t } else {\n\t \tif(response.statusCode === 302 || response.statusCode === 303 || response.statusCode === 307) {\n\t \t\treturn self.fetchFile(response.headers.location,options,callback,redirectCount + 1);\n\t \t} else {\n\t\t \treturn callback(\"Error \" + response.statusCode + \" retrieving \" + url)\t \t\t\n\t \t}\n\t }\n\t \t});\n\t \tresponse.on(\"error\",function(e) {\n\t\t\tconsole.log(\"Error on GET request: \" + e);\n\t\t\tcallback(e);\n\t \t});\n\t});\n\treturn null;\n};\n\nCommand.prototype.processBody = function(body,type,options,url) {\n\tvar self = this;\n\t// Collect the tiddlers in a wiki\n\tvar incomingWiki = new $tw.Wiki();\n\tif(options.raw) {\n\t\tvar typeInfo = type ? $tw.config.contentTypeInfo[type] : null,\n\t\t\tencoding = typeInfo ? typeInfo.encoding : \"utf8\";\n\t\tincomingWiki.addTiddler(new $tw.Tiddler({\n\t\t\ttitle: url,\n\t\t\ttype: type,\n\t\t\ttext: body.toString(encoding)\n\t\t}));\n\t} else {\n\t\t// Deserialise the file to extract the tiddlers\n\t\tvar tiddlers = this.commander.wiki.deserializeTiddlers(type || \"text/html\",body.toString(\"utf8\"),{});\n\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\tincomingWiki.addTiddler(new $tw.Tiddler(tiddler));\n\t\t});\n\t}\n\t// Filter the tiddlers to select the ones we want\n\tvar filteredTitles = incomingWiki.filterTiddlers(options.importFilter || \"[all[tiddlers]]\");\n\t// Import the selected tiddlers\n\tvar count = 0;\n\tincomingWiki.each(function(tiddler,title) {\n\t\tif(filteredTitles.indexOf(title) !== -1) {\n\t\t\tvar newTiddler;\n\t\t\tif(options.transformFilter) {\n\t\t\t\tvar transformedTitle = (incomingWiki.filterTiddlers(options.transformFilter,null,self.commander.wiki.makeTiddlerIterator([title])) || [\"\"])[0];\n\t\t\t\tif(transformedTitle) {\n\t\t\t\t\tself.commander.log(\"Importing \" + title + \" as \" + transformedTitle)\n\t\t\t\t\tnewTiddler = new $tw.Tiddler(tiddler,{title: transformedTitle});\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tself.commander.log(\"Importing \" + title)\n\t\t\t\tnewTiddler = tiddler;\n\t\t\t}\n\t\t\tself.commander.wiki.importTiddler(newTiddler);\n\t\t\tcount++;\n\t\t}\n\t});\n\tself.commander.log(\"Imported \" + count + \" tiddlers\")\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/help.js": {
"title": "$:/core/modules/commands/help.js",
"text": "/*\\\ntitle: $:/core/modules/commands/help.js\ntype: application/javascript\nmodule-type: command\n\nHelp command\n\n\\*/\n(function(){\n\n/*jshint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"help\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar subhelp = this.params[0] || \"default\",\n\t\thelpBase = \"$:/language/Help/\",\n\t\ttext;\n\tif(!this.commander.wiki.getTiddler(helpBase + subhelp)) {\n\t\tsubhelp = \"notfound\";\n\t}\n\t// Wikify the help as formatted text (ie block elements generate newlines)\n\ttext = this.commander.wiki.renderTiddler(\"text/plain-formatted\",helpBase + subhelp);\n\t// Remove any leading linebreaks\n\ttext = text.replace(/^(\\r?\\n)*/g,\"\");\n\tthis.commander.streams.output.write(text);\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/import.js": {
"title": "$:/core/modules/commands/import.js",
"text": "/*\\\ntitle: $:/core/modules/commands/import.js\ntype: application/javascript\nmodule-type: command\n\nCommand to import tiddlers from a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"import\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 2) {\n\t\treturn \"Missing parameters\";\n\t}\n\tvar filename = self.params[0],\n\t\tdeserializer = self.params[1],\n\t\ttitle = self.params[2] || filename,\n\t\tencoding = self.params[3] || \"utf8\",\n\t\ttext = fs.readFileSync(filename,encoding),\n\t\ttiddlers = this.commander.wiki.deserializeTiddlers(null,text,{title: title},{deserializer: deserializer});\n\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\tself.commander.wiki.importTiddler(new $tw.Tiddler(tiddler));\n\t});\n\tthis.commander.log(tiddlers.length + \" tiddler(s) imported\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/init.js": {
"title": "$:/core/modules/commands/init.js",
"text": "/*\\\ntitle: $:/core/modules/commands/init.js\ntype: application/javascript\nmodule-type: command\n\nCommand to initialise an empty wiki folder\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"init\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar fs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\t// Check that we don't already have a valid wiki folder\n\tif($tw.boot.wikiTiddlersPath || ($tw.utils.isDirectory($tw.boot.wikiPath) && !$tw.utils.isDirectoryEmpty($tw.boot.wikiPath))) {\n\t\treturn \"Wiki folder is not empty\";\n\t}\n\t// Loop through each of the specified editions\n\tvar editions = this.params.length > 0 ? this.params : [\"empty\"];\n\tfor(var editionIndex=0; editionIndex<editions.length; editionIndex++) {\n\t\tvar editionName = editions[editionIndex];\n\t\t// Check the edition exists\n\t\tvar editionPath = $tw.findLibraryItem(editionName,$tw.getLibraryItemSearchPaths($tw.config.editionsPath,$tw.config.editionsEnvVar));\n\t\tif(!$tw.utils.isDirectory(editionPath)) {\n\t\t\treturn \"Edition '\" + editionName + \"' not found\";\n\t\t}\n\t\t// Copy the edition content\n\t\tvar err = $tw.utils.copyDirectory(editionPath,$tw.boot.wikiPath);\n\t\tif(!err) {\n\t\t\tthis.commander.streams.output.write(\"Copied edition '\" + editionName + \"' to \" + $tw.boot.wikiPath + \"\\n\");\n\t\t} else {\n\t\t\treturn err;\n\t\t}\n\t}\n\t// Tweak the tiddlywiki.info to remove any included wikis\n\tvar packagePath = $tw.boot.wikiPath + \"/tiddlywiki.info\",\n\t\tpackageJson = JSON.parse(fs.readFileSync(packagePath));\n\tdelete packageJson.includeWikis;\n\tfs.writeFileSync(packagePath,JSON.stringify(packageJson,null,$tw.config.preferences.jsonSpaces));\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/listen.js": {
"title": "$:/core/modules/commands/listen.js",
"text": "/*\\\ntitle: $:/core/modules/commands/listen.js\ntype: application/javascript\nmodule-type: command\n\nListen for HTTP requests and serve tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Server = require(\"$:/core/modules/server/server.js\").Server;\n\nexports.info = {\n\tname: \"listen\",\n\tsynchronous: true,\n\tnamedParameterMode: true,\n\tmandatoryParameters: [],\n};\n\nvar Command = function(params,commander,callback) {\n\tvar self = this;\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this;\n\tif(!$tw.boot.wikiTiddlersPath) {\n\t\t$tw.utils.warning(\"Warning: Wiki folder '\" + $tw.boot.wikiPath + \"' does not exist or is missing a tiddlywiki.info file\");\n\t}\n\t// Set up server\n\tthis.server = new Server({\n\t\twiki: this.commander.wiki,\n\t\tvariables: self.params\n\t});\n\tvar nodeServer = this.server.listen();\n\t$tw.hooks.invokeHook(\"th-server-command-post-start\",this.server,nodeServer,\"tiddlywiki\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/load.js": {
"title": "$:/core/modules/commands/load.js",
"text": "/*\\\ntitle: $:/core/modules/commands/load.js\ntype: application/javascript\nmodule-type: command\n\nCommand to load tiddlers from a file or directory\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"load\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar tiddlers = $tw.loadTiddlersFromPath(self.params[0]),\n\t\tcount = 0;\n\t$tw.utils.each(tiddlers,function(tiddlerInfo) {\n\t\t$tw.utils.each(tiddlerInfo.tiddlers,function(tiddler) {\n\t\t\tself.commander.wiki.importTiddler(new $tw.Tiddler(tiddler));\n\t\t\tcount++;\n\t\t});\n\t});\n\tif(!count && self.params[1] !== \"noerror\") {\n\t\tself.callback(\"No tiddlers found in file \\\"\" + self.params[0] + \"\\\"\");\n\t} else {\n\t\tself.callback(null);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/makelibrary.js": {
"title": "$:/core/modules/commands/makelibrary.js",
"text": "/*\\\ntitle: $:/core/modules/commands/makelibrary.js\ntype: application/javascript\nmodule-type: command\n\nCommand to pack all of the plugins in the library into a plugin tiddler of type \"library\"\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"makelibrary\",\n\tsynchronous: true\n};\n\nvar UPGRADE_LIBRARY_TITLE = \"$:/UpgradeLibrary\";\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar wiki = this.commander.wiki,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\tupgradeLibraryTitle = this.params[0] || UPGRADE_LIBRARY_TITLE,\n\t\ttiddlers = {};\n\t// Collect up the library plugins\n\tvar collectPlugins = function(folder) {\n\t\t\tvar pluginFolders = fs.readdirSync(folder);\n\t\t\tfor(var p=0; p<pluginFolders.length; p++) {\n\t\t\t\tif(!$tw.boot.excludeRegExp.test(pluginFolders[p])) {\n\t\t\t\t\tpluginFields = $tw.loadPluginFolder(path.resolve(folder,\"./\" + pluginFolders[p]));\n\t\t\t\t\tif(pluginFields && pluginFields.title) {\n\t\t\t\t\t\ttiddlers[pluginFields.title] = pluginFields;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tcollectPublisherPlugins = function(folder) {\n\t\t\tvar publisherFolders = fs.readdirSync(folder);\n\t\t\tfor(var t=0; t<publisherFolders.length; t++) {\n\t\t\t\tif(!$tw.boot.excludeRegExp.test(publisherFolders[t])) {\n\t\t\t\t\tcollectPlugins(path.resolve(folder,\"./\" + publisherFolders[t]));\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.pluginsPath,$tw.config.pluginsEnvVar),collectPublisherPlugins);\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.themesPath,$tw.config.themesEnvVar),collectPublisherPlugins);\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.languagesPath,$tw.config.languagesEnvVar),collectPlugins);\n\t// Save the upgrade library tiddler\n\tvar pluginFields = {\n\t\ttitle: upgradeLibraryTitle,\n\t\ttype: \"application/json\",\n\t\t\"plugin-type\": \"library\",\n\t\t\"text\": JSON.stringify({tiddlers: tiddlers})\n\t};\n\twiki.addTiddler(new $tw.Tiddler(pluginFields));\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/output.js": {
"title": "$:/core/modules/commands/output.js",
"text": "/*\\\ntitle: $:/core/modules/commands/output.js\ntype: application/javascript\nmodule-type: command\n\nCommand to set the default output location (defaults to current working directory)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"output\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar fs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 1) {\n\t\treturn \"Missing output path\";\n\t}\n\tthis.commander.outputPath = path.resolve(process.cwd(),this.params[0]);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/password.js": {
"title": "$:/core/modules/commands/password.js",
"text": "/*\\\ntitle: $:/core/modules/commands/password.js\ntype: application/javascript\nmodule-type: command\n\nSave password for crypto operations\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"password\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing password\";\n\t}\n\t$tw.crypto.setPassword(this.params[0]);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/render.js": {
"title": "$:/core/modules/commands/render.js",
"text": "/*\\\ntitle: $:/core/modules/commands/render.js\ntype: application/javascript\nmodule-type: command\n\nRender individual tiddlers and save the results to the specified files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"render\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing tiddler filter\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\ttiddlerFilter = this.params[0],\n\t\tfilenameFilter = this.params[1] || \"[is[tiddler]addsuffix[.html]]\",\n\t\ttype = this.params[2] || \"text/html\",\n\t\ttemplate = this.params[3],\n\t\tvarName = this.params[4],\n\t\tvarValue = this.params[5],\n\t\ttiddlers = wiki.filterTiddlers(tiddlerFilter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(template || title),\n\t\t\tvariables = {currentTiddler: title};\n\t\tif(varName) {\n\t\t\tvariables[varName] = varValue || \"\";\n\t\t}\n\t\tvar widgetNode = wiki.makeWidget(parser,{variables: variables}),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\tvar text = type === \"text/html\" ? container.innerHTML : container.textContent,\n\t\t\tfilepath = path.resolve(self.commander.outputPath,wiki.filterTiddlers(filenameFilter,$tw.rootWidget,wiki.makeTiddlerIterator([title]))[0]);\n\t\tif(self.commander.verbose) {\n\t\t\tconsole.log(\"Rendering \\\"\" + title + \"\\\" to \\\"\" + filepath + \"\\\"\");\n\t\t}\n\t\t$tw.utils.createFileDirectories(filepath);\n\t\tfs.writeFileSync(filepath,text,\"utf8\");\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/rendertiddler.js": {
"title": "$:/core/modules/commands/rendertiddler.js",
"text": "/*\\\ntitle: $:/core/modules/commands/rendertiddler.js\ntype: application/javascript\nmodule-type: command\n\nCommand to render a tiddler and save it to a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"rendertiddler\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\ttitle = this.params[0],\n\t\tfilename = path.resolve(this.commander.outputPath,this.params[1]),\n\t\ttype = this.params[2] || \"text/html\",\n\t\ttemplate = this.params[3],\n\t\tname = this.params[4],\n\t\tvalue = this.params[5],\n\t\tvariables = {};\n\t$tw.utils.createFileDirectories(filename);\n\tif(template) {\n\t\tvariables.currentTiddler = title;\n\t\ttitle = template;\n\t}\n\tif(name && value) {\n\t\tvariables[name] = value;\n\t}\n\tfs.writeFile(filename,this.commander.wiki.renderTiddler(type,title,{variables: variables}),\"utf8\",function(err) {\n\t\tself.callback(err);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/rendertiddlers.js": {
"title": "$:/core/modules/commands/rendertiddlers.js",
"text": "/*\\\ntitle: $:/core/modules/commands/rendertiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to render several tiddlers to a folder of files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"rendertiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\ttemplate = this.params[1],\n\t\toutputPath = this.commander.outputPath,\n\t\tpathname = path.resolve(outputPath,this.params[2]),\t\t\n\t\ttype = this.params[3] || \"text/html\",\n\t\textension = this.params[4] || \".html\",\n\t\tdeleteDirectory = (this.params[5] || \"\").toLowerCase() !== \"noclean\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\tif(deleteDirectory) {\n\t\t$tw.utils.deleteDirectory(pathname);\n\t}\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(template),\n\t\t\twidgetNode = wiki.makeWidget(parser,{variables: {currentTiddler: title}}),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\tvar text = type === \"text/html\" ? container.innerHTML : container.textContent,\n\t\t\texportPath = null;\n\t\tif($tw.utils.hop($tw.macros,\"tv-get-export-path\")) {\n\t\t\tvar macroPath = $tw.macros[\"tv-get-export-path\"].run.apply(self,[title]);\n\t\t\tif(macroPath) {\n\t\t\t\texportPath = path.resolve(outputPath,macroPath + extension);\n\t\t\t}\n\t\t}\n\t\tvar finalPath = exportPath || path.resolve(pathname,encodeURIComponent(title) + extension);\n\t\t$tw.utils.createFileDirectories(finalPath);\n\t\tfs.writeFileSync(finalPath,text,\"utf8\");\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/save.js": {
"title": "$:/core/modules/commands/save.js",
"text": "/*\\\ntitle: $:/core/modules/commands/save.js\ntype: application/javascript\nmodule-type: command\n\nSaves individual tiddlers in their raw text or binary format to the specified files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"save\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename filter\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\ttiddlerFilter = this.params[0],\n\t\tfilenameFilter = this.params[1] || \"[is[tiddler]]\",\n\t\ttiddlers = wiki.filterTiddlers(tiddlerFilter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.commander.wiki.getTiddler(title),\n\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"},\n\t\t\tfilepath = path.resolve(self.commander.outputPath,wiki.filterTiddlers(filenameFilter,$tw.rootWidget,wiki.makeTiddlerIterator([title]))[0]);\n\t\tif(self.commander.verbose) {\n\t\t\tconsole.log(\"Saving \\\"\" + title + \"\\\" to \\\"\" + filepath + \"\\\"\");\n\t\t}\n\t\t$tw.utils.createFileDirectories(filepath);\n\t\tfs.writeFileSync(filepath,tiddler.fields.text,contentTypeInfo.encoding);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/savelibrarytiddlers.js": {
"title": "$:/core/modules/commands/savelibrarytiddlers.js",
"text": "/*\\\ntitle: $:/core/modules/commands/savelibrarytiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the subtiddlers of a bundle tiddler as a series of JSON files\n\n--savelibrarytiddlers <tiddler> <pathname> <skinnylisting>\n\nThe tiddler identifies the bundle tiddler that contains the subtiddlers.\n\nThe pathname specifies the pathname to the folder in which the JSON files should be saved. The filename is the URL encoded title of the subtiddler.\n\nThe skinnylisting specifies the title of the tiddler to which a JSON catalogue of the subtiddlers will be saved. The JSON file contains the same data as the bundle tiddler but with the `text` field removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savelibrarytiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\tcontainerTitle = this.params[0],\n\t\tfilter = this.params[1],\n\t\tbasepath = this.params[2],\n\t\tskinnyListTitle = this.params[3];\n\t// Get the container tiddler as data\n\tvar containerData = self.commander.wiki.getTiddlerDataCached(containerTitle,undefined);\n\tif(!containerData) {\n\t\treturn \"'\" + containerTitle + \"' is not a tiddler bundle\";\n\t}\n\t// Filter the list of plugins\n\tvar pluginList = [];\n\t$tw.utils.each(containerData.tiddlers,function(tiddler,title) {\n\t\tpluginList.push(title);\n\t});\n\tvar filteredPluginList;\n\tif(filter) {\n\t\tfilteredPluginList = self.commander.wiki.filterTiddlers(filter,null,self.commander.wiki.makeTiddlerIterator(pluginList));\n\t} else {\n\t\tfilteredPluginList = pluginList;\n\t}\n\t// Iterate through the plugins\n\tvar skinnyList = [];\n\t$tw.utils.each(filteredPluginList,function(title) {\n\t\tvar tiddler = containerData.tiddlers[title];\n\t\t// Save each JSON file and collect the skinny data\n\t\tvar pathname = path.resolve(self.commander.outputPath,basepath + encodeURIComponent(title) + \".json\");\n\t\t$tw.utils.createFileDirectories(pathname);\n\t\tfs.writeFileSync(pathname,JSON.stringify(tiddler),\"utf8\");\n\t\t// Collect the skinny list data\n\t\tvar pluginTiddlers = JSON.parse(tiddler.text),\n\t\t\treadmeContent = (pluginTiddlers.tiddlers[title + \"/readme\"] || {}).text,\n\t\t\tdoesRequireReload = !!$tw.wiki.doesPluginInfoRequireReload(pluginTiddlers),\n\t\t\ticonTiddler = pluginTiddlers.tiddlers[title + \"/icon\"] || {},\n\t\t\ticonType = iconTiddler.type,\n\t\t\ticonText = iconTiddler.text,\n\t\t\ticonContent;\n\t\tif(iconType && iconText) {\n\t\t\ticonContent = $tw.utils.makeDataUri(iconText,iconType);\n\t\t}\n\t\tskinnyList.push($tw.utils.extend({},tiddler,{\n\t\t\ttext: undefined,\n\t\t\treadme: readmeContent,\n\t\t\t\"requires-reload\": doesRequireReload ? \"yes\" : \"no\",\n\t\t\ticon: iconContent\n\t\t}));\n\t});\n\t// Save the catalogue tiddler\n\tif(skinnyListTitle) {\n\t\tself.commander.wiki.setTiddlerData(skinnyListTitle,skinnyList);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/savetiddler.js": {
"title": "$:/core/modules/commands/savetiddler.js",
"text": "/*\\\ntitle: $:/core/modules/commands/savetiddler.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the content of a tiddler to a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savetiddler\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\ttitle = this.params[0],\n\t\tfilename = path.resolve(this.commander.outputPath,this.params[1]),\n\t\ttiddler = this.commander.wiki.getTiddler(title);\n\tif(tiddler) {\n\t\tvar type = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"};\n\t\t$tw.utils.createFileDirectories(filename);\n\t\tfs.writeFile(filename,tiddler.fields.text,contentTypeInfo.encoding,function(err) {\n\t\t\tself.callback(err);\n\t\t});\n\t} else {\n\t\treturn \"Missing tiddler: \" + title;\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/savetiddlers.js": {
"title": "$:/core/modules/commands/savetiddlers.js",
"text": "/*\\\ntitle: $:/core/modules/commands/savetiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save several tiddlers to a folder of files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"savetiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\tpathname = path.resolve(this.commander.outputPath,this.params[1]),\n\t\tdeleteDirectory = (this.params[2] || \"\").toLowerCase() !== \"noclean\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\tif(deleteDirectory) {\n\t\t$tw.utils.deleteDirectory(pathname);\n\t}\n\t$tw.utils.createDirectory(pathname);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.commander.wiki.getTiddler(title),\n\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"},\n\t\t\tfilename = path.resolve(pathname,encodeURIComponent(title));\n\t\tfs.writeFileSync(filename,tiddler.fields.text,contentTypeInfo.encoding);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/savewikifolder.js": {
"title": "$:/core/modules/commands/savewikifolder.js",
"text": "/*\\\ntitle: $:/core/modules/commands/savewikifolder.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the current wiki as a wiki folder\n\n--savewikifolder <wikifolderpath> [<filter>]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savewikifolder\",\n\tsynchronous: true\n};\n\nvar fs,path;\nif($tw.node) {\n\tfs = require(\"fs\");\n\tpath = require(\"path\");\n}\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing wiki folder path\";\n\t}\n\tvar wikifoldermaker = new WikiFolderMaker(this.params[0],this.params[1],this.commander);\n\treturn wikifoldermaker.save();\n};\n\nfunction WikiFolderMaker(wikiFolderPath,wikiFilter,commander) {\n\tthis.wikiFolderPath = wikiFolderPath;\n\tthis.wikiFilter = wikiFilter || \"[all[tiddlers]]\";\n\tthis.commander = commander;\n\tthis.wiki = commander.wiki;\n\tthis.savedPaths = []; // So that we can detect filename clashes\n}\n\nWikiFolderMaker.prototype.log = function(str) {\n\tif(this.commander.verbose) {\n\t\tconsole.log(str);\n\t}\n};\n\nWikiFolderMaker.prototype.tiddlersToIgnore = [\n\t\"$:/boot/boot.css\",\n\t\"$:/boot/boot.js\",\n\t\"$:/boot/bootprefix.js\",\n\t\"$:/core\",\n\t\"$:/library/sjcl.js\",\n\t\"$:/temp/info-plugin\"\n];\n\n/*\nReturns null if successful, or an error string if there was an error\n*/\nWikiFolderMaker.prototype.save = function() {\n\tvar self = this;\n\t// Check that the output directory doesn't exist\n\tif(fs.existsSync(this.wikiFolderPath) && !$tw.utils.isDirectoryEmpty(this.wikiFolderPath)) {\n\t\treturn \"The unpackwiki command requires that the output wiki folder be empty\";\n\t}\n\t// Get the tiddlers from the source wiki\n\tvar tiddlerTitles = this.wiki.filterTiddlers(this.wikiFilter);\n\t// Initialise a new tiddlwiki.info file\n\tvar newWikiInfo = {};\n\t// Process each incoming tiddler in turn\n\t$tw.utils.each(tiddlerTitles,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tif(self.tiddlersToIgnore.indexOf(title) !== -1) {\n\t\t\t\t// Ignore the core plugin and the ephemeral info plugin\n\t\t\t\tself.log(\"Ignoring tiddler: \" + title);\n\t\t\t} else {\n\t\t\t\tvar type = tiddler.fields.type,\n\t\t\t\t\tpluginType = tiddler.fields[\"plugin-type\"];\n\t\t\t\tif(type === \"application/json\" && pluginType) {\n\t\t\t\t\t// Plugin tiddler\n\t\t\t\t\tvar libraryDetails = self.findPluginInLibrary(title);\n\t\t\t\t\tif(libraryDetails) {\n\t\t\t\t\t\t// A plugin from the core library\n\t\t\t\t\t\tself.log(\"Adding built-in plugin: \" + libraryDetails.name);\n\t\t\t\t\t\tnewWikiInfo[libraryDetails.type] = newWikiInfo[libraryDetails.type] || [];\n\t\t\t\t\t\t$tw.utils.pushTop(newWikiInfo[libraryDetails.type],libraryDetails.name);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// A custom plugin\n\t\t\t\t\t\tself.log(\"Processing custom plugin: \" + title);\n\t\t\t\t\t\tself.saveCustomPlugin(tiddler);\n\t\t\t\t\t}\t\t\t\t\n\t\t\t\t} else {\n\t\t\t\t\t// Ordinary tiddler\n\t\t\t\t\tself.saveTiddler(\"tiddlers\",tiddler);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\t// Save the tiddlywiki.info file\n\tthis.saveJSONFile(\"tiddlywiki.info\",newWikiInfo);\n\tself.log(\"Writing tiddlywiki.info: \" + JSON.stringify(newWikiInfo,null,$tw.config.preferences.jsonSpaces));\n\treturn null;\n};\n\n/*\nTest whether the specified tiddler is a plugin in the plugin library\n*/\nWikiFolderMaker.prototype.findPluginInLibrary = function(title) {\n\tvar parts = title.split(\"/\"),\n\t\tpluginPath, type, name;\n\tif(parts[0] === \"$:\") {\n\t\tif(parts[1] === \"languages\" && parts.length === 3) {\n\t\t\tpluginPath = \"languages\" + path.sep + parts[2];\n\t\t\ttype = parts[1];\n\t\t\tname = parts[2];\n\t\t} else if(parts[1] === \"plugins\" || parts[1] === \"themes\" && parts.length === 4) {\n\t\t\tpluginPath = parts[1] + path.sep + parts[2] + path.sep + parts[3];\n\t\t\ttype = parts[1];\n\t\t\tname = parts[2] + \"/\" + parts[3];\n\t\t}\n\t}\n\tif(pluginPath && type && name) {\n\t\tpluginPath = path.resolve($tw.boot.bootPath,\"..\",pluginPath);\n\t\tif(fs.existsSync(pluginPath)) {\n\t\t\treturn {\n\t\t\t\tpluginPath: pluginPath,\n\t\t\t\ttype: type,\n\t\t\t\tname: name\n\t\t\t};\n\t\t}\n\t}\n\treturn false;\n};\n\nWikiFolderMaker.prototype.saveCustomPlugin = function(pluginTiddler) {\n\tvar self = this,\n\t\tpluginTitle = pluginTiddler.fields.title,\n\t\ttitleParts = pluginTitle.split(\"/\"),\n\t\tdirectory = $tw.utils.generateTiddlerFilepath(titleParts[titleParts.length - 1],{\n\t\t\tdirectory: path.resolve(this.wikiFolderPath,pluginTiddler.fields[\"plugin-type\"] + \"s\")\n\t\t}),\n\t\tpluginInfo = pluginTiddler.getFieldStrings({exclude: [\"text\",\"type\"]});\n\tthis.saveJSONFile(directory + path.sep + \"plugin.info\",pluginInfo);\n\tself.log(\"Writing \" + directory + path.sep + \"plugin.info: \" + JSON.stringify(pluginInfo,null,$tw.config.preferences.jsonSpaces));\n\tvar pluginTiddlers = JSON.parse(pluginTiddler.fields.text).tiddlers; // A hashmap of tiddlers in the plugin\n\t$tw.utils.each(pluginTiddlers,function(tiddler) {\n\t\tself.saveTiddler(directory,new $tw.Tiddler(tiddler));\n\t});\n};\n\nWikiFolderMaker.prototype.saveTiddler = function(directory,tiddler) {\n\tvar fileInfo = $tw.utils.generateTiddlerFileInfo(tiddler,{\n\t\tdirectory: path.resolve(this.wikiFolderPath,directory),\n\t\twiki: this.wiki\n\t});\n\t$tw.utils.saveTiddlerToFileSync(tiddler,fileInfo);\n};\n\nWikiFolderMaker.prototype.saveJSONFile = function(filename,json) {\n\tthis.saveTextFile(filename,JSON.stringify(json,null,$tw.config.preferences.jsonSpaces));\n};\n\nWikiFolderMaker.prototype.saveTextFile = function(filename,data) {\n\tthis.saveFile(filename,\"utf8\",data);\n};\n\nWikiFolderMaker.prototype.saveFile = function(filename,encoding,data) {\n\tvar filepath = path.resolve(this.wikiFolderPath,filename);\n\t$tw.utils.createFileDirectories(filepath);\n\tfs.writeFileSync(filepath,data,encoding);\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/server.js": {
"title": "$:/core/modules/commands/server.js",
"text": "/*\\\ntitle: $:/core/modules/commands/server.js\ntype: application/javascript\nmodule-type: command\n\nDeprecated legacy command for serving tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Server = require(\"$:/core/modules/server/server.js\").Server;\n\nexports.info = {\n\tname: \"server\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tvar self = this;\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(!$tw.boot.wikiTiddlersPath) {\n\t\t$tw.utils.warning(\"Warning: Wiki folder '\" + $tw.boot.wikiPath + \"' does not exist or is missing a tiddlywiki.info file\");\n\t}\n\t// Set up server\n\tthis.server = new Server({\n\t\twiki: this.commander.wiki,\n\t\tvariables: {\n\t\t\tport: this.params[0],\n\t\t\thost: this.params[6],\n\t\t\t\"root-tiddler\": this.params[1],\n\t\t\t\"root-render-type\": this.params[2],\n\t\t\t\"root-serve-type\": this.params[3],\n\t\t\tusername: this.params[4],\n\t\t\tpassword: this.params[5],\n\t\t\t\"path-prefix\": this.params[7],\n\t\t\t\"debug-level\": this.params[8]\n\t\t}\n\t});\n\tvar nodeServer = this.server.listen();\n\t$tw.hooks.invokeHook(\"th-server-command-post-start\",this.server,nodeServer,\"tiddlywiki\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/setfield.js": {
"title": "$:/core/modules/commands/setfield.js",
"text": "/*\\\ntitle: $:/core/modules/commands/setfield.js\ntype: application/javascript\nmodule-type: command\n\nCommand to modify selected tiddlers to set a field to the text of a template tiddler that has been wikified with the selected tiddler as the current tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"setfield\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 4) {\n\t\treturn \"Missing parameters\";\n\t}\n\tvar self = this,\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\tfieldname = this.params[1] || \"text\",\n\t\ttemplatetitle = this.params[2],\n\t\trendertype = this.params[3] || \"text/plain\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(templatetitle),\n\t\t\tnewFields = {},\n\t\t\ttiddler = wiki.getTiddler(title);\n\t\tif(parser) {\n\t\t\tvar widgetNode = wiki.makeWidget(parser,{variables: {currentTiddler: title}});\n\t\t\tvar container = $tw.fakeDocument.createElement(\"div\");\n\t\t\twidgetNode.render(container,null);\n\t\t\tnewFields[fieldname] = rendertype === \"text/html\" ? container.innerHTML : container.textContent;\n\t\t} else {\n\t\t\tnewFields[fieldname] = undefined;\n\t\t}\n\t\twiki.addTiddler(new $tw.Tiddler(tiddler,newFields));\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/unpackplugin.js": {
"title": "$:/core/modules/commands/unpackplugin.js",
"text": "/*\\\ntitle: $:/core/modules/commands/unpackplugin.js\ntype: application/javascript\nmodule-type: command\n\nCommand to extract the shadow tiddlers from within a plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"unpackplugin\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing plugin name\";\n\t}\n\tvar self = this,\n\t\ttitle = this.params[0],\n\t\tpluginData = this.commander.wiki.getTiddlerDataCached(title);\n\tif(!pluginData) {\n\t\treturn \"Plugin '\" + title + \"' not found\";\n\t}\n\t$tw.utils.each(pluginData.tiddlers,function(tiddler) {\n\t\tself.commander.wiki.addTiddler(new $tw.Tiddler(tiddler));\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/verbose.js": {
"title": "$:/core/modules/commands/verbose.js",
"text": "/*\\\ntitle: $:/core/modules/commands/verbose.js\ntype: application/javascript\nmodule-type: command\n\nVerbose command\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"verbose\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tthis.commander.verbose = true;\n\t// Output the boot message log\n\tthis.commander.streams.output.write(\"Boot log:\\n \" + $tw.boot.logMessages.join(\"\\n \") + \"\\n\");\n\treturn null; // No error\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/commands/version.js": {
"title": "$:/core/modules/commands/version.js",
"text": "/*\\\ntitle: $:/core/modules/commands/version.js\ntype: application/javascript\nmodule-type: command\n\nVersion command\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"version\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tthis.commander.streams.output.write($tw.version + \"\\n\");\n\treturn null; // No error\n};\n\nexports.Command = Command;\n\n})();\n",
"type": "application/javascript",
"module-type": "command"
},
"$:/core/modules/config.js": {
"title": "$:/core/modules/config.js",
"text": "/*\\\ntitle: $:/core/modules/config.js\ntype: application/javascript\nmodule-type: config\n\nCore configuration constants\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.preferences = {};\n\nexports.preferences.notificationDuration = 3 * 1000;\nexports.preferences.jsonSpaces = 4;\n\nexports.textPrimitives = {\n\tupperLetter: \"[A-Z\\u00c0-\\u00d6\\u00d8-\\u00de\\u0150\\u0170]\",\n\tlowerLetter: \"[a-z\\u00df-\\u00f6\\u00f8-\\u00ff\\u0151\\u0171]\",\n\tanyLetter: \"[A-Za-z0-9\\u00c0-\\u00d6\\u00d8-\\u00de\\u00df-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]\",\n\tblockPrefixLetters:\t\"[A-Za-z0-9-_\\u00c0-\\u00d6\\u00d8-\\u00de\\u00df-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]\"\n};\n\nexports.textPrimitives.unWikiLink = \"~\";\nexports.textPrimitives.wikiLink = exports.textPrimitives.upperLetter + \"+\" +\n\texports.textPrimitives.lowerLetter + \"+\" +\n\texports.textPrimitives.upperLetter +\n\texports.textPrimitives.anyLetter + \"*\";\n\nexports.htmlEntities = {quot:34, amp:38, apos:39, lt:60, gt:62, nbsp:160, iexcl:161, cent:162, pound:163, curren:164, yen:165, brvbar:166, sect:167, uml:168, copy:169, ordf:170, laquo:171, not:172, shy:173, reg:174, macr:175, deg:176, plusmn:177, sup2:178, sup3:179, acute:180, micro:181, para:182, middot:183, cedil:184, sup1:185, ordm:186, raquo:187, frac14:188, frac12:189, frac34:190, iquest:191, Agrave:192, Aacute:193, Acirc:194, Atilde:195, Auml:196, Aring:197, AElig:198, Ccedil:199, Egrave:200, Eacute:201, Ecirc:202, Euml:203, Igrave:204, Iacute:205, Icirc:206, Iuml:207, ETH:208, Ntilde:209, Ograve:210, Oacute:211, Ocirc:212, Otilde:213, Ouml:214, times:215, Oslash:216, Ugrave:217, Uacute:218, Ucirc:219, Uuml:220, Yacute:221, THORN:222, szlig:223, agrave:224, aacute:225, acirc:226, atilde:227, auml:228, aring:229, aelig:230, ccedil:231, egrave:232, eacute:233, ecirc:234, euml:235, igrave:236, iacute:237, icirc:238, iuml:239, eth:240, ntilde:241, ograve:242, oacute:243, ocirc:244, otilde:245, ouml:246, divide:247, oslash:248, ugrave:249, uacute:250, ucirc:251, uuml:252, yacute:253, thorn:254, yuml:255, OElig:338, oelig:339, Scaron:352, scaron:353, Yuml:376, fnof:402, circ:710, tilde:732, Alpha:913, Beta:914, Gamma:915, Delta:916, Epsilon:917, Zeta:918, Eta:919, Theta:920, Iota:921, Kappa:922, Lambda:923, Mu:924, Nu:925, Xi:926, Omicron:927, Pi:928, Rho:929, Sigma:931, Tau:932, Upsilon:933, Phi:934, Chi:935, Psi:936, Omega:937, alpha:945, beta:946, gamma:947, delta:948, epsilon:949, zeta:950, eta:951, theta:952, iota:953, kappa:954, lambda:955, mu:956, nu:957, xi:958, omicron:959, pi:960, rho:961, sigmaf:962, sigma:963, tau:964, upsilon:965, phi:966, chi:967, psi:968, omega:969, thetasym:977, upsih:978, piv:982, ensp:8194, emsp:8195, thinsp:8201, zwnj:8204, zwj:8205, lrm:8206, rlm:8207, ndash:8211, mdash:8212, lsquo:8216, rsquo:8217, sbquo:8218, ldquo:8220, rdquo:8221, bdquo:8222, dagger:8224, Dagger:8225, bull:8226, hellip:8230, permil:8240, prime:8242, Prime:8243, lsaquo:8249, rsaquo:8250, oline:8254, frasl:8260, euro:8364, image:8465, weierp:8472, real:8476, trade:8482, alefsym:8501, larr:8592, uarr:8593, rarr:8594, darr:8595, harr:8596, crarr:8629, lArr:8656, uArr:8657, rArr:8658, dArr:8659, hArr:8660, forall:8704, part:8706, exist:8707, empty:8709, nabla:8711, isin:8712, notin:8713, ni:8715, prod:8719, sum:8721, minus:8722, lowast:8727, radic:8730, prop:8733, infin:8734, ang:8736, and:8743, or:8744, cap:8745, cup:8746, int:8747, there4:8756, sim:8764, cong:8773, asymp:8776, ne:8800, equiv:8801, le:8804, ge:8805, sub:8834, sup:8835, nsub:8836, sube:8838, supe:8839, oplus:8853, otimes:8855, perp:8869, sdot:8901, lceil:8968, rceil:8969, lfloor:8970, rfloor:8971, lang:9001, rang:9002, loz:9674, spades:9824, clubs:9827, hearts:9829, diams:9830 };\n\nexports.htmlVoidElements = \"area,base,br,col,command,embed,hr,img,input,keygen,link,meta,param,source,track,wbr\".split(\",\");\n\nexports.htmlBlockElements = \"address,article,aside,audio,blockquote,canvas,dd,div,dl,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,hr,li,noscript,ol,output,p,pre,section,table,tfoot,ul,video\".split(\",\");\n\nexports.htmlUnsafeElements = \"script\".split(\",\");\n\n})();\n",
"type": "application/javascript",
"module-type": "config"
},
"$:/core/modules/deserializers.js": {
"title": "$:/core/modules/deserializers.js",
"text": "/*\\\ntitle: $:/core/modules/deserializers.js\ntype: application/javascript\nmodule-type: tiddlerdeserializer\n\nFunctions to deserialise tiddlers from a block of text\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nUtility function to parse an old-style tiddler DIV in a *.tid file. It looks like this:\n\n<div title=\"Title\" creator=\"JoeBloggs\" modifier=\"JoeBloggs\" created=\"201102111106\" modified=\"201102111310\" tags=\"myTag [[my long tag]]\">\n<pre>The text of the tiddler (without the expected HTML encoding).\n</pre>\n</div>\n\nNote that the field attributes are HTML encoded, but that the body of the <PRE> tag is not encoded.\n\nWhen these tiddler DIVs are encountered within a TiddlyWiki HTML file then the body is encoded in the usual way.\n*/\nvar parseTiddlerDiv = function(text /* [,fields] */) {\n\t// Slot together the default results\n\tvar result = {};\n\tif(arguments.length > 1) {\n\t\tfor(var f=1; f<arguments.length; f++) {\n\t\t\tvar fields = arguments[f];\n\t\t\tfor(var t in fields) {\n\t\t\t\tresult[t] = fields[t];\t\t\n\t\t\t}\n\t\t}\n\t}\n\t// Parse the DIV body\n\tvar startRegExp = /^\\s*<div\\s+([^>]*)>(\\s*<pre>)?/gi,\n\t\tendRegExp,\n\t\tmatch = startRegExp.exec(text);\n\tif(match) {\n\t\t// Old-style DIVs don't have the <pre> tag\n\t\tif(match[2]) {\n\t\t\tendRegExp = /<\\/pre>\\s*<\\/div>\\s*$/gi;\n\t\t} else {\n\t\t\tendRegExp = /<\\/div>\\s*$/gi;\n\t\t}\n\t\tvar endMatch = endRegExp.exec(text);\n\t\tif(endMatch) {\n\t\t\t// Extract the text\n\t\t\tresult.text = text.substring(match.index + match[0].length,endMatch.index);\n\t\t\t// Process the attributes\n\t\t\tvar attrRegExp = /\\s*([^=\\s]+)\\s*=\\s*(?:\"([^\"]*)\"|'([^']*)')/gi,\n\t\t\t\tattrMatch;\n\t\t\tdo {\n\t\t\t\tattrMatch = attrRegExp.exec(match[1]);\n\t\t\t\tif(attrMatch) {\n\t\t\t\t\tvar name = attrMatch[1];\n\t\t\t\t\tvar value = attrMatch[2] !== undefined ? attrMatch[2] : attrMatch[3];\n\t\t\t\t\tresult[name] = value;\n\t\t\t\t}\n\t\t\t} while(attrMatch);\n\t\t\treturn result;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports[\"application/x-tiddler-html-div\"] = function(text,fields) {\n\treturn [parseTiddlerDiv(text,fields)];\n};\n\nexports[\"application/json\"] = function(text,fields) {\n\tvar incoming,\n\t\tresults = [];\n\ttry {\n\t\tincoming = JSON.parse(text);\n\t} catch(e) {\n\t\tincoming = [{\n\t\t\ttitle: \"JSON error: \" + e,\n\t\t\ttext: \"\"\n\t\t}]\n\t}\n\tif(!$tw.utils.isArray(incoming)) {\n\t\tincoming = [incoming];\n\t}\n\tfor(var t=0; t<incoming.length; t++) {\n\t\tvar incomingFields = incoming[t],\n\t\t\tfields = {};\n\t\tfor(var f in incomingFields) {\n\t\t\tif(typeof incomingFields[f] === \"string\") {\n\t\t\t\tfields[f] = incomingFields[f];\n\t\t\t}\n\t\t}\n\t\tresults.push(fields);\n\t}\n\treturn results;\n};\n\n/*\nParse an HTML file into tiddlers. There are three possibilities:\n# A TiddlyWiki classic HTML file containing `text/x-tiddlywiki` tiddlers\n# A TiddlyWiki5 HTML file containing `text/vnd.tiddlywiki` tiddlers\n# An ordinary HTML file\n*/\nexports[\"text/html\"] = function(text,fields) {\n\t// Check if we've got a store area\n\tvar storeAreaMarkerRegExp = /<div id=[\"']?storeArea['\"]?( style=[\"']?display:none;[\"']?)?>/gi,\n\t\tmatch = storeAreaMarkerRegExp.exec(text);\n\tif(match) {\n\t\t// If so, it's either a classic TiddlyWiki file or an unencrypted TW5 file\n\t\t// First read the normal tiddlers\n\t\tvar results = deserializeTiddlyWikiFile(text,storeAreaMarkerRegExp.lastIndex,!!match[1],fields);\n\t\t// Then any system tiddlers\n\t\tvar systemAreaMarkerRegExp = /<div id=[\"']?systemArea['\"]?( style=[\"']?display:none;[\"']?)?>/gi,\n\t\t\tsysMatch = systemAreaMarkerRegExp.exec(text);\n\t\tif(sysMatch) {\n\t\t\tresults.push.apply(results,deserializeTiddlyWikiFile(text,systemAreaMarkerRegExp.lastIndex,!!sysMatch[1],fields));\n\t\t}\n\t\treturn results;\n\t} else {\n\t\t// Check whether we've got an encrypted file\n\t\tvar encryptedStoreArea = $tw.utils.extractEncryptedStoreArea(text);\n\t\tif(encryptedStoreArea) {\n\t\t\t// If so, attempt to decrypt it using the current password\n\t\t\treturn $tw.utils.decryptStoreArea(encryptedStoreArea);\n\t\t} else {\n\t\t\t// It's not a TiddlyWiki so we'll return the entire HTML file as a tiddler\n\t\t\treturn deserializeHtmlFile(text,fields);\n\t\t}\n\t}\n};\n\nfunction deserializeHtmlFile(text,fields) {\n\tvar result = {};\n\t$tw.utils.each(fields,function(value,name) {\n\t\tresult[name] = value;\n\t});\n\tresult.text = text;\n\tresult.type = \"text/html\";\n\treturn [result];\n}\n\nfunction deserializeTiddlyWikiFile(text,storeAreaEnd,isTiddlyWiki5,fields) {\n\tvar results = [],\n\t\tendOfDivRegExp = /(<\\/div>\\s*)/gi,\n\t\tstartPos = storeAreaEnd,\n\t\tdefaultType = isTiddlyWiki5 ? undefined : \"text/x-tiddlywiki\";\n\tendOfDivRegExp.lastIndex = startPos;\n\tvar match = endOfDivRegExp.exec(text);\n\twhile(match) {\n\t\tvar endPos = endOfDivRegExp.lastIndex,\n\t\t\ttiddlerFields = parseTiddlerDiv(text.substring(startPos,endPos),fields,{type: defaultType});\n\t\tif(!tiddlerFields) {\n\t\t\tbreak;\n\t\t}\n\t\t$tw.utils.each(tiddlerFields,function(value,name) {\n\t\t\tif(typeof value === \"string\") {\n\t\t\t\ttiddlerFields[name] = $tw.utils.htmlDecode(value);\n\t\t\t}\n\t\t});\n\t\tif(tiddlerFields.text !== null) {\n\t\t\tresults.push(tiddlerFields);\n\t\t}\n\t\tstartPos = endPos;\n\t\tmatch = endOfDivRegExp.exec(text);\n\t}\n\treturn results;\n}\n\n})();\n",
"type": "application/javascript",
"module-type": "tiddlerdeserializer"
},
"$:/core/modules/editor/engines/framed.js": {
"title": "$:/core/modules/editor/engines/framed.js",
"text": "/*\\\ntitle: $:/core/modules/editor/engines/framed.js\ntype: application/javascript\nmodule-type: library\n\nText editor engine based on a simple input or textarea within an iframe. This is done so that the selection is preserved even when clicking away from the textarea\n\n\\*/\n(function(){\n\n/*jslint node: true,browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\nfunction FramedEngine(options) {\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\t// Create our hidden dummy text area for reading styles\n\tthis.dummyTextArea = this.widget.document.createElement(\"textarea\");\n\tif(this.widget.editClass) {\n\t\tthis.dummyTextArea.className = this.widget.editClass;\n\t}\n\tthis.dummyTextArea.setAttribute(\"hidden\",\"true\");\n\tthis.parentNode.insertBefore(this.dummyTextArea,this.nextSibling);\n\tthis.widget.domNodes.push(this.dummyTextArea);\n\t// Create the iframe\n\tthis.iframeNode = this.widget.document.createElement(\"iframe\");\n\tthis.parentNode.insertBefore(this.iframeNode,this.nextSibling);\n\tthis.iframeDoc = this.iframeNode.contentWindow.document;\n\t// (Firefox requires us to put some empty content in the iframe)\n\tthis.iframeDoc.open();\n\tthis.iframeDoc.write(\"\");\n\tthis.iframeDoc.close();\n\t// Style the iframe\n\tthis.iframeNode.className = this.dummyTextArea.className;\n\tthis.iframeNode.style.border = \"none\";\n\tthis.iframeNode.style.padding = \"0\";\n\tthis.iframeNode.style.resize = \"none\";\n\tthis.iframeNode.style[\"background-color\"] = this.widget.wiki.extractTiddlerDataItem(this.widget.wiki.getTiddlerText(\"$:/palette\"),\"tiddler-editor-background\");\n\tthis.iframeDoc.body.style.margin = \"0\";\n\tthis.iframeDoc.body.style.padding = \"0\";\n\tthis.widget.domNodes.push(this.iframeNode);\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.iframeDoc.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.iframeDoc.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\tif(this.widget.editTabIndex) {\n\t\tthis.iframeNode.setAttribute(\"tabindex\",this.widget.editTabIndex);\n\t}\n\t// Copy the styles from the dummy textarea\n\tthis.copyStyles();\n\t// Add event listeners\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"click\",handlerObject: this,handlerMethod: \"handleClickEvent\"},\n\t\t{name: \"input\",handlerObject: this,handlerMethod: \"handleInputEvent\"},\n\t\t{name: \"keydown\",handlerObject: this.widget,handlerMethod: \"handleKeydownEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.iframeDoc.body.appendChild(this.domNode);\n}\n\n/*\nCopy styles from the dummy text area to the textarea in the iframe\n*/\nFramedEngine.prototype.copyStyles = function() {\n\t// Copy all styles\n\t$tw.utils.copyStyles(this.dummyTextArea,this.domNode);\n\t// Override the ones that should not be set the same as the dummy textarea\n\tthis.domNode.style.display = \"block\";\n\tthis.domNode.style.width = \"100%\";\n\tthis.domNode.style.margin = \"0\";\n\tthis.domNode.style[\"background-color\"] = this.widget.wiki.extractTiddlerDataItem(this.widget.wiki.getTiddlerText(\"$:/palette\"),\"tiddler-editor-background\");\n\t// In Chrome setting -webkit-text-fill-color overrides the placeholder text colour\n\tthis.domNode.style[\"-webkit-text-fill-color\"] = \"currentcolor\";\n};\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nFramedEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode) {\n\t\t\tthis.domNode.value = text;\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nGet the text of the engine\n*/\nFramedEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nFramedEngine.prototype.fixHeight = function() {\n\t// Make sure styles are updated\n\tthis.copyStyles();\n\t// Adjust height\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\tvar newHeight = $tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t\tthis.iframeNode.style.height = (newHeight + 14) + \"px\"; // +14 for the border on the textarea\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t\tthis.iframeNode.style.height = (fixedHeight + 14) + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nFramedEngine.prototype.focus = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a click\n*/\nFramedEngine.prototype.handleClickEvent = function(event) {\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nFramedEngine.prototype.handleInputEvent = function(event) {\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nFramedEngine.prototype.createTextOperation = function() {\n\tvar operation = {\n\t\ttext: this.domNode.value,\n\t\tselStart: this.domNode.selectionStart,\n\t\tselEnd: this.domNode.selectionEnd,\n\t\tcutStart: null,\n\t\tcutEnd: null,\n\t\treplacement: null,\n\t\tnewSelStart: null,\n\t\tnewSelEnd: null\n\t};\n\toperation.selection = operation.text.substring(operation.selStart,operation.selEnd);\n\treturn operation;\n};\n\n/*\nExecute a text operation\n*/\nFramedEngine.prototype.executeTextOperation = function(operation) {\n\t// Perform the required changes to the text area and the underlying tiddler\n\tvar newText = operation.text;\n\tif(operation.replacement !== null) {\n\t\tnewText = operation.text.substring(0,operation.cutStart) + operation.replacement + operation.text.substring(operation.cutEnd);\n\t\t// Attempt to use a execCommand to modify the value of the control\n\t\tif(this.iframeDoc.queryCommandSupported(\"insertText\") && this.iframeDoc.queryCommandSupported(\"delete\") && !$tw.browser.isFirefox) {\n\t\t\tthis.domNode.focus();\n\t\t\tthis.domNode.setSelectionRange(operation.cutStart,operation.cutEnd);\n\t\t\tif(operation.replacement === \"\") {\n\t\t\t\tthis.iframeDoc.execCommand(\"delete\",false,\"\");\n\t\t\t} else {\n\t\t\t\tthis.iframeDoc.execCommand(\"insertText\",false,operation.replacement);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.domNode.value = newText;\n\t\t}\n\t\tthis.domNode.focus();\n\t\tthis.domNode.setSelectionRange(operation.newSelStart,operation.newSelEnd);\n\t}\n\tthis.domNode.focus();\n\treturn newText;\n};\n\nexports.FramedEngine = FramedEngine;\n\n})();\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/core/modules/editor/engines/simple.js": {
"title": "$:/core/modules/editor/engines/simple.js",
"text": "/*\\\ntitle: $:/core/modules/editor/engines/simple.js\ntype: application/javascript\nmodule-type: library\n\nText editor engine based on a simple input or textarea tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\nfunction SimpleEngine(options) {\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.widget.document.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.widget.document.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\tif(this.widget.editClass) {\n\t\tthis.domNode.className = this.widget.editClass;\n\t}\n\tif(this.widget.editTabIndex) {\n\t\tthis.domNode.setAttribute(\"tabindex\",this.widget.editTabIndex);\n\t}\n\t// Add an input event handler\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"focus\", handlerObject: this, handlerMethod: \"handleFocusEvent\"},\n\t\t{name: \"input\", handlerObject: this, handlerMethod: \"handleInputEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.parentNode.insertBefore(this.domNode,this.nextSibling);\n\tthis.widget.domNodes.push(this.domNode);\n}\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nSimpleEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode || text === \"\") {\n\t\t\tthis.domNode.value = text;\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nGet the text of the engine\n*/\nSimpleEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nSimpleEngine.prototype.fixHeight = function() {\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\t$tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nSimpleEngine.prototype.focus = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nSimpleEngine.prototype.handleInputEvent = function(event) {\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nHandle a dom \"focus\" event\n*/\nSimpleEngine.prototype.handleFocusEvent = function(event) {\n\tif(this.widget.editFocusPopup) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNode,\n\t\t\ttitle: this.widget.editFocusPopup,\n\t\t\twiki: this.widget.wiki,\n\t\t\tforce: true\n\t\t});\n\t}\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nSimpleEngine.prototype.createTextOperation = function() {\n\treturn null;\n};\n\n/*\nExecute a text operation\n*/\nSimpleEngine.prototype.executeTextOperation = function(operation) {\n};\n\nexports.SimpleEngine = SimpleEngine;\n\n})();\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/core/modules/editor/factory.js": {
"title": "$:/core/modules/editor/factory.js",
"text": "/*\\\ntitle: $:/core/modules/editor/factory.js\ntype: application/javascript\nmodule-type: library\n\nFactory for constructing text editor widgets with specified engines for the toolbar and non-toolbar cases\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DEFAULT_MIN_TEXT_AREA_HEIGHT = \"100px\"; // Minimum height of textareas in pixels\n\n// Configuration tiddlers\nvar HEIGHT_MODE_TITLE = \"$:/config/TextEditor/EditorHeight/Mode\";\nvar ENABLE_TOOLBAR_TITLE = \"$:/config/TextEditor/EnableToolbar\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nfunction editTextWidgetFactory(toolbarEngine,nonToolbarEngine) {\n\n\tvar EditTextWidget = function(parseTreeNode,options) {\n\t\t// Initialise the editor operations if they've not been done already\n\t\tif(!this.editorOperations) {\n\t\t\tEditTextWidget.prototype.editorOperations = {};\n\t\t\t$tw.modules.applyMethods(\"texteditoroperation\",this.editorOperations);\n\t\t}\n\t\tthis.initialise(parseTreeNode,options);\n\t};\n\n\t/*\n\tInherit from the base widget class\n\t*/\n\tEditTextWidget.prototype = new Widget();\n\n\t/*\n\tRender this widget into the DOM\n\t*/\n\tEditTextWidget.prototype.render = function(parent,nextSibling) {\n\t\t// Save the parent dom node\n\t\tthis.parentDomNode = parent;\n\t\t// Compute our attributes\n\t\tthis.computeAttributes();\n\t\t// Execute our logic\n\t\tthis.execute();\n\t\t// Create the wrapper for the toolbar and render its content\n\t\tif(this.editShowToolbar) {\n\t\t\tthis.toolbarNode = this.document.createElement(\"div\");\n\t\t\tthis.toolbarNode.className = \"tc-editor-toolbar\";\n\t\t\tparent.insertBefore(this.toolbarNode,nextSibling);\n\t\t\tthis.renderChildren(this.toolbarNode,null);\n\t\t\tthis.domNodes.push(this.toolbarNode);\n\t\t}\n\t\t// Create our element\n\t\tvar editInfo = this.getEditInfo(),\n\t\t\tEngine = this.editShowToolbar ? toolbarEngine : nonToolbarEngine;\n\t\tthis.engine = new Engine({\n\t\t\t\twidget: this,\n\t\t\t\tvalue: editInfo.value,\n\t\t\t\ttype: editInfo.type,\n\t\t\t\tparentNode: parent,\n\t\t\t\tnextSibling: nextSibling\n\t\t\t});\n\t\t// Call the postRender hook\n\t\tif(this.postRender) {\n\t\t\tthis.postRender();\n\t\t}\n\t\t// Fix height\n\t\tthis.engine.fixHeight();\n\t\t// Focus if required\n\t\tif(this.editFocus === \"true\" || this.editFocus === \"yes\") {\n\t\t\tthis.engine.focus();\n\t\t}\n\t\t// Add widget message listeners\n\t\tthis.addEventListeners([\n\t\t\t{type: \"tm-edit-text-operation\", handler: \"handleEditTextOperationMessage\"}\n\t\t]);\n\t};\n\n\t/*\n\tGet the tiddler being edited and current value\n\t*/\n\tEditTextWidget.prototype.getEditInfo = function() {\n\t\t// Get the edit value\n\t\tvar self = this,\n\t\t\tvalue,\n\t\t\ttype = \"text/plain\",\n\t\t\tupdate;\n\t\tif(this.editIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(this.editTitle,this.editIndex,this.editDefault);\n\t\t\tupdate = function(value) {\n\t\t\t\tvar data = self.wiki.getTiddlerData(self.editTitle,{});\n\t\t\t\tif(data[self.editIndex] !== value) {\n\t\t\t\t\tdata[self.editIndex] = value;\n\t\t\t\t\tself.wiki.setTiddlerData(self.editTitle,data);\n\t\t\t\t}\n\t\t\t};\n\t\t} else {\n\t\t\t// Get the current tiddler and the field name\n\t\t\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\t\t\tif(tiddler) {\n\t\t\t\t// If we've got a tiddler, the value to display is the field string value\n\t\t\t\tvalue = tiddler.getFieldString(this.editField);\n\t\t\t\tif(this.editField === \"text\") {\n\t\t\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\";\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise, we need to construct a default value for the editor\n\t\t\t\tswitch(this.editField) {\n\t\t\t\t\tcase \"text\":\n\t\t\t\t\t\tvalue = \"Type the text for the tiddler '\" + this.editTitle + \"'\";\n\t\t\t\t\t\ttype = \"text/vnd.tiddlywiki\";\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"title\":\n\t\t\t\t\t\tvalue = this.editTitle;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tvalue = \"\";\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif(this.editDefault !== undefined) {\n\t\t\t\t\tvalue = this.editDefault;\n\t\t\t\t}\n\t\t\t}\n\t\t\tupdate = function(value) {\n\t\t\t\tvar tiddler = self.wiki.getTiddler(self.editTitle),\n\t\t\t\t\tupdateFields = {\n\t\t\t\t\t\ttitle: self.editTitle\n\t\t\t\t\t};\n\t\t\t\tupdateFields[self.editField] = value;\n\t\t\t\tself.wiki.addTiddler(new $tw.Tiddler(self.wiki.getCreationFields(),tiddler,updateFields,self.wiki.getModificationFields()));\n\t\t\t};\n\t\t}\n\t\tif(this.editType) {\n\t\t\ttype = this.editType;\n\t\t}\n\t\treturn {value: value || \"\", type: type, update: update};\n\t};\n\n\t/*\n\tHandle an edit text operation message from the toolbar\n\t*/\n\tEditTextWidget.prototype.handleEditTextOperationMessage = function(event) {\n\t\t// Prepare information about the operation\n\t\tvar operation = this.engine.createTextOperation();\n\t\t// Invoke the handler for the selected operation\n\t\tvar handler = this.editorOperations[event.param];\n\t\tif(handler) {\n\t\t\thandler.call(this,event,operation);\n\t\t}\n\t\t// Execute the operation via the engine\n\t\tvar newText = this.engine.executeTextOperation(operation);\n\t\t// Fix the tiddler height and save changes\n\t\tthis.engine.fixHeight();\n\t\tthis.saveChanges(newText);\n\t};\n\n\t/*\n\tCompute the internal state of the widget\n\t*/\n\tEditTextWidget.prototype.execute = function() {\n\t\t// Get our parameters\n\t\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t\tthis.editField = this.getAttribute(\"field\",\"text\");\n\t\tthis.editIndex = this.getAttribute(\"index\");\n\t\tthis.editDefault = this.getAttribute(\"default\");\n\t\tthis.editClass = this.getAttribute(\"class\");\n\t\tthis.editPlaceholder = this.getAttribute(\"placeholder\");\n\t\tthis.editSize = this.getAttribute(\"size\");\n\t\tthis.editRows = this.getAttribute(\"rows\");\n\t\tthis.editAutoHeight = this.wiki.getTiddlerText(HEIGHT_MODE_TITLE,\"auto\");\n\t\tthis.editAutoHeight = this.getAttribute(\"autoHeight\",this.editAutoHeight === \"auto\" ? \"yes\" : \"no\") === \"yes\";\n\t\tthis.editMinHeight = this.getAttribute(\"minHeight\",DEFAULT_MIN_TEXT_AREA_HEIGHT);\n\t\tthis.editFocusPopup = this.getAttribute(\"focusPopup\");\n\t\tthis.editFocus = this.getAttribute(\"focus\");\n\t\tthis.editTabIndex = this.getAttribute(\"tabindex\");\n\t\t// Get the default editor element tag and type\n\t\tvar tag,type;\n\t\tif(this.editField === \"text\") {\n\t\t\ttag = \"textarea\";\n\t\t} else {\n\t\t\ttag = \"input\";\n\t\t\tvar fieldModule = $tw.Tiddler.fieldModules[this.editField];\n\t\t\tif(fieldModule && fieldModule.editTag) {\n\t\t\t\ttag = fieldModule.editTag;\n\t\t\t}\n\t\t\tif(fieldModule && fieldModule.editType) {\n\t\t\t\ttype = fieldModule.editType;\n\t\t\t}\n\t\t\ttype = type || \"text\";\n\t\t}\n\t\t// Get the rest of our parameters\n\t\tthis.editTag = this.getAttribute(\"tag\",tag) || \"input\";\n\t\tthis.editType = this.getAttribute(\"type\",type);\n\t\t// Make the child widgets\n\t\tthis.makeChildWidgets();\n\t\t// Determine whether to show the toolbar\n\t\tthis.editShowToolbar = this.wiki.getTiddlerText(ENABLE_TOOLBAR_TITLE,\"yes\");\n\t\tthis.editShowToolbar = (this.editShowToolbar === \"yes\") && !!(this.children && this.children.length > 0) && (!this.document.isTiddlyWikiFakeDom);\n\t};\n\n\t/*\n\tSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n\t*/\n\tEditTextWidget.prototype.refresh = function(changedTiddlers) {\n\t\tvar changedAttributes = this.computeAttributes();\n\t\t// Completely rerender if any of our attributes have changed\n\t\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.placeholder || changedAttributes.size || changedAttributes.autoHeight || changedAttributes.minHeight || changedAttributes.focusPopup || changedAttributes.rows || changedAttributes.tabindex || changedTiddlers[HEIGHT_MODE_TITLE] || changedTiddlers[ENABLE_TOOLBAR_TITLE]) {\n\t\t\tthis.refreshSelf();\n\t\t\treturn true;\n\t\t} else if(changedTiddlers[this.editTitle]) {\n\t\t\tvar editInfo = this.getEditInfo();\n\t\t\tthis.updateEditor(editInfo.value,editInfo.type);\n\t\t}\n\t\tthis.engine.fixHeight();\n\t\tif(this.editShowToolbar) {\n\t\t\treturn this.refreshChildren(changedTiddlers);\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\t/*\n\tUpdate the editor with new text. This method is separate from updateEditorDomNode()\n\tso that subclasses can override updateEditor() and still use updateEditorDomNode()\n\t*/\n\tEditTextWidget.prototype.updateEditor = function(text,type) {\n\t\tthis.updateEditorDomNode(text,type);\n\t};\n\n\t/*\n\tUpdate the editor dom node with new text\n\t*/\n\tEditTextWidget.prototype.updateEditorDomNode = function(text,type) {\n\t\tthis.engine.setText(text,type);\n\t};\n\n\t/*\n\tSave changes back to the tiddler store\n\t*/\n\tEditTextWidget.prototype.saveChanges = function(text) {\n\t\tvar editInfo = this.getEditInfo();\n\t\tif(text !== editInfo.value) {\n\t\t\teditInfo.update(text);\n\t\t}\n\t};\n\n\t/*\n\tHandle a dom \"keydown\" event, which we'll bubble up to our container for the keyboard widgets benefit\n\t*/\n\tEditTextWidget.prototype.handleKeydownEvent = function(event) {\n\t\t// Check for a keyboard shortcut\n\t\tif(this.toolbarNode) {\n\t\t\tvar shortcutElements = this.toolbarNode.querySelectorAll(\"[data-tw-keyboard-shortcut]\");\n\t\t\tfor(var index=0; index<shortcutElements.length; index++) {\n\t\t\t\tvar el = shortcutElements[index],\n\t\t\t\t\tshortcutData = el.getAttribute(\"data-tw-keyboard-shortcut\"),\n\t\t\t\t\tkeyInfoArray = $tw.keyboardManager.parseKeyDescriptors(shortcutData,{\n\t\t\t\t\t\twiki: this.wiki\n\t\t\t\t\t});\n\t\t\t\tif($tw.keyboardManager.checkKeyDescriptors(event,keyInfoArray)) {\n\t\t\t\t\tvar clickEvent = this.document.createEvent(\"Events\");\n\t\t\t\t clickEvent.initEvent(\"click\",true,false);\n\t\t\t\t el.dispatchEvent(clickEvent);\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t// Propogate the event to the container\n\t\tif(this.propogateKeydownEvent(event)) {\n\t\t\t// Ignore the keydown if it was already handled\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\treturn true;\n\t\t}\n\t\t// Otherwise, process the keydown normally\n\t\treturn false;\n\t};\n\n\t/*\n\tPropogate keydown events to our container for the keyboard widgets benefit\n\t*/\n\tEditTextWidget.prototype.propogateKeydownEvent = function(event) {\n\t\tvar newEvent = this.document.createEventObject ? this.document.createEventObject() : this.document.createEvent(\"Events\");\n\t\tif(newEvent.initEvent) {\n\t\t\tnewEvent.initEvent(\"keydown\", true, true);\n\t\t}\n\t\tnewEvent.keyCode = event.keyCode;\n\t\tnewEvent.which = event.which;\n\t\tnewEvent.metaKey = event.metaKey;\n\t\tnewEvent.ctrlKey = event.ctrlKey;\n\t\tnewEvent.altKey = event.altKey;\n\t\tnewEvent.shiftKey = event.shiftKey;\n\t\treturn !this.parentDomNode.dispatchEvent(newEvent);\n\t};\n\n\treturn EditTextWidget;\n\n}\n\nexports.editTextWidgetFactory = editTextWidgetFactory;\n\n})();\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/core/modules/editor/operations/bitmap/clear.js": {
"title": "$:/core/modules/editor/operations/bitmap/clear.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/clear.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to clear the image\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"clear\"] = function(event) {\n\tvar ctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.globalAlpha = 1;\n\tctx.fillStyle = event.paramObject.colour || \"white\";\n\tctx.fillRect(0,0,this.canvasDomNode.width,this.canvasDomNode.height);\n\t// Save changes\n\tthis.strokeEnd();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "bitmapeditoroperation"
},
"$:/core/modules/editor/operations/bitmap/resize.js": {
"title": "$:/core/modules/editor/operations/bitmap/resize.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/resize.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to resize the image\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"resize\"] = function(event) {\n\t// Get the new width\n\tvar newWidth = parseInt(event.paramObject.width || this.canvasDomNode.width,10),\n\t\tnewHeight = parseInt(event.paramObject.height || this.canvasDomNode.height,10);\n\t// Update if necessary\n\tif(newWidth > 0 && newHeight > 0 && !(newWidth === this.currCanvas.width && newHeight === this.currCanvas.height)) {\n\t\tthis.changeCanvasSize(newWidth,newHeight);\n\t}\n\t// Update the input controls\n\tthis.refreshToolbar();\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "bitmapeditoroperation"
},
"$:/core/modules/editor/operations/bitmap/rotate-left.js": {
"title": "$:/core/modules/editor/operations/bitmap/rotate-left.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/rotate-left.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to rotate the image left by 90 degrees\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"rotate-left\"] = function(event) {\n\t// Rotate the canvas left by 90 degrees\n\tthis.rotateCanvasLeft();\n\t// Update the input controls\n\tthis.refreshToolbar();\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "bitmapeditoroperation"
},
"$:/core/modules/editor/operations/text/excise.js": {
"title": "$:/core/modules/editor/operations/text/excise.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/text/excise.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to excise the selection to a new tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"excise\"] = function(event,operation) {\n\tvar editTiddler = this.wiki.getTiddler(this.editTitle),\n\t\teditTiddlerTitle = this.editTitle;\n\tif(editTiddler && editTiddler.fields[\"draft.of\"]) {\n\t\teditTiddlerTitle = editTiddler.fields[\"draft.of\"];\n\t}\n\tvar excisionTitle = event.paramObject.title || this.wiki.generateNewTitle(\"New Excision\");\n\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\tthis.wiki.getCreationFields(),\n\t\tthis.wiki.getModificationFields(),\n\t\t{\n\t\t\ttitle: excisionTitle,\n\t\t\ttext: operation.selection,\n\t\t\ttags: event.paramObject.tagnew === \"yes\" ? [editTiddlerTitle] : []\n\t\t}\n\t));\n\toperation.replacement = excisionTitle;\n\tswitch(event.paramObject.type || \"transclude\") {\n\t\tcase \"transclude\":\n\t\t\toperation.replacement = \"{{\" + operation.replacement+ \"}}\";\n\t\t\tbreak;\n\t\tcase \"link\":\n\t\t\toperation.replacement = \"[[\" + operation.replacement+ \"]]\";\n\t\t\tbreak;\n\t\tcase \"macro\":\n\t\t\toperation.replacement = \"<<\" + (event.paramObject.macro || \"translink\") + \" \\\"\\\"\\\"\" + operation.replacement + \"\\\"\\\"\\\">>\";\n\t\t\tbreak;\n\t}\n\toperation.cutStart = operation.selStart;\n\toperation.cutEnd = operation.selEnd;\n\toperation.newSelStart = operation.selStart;\n\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "texteditoroperation"
},
"$:/core/modules/editor/operations/text/make-link.js": {
"title": "$:/core/modules/editor/operations/text/make-link.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/text/make-link.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to make a link\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"make-link\"] = function(event,operation) {\n\tif(operation.selection) {\n\t\toperation.replacement = \"[[\" + operation.selection + \"|\" + event.paramObject.text + \"]]\";\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t} else {\n\t\toperation.replacement = \"[[\" + event.paramObject.text + \"]]\";\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t}\n\toperation.newSelStart = operation.selStart + operation.replacement.length;\n\toperation.newSelEnd = operation.newSelStart;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "texteditoroperation"
},
"$:/core/modules/editor/operations/text/prefix-lines.js": {
"title": "$:/core/modules/editor/operations/text/prefix-lines.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/text/prefix-lines.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to add a prefix to the selected lines\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"prefix-lines\"] = function(event,operation) {\n\tvar targetCount = parseInt(event.paramObject.count + \"\",10);\n\t// Cut just past the preceding line break, or the start of the text\n\toperation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart);\n\t// Cut to just past the following line break, or to the end of the text\n\toperation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd);\n\t// Compose the required prefix\n\tvar prefix = $tw.utils.repeat(event.paramObject.character,targetCount);\n\t// Process each line\n\tvar lines = operation.text.substring(operation.cutStart,operation.cutEnd).split(/\\r?\\n/mg);\n\t$tw.utils.each(lines,function(line,index) {\n\t\t// Remove and count any existing prefix characters\n\t\tvar count = 0;\n\t\twhile(line.charAt(0) === event.paramObject.character) {\n\t\t\tline = line.substring(1);\n\t\t\tcount++;\n\t\t}\n\t\t// Remove any whitespace\n\t\twhile(line.charAt(0) === \" \") {\n\t\t\tline = line.substring(1);\n\t\t}\n\t\t// We're done if we removed the exact required prefix, otherwise add it\n\t\tif(count !== targetCount) {\n\t\t\t// Apply the prefix\n\t\t\tline = prefix + \" \" + line;\n\t\t}\n\t\t// Save the modified line\n\t\tlines[index] = line;\n\t});\n\t// Stitch the replacement text together and set the selection\n\toperation.replacement = lines.join(\"\\n\");\n\tif(lines.length === 1) {\n\t\toperation.newSelStart = operation.cutStart + operation.replacement.length;\n\t\toperation.newSelEnd = operation.newSelStart;\n\t} else {\n\t\toperation.newSelStart = operation.cutStart;\n\t\toperation.newSelEnd = operation.newSelStart + operation.replacement.length;\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "texteditoroperation"
},
"$:/core/modules/editor/operations/text/replace-all.js": {
"title": "$:/core/modules/editor/operations/text/replace-all.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/text/replace-all.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to replace the entire text\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"replace-all\"] = function(event,operation) {\n\toperation.cutStart = 0;\n\toperation.cutEnd = operation.text.length;\n\toperation.replacement = event.paramObject.text;\n\toperation.newSelStart = 0;\n\toperation.newSelEnd = operation.replacement.length;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "texteditoroperation"
},
"$:/core/modules/editor/operations/text/replace-selection.js": {
"title": "$:/core/modules/editor/operations/text/replace-selection.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/text/replace-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to replace the selection\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"replace-selection\"] = function(event,operation) {\n\toperation.replacement = event.paramObject.text;\n\toperation.cutStart = operation.selStart;\n\toperation.cutEnd = operation.selEnd;\n\toperation.newSelStart = operation.selStart;\n\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "texteditoroperation"
},
"$:/core/modules/editor/operations/text/save-selection.js": {
"title": "$:/core/modules/editor/operations/text/save-selection.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/text/save-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to save the current selection in a specified tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"save-selection\"] = function(event,operation) {\n\tvar tiddler = event.paramObject.tiddler,\n\t\tfield = event.paramObject.field || \"text\";\n\tif(tiddler && field) {\n\t\tthis.wiki.setText(tiddler,field,null,operation.text.substring(operation.selStart,operation.selEnd));\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "texteditoroperation"
},
"$:/core/modules/editor/operations/text/wrap-lines.js": {
"title": "$:/core/modules/editor/operations/text/wrap-lines.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/text/wrap-lines.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to wrap the selected lines with a prefix and suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"wrap-lines\"] = function(event,operation) {\n\t// Cut just past the preceding line break, or the start of the text\n\toperation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart);\n\t// Cut to just past the following line break, or to the end of the text\n\toperation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd);\n\t// Add the prefix and suffix\n\toperation.replacement = event.paramObject.prefix + \"\\n\" +\n\t\t\t\toperation.text.substring(operation.cutStart,operation.cutEnd) + \"\\n\" +\n\t\t\t\tevent.paramObject.suffix + \"\\n\";\n\toperation.newSelStart = operation.cutStart + event.paramObject.prefix.length + 1;\n\toperation.newSelEnd = operation.newSelStart + (operation.cutEnd - operation.cutStart);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "texteditoroperation"
},
"$:/core/modules/editor/operations/text/wrap-selection.js": {
"title": "$:/core/modules/editor/operations/text/wrap-selection.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/text/wrap-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to wrap the selection with the specified prefix and suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"wrap-selection\"] = function(event,operation) {\n\tif(operation.selStart === operation.selEnd) {\n\t\t// No selection; check if we're within the prefix/suffix\n\t\tif(operation.text.substring(operation.selStart - event.paramObject.prefix.length,operation.selStart + event.paramObject.suffix.length) === event.paramObject.prefix + event.paramObject.suffix) {\n\t\t\t// Remove the prefix and suffix\n\t\t\toperation.cutStart = operation.selStart - event.paramObject.prefix.length;\n\t\t\toperation.cutEnd = operation.selEnd + event.paramObject.suffix.length;\n\t\t\toperation.replacement = \"\";\n\t\t\toperation.newSelStart = operation.cutStart;\n\t\t\toperation.newSelEnd = operation.newSelStart;\n\t\t} else {\n\t\t\t// Wrap the cursor instead\n\t\t\toperation.cutStart = operation.selStart;\n\t\t\toperation.cutEnd = operation.selEnd;\n\t\t\toperation.replacement = event.paramObject.prefix + event.paramObject.suffix;\n\t\t\toperation.newSelStart = operation.selStart + event.paramObject.prefix.length;\n\t\t\toperation.newSelEnd = operation.newSelStart;\n\t\t}\n\t} else if(operation.text.substring(operation.selStart,operation.selStart + event.paramObject.prefix.length) === event.paramObject.prefix && operation.text.substring(operation.selEnd - event.paramObject.suffix.length,operation.selEnd) === event.paramObject.suffix) {\n\t\t// Prefix and suffix are already present, so remove them\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t\toperation.replacement = operation.selection.substring(event.paramObject.prefix.length,operation.selection.length - event.paramObject.suffix.length);\n\t\toperation.newSelStart = operation.selStart;\n\t\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n\t} else {\n\t\t// Add the prefix and suffix\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t\toperation.replacement = event.paramObject.prefix + operation.selection + event.paramObject.suffix;\n\t\toperation.newSelStart = operation.selStart;\n\t\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "texteditoroperation"
},
"$:/core/modules/filters/addprefix.js": {
"title": "$:/core/modules/filters/addprefix.js",
"text": "/*\\\ntitle: $:/core/modules/filters/addprefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for adding a prefix to each title in the list. This is\nespecially useful in contexts where only a filter expression is allowed\nand macro substitution isn't available.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.addprefix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(operator.operand + title);\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/addsuffix.js": {
"title": "$:/core/modules/filters/addsuffix.js",
"text": "/*\\\ntitle: $:/core/modules/filters/addsuffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for adding a suffix to each title in the list. This is\nespecially useful in contexts where only a filter expression is allowed\nand macro substitution isn't available.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.addsuffix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title + operator.operand);\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/after.js": {
"title": "$:/core/modules/filters/after.js",
"text": "/*\\\ntitle: $:/core/modules/filters/after.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler from the current list that is after the tiddler named in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.after = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar index = results.indexOf(operator.operand);\n\tif(index === -1 || index > (results.length - 2)) {\n\t\treturn [];\n\t} else {\n\t\treturn [results[index + 1]];\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/all/current.js": {
"title": "$:/core/modules/filters/all/current.js",
"text": "/*\\\ntitle: $:/core/modules/filters/all/current.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[current]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.current = function(source,prefix,options) {\n\tvar currTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\");\n\tif(currTiddlerTitle) {\n\t\treturn [currTiddlerTitle];\n\t} else {\n\t\treturn [];\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "allfilteroperator"
},
"$:/core/modules/filters/all/missing.js": {
"title": "$:/core/modules/filters/all/missing.js",
"text": "/*\\\ntitle: $:/core/modules/filters/all/missing.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[missing]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.missing = function(source,prefix,options) {\n\treturn options.wiki.getMissingTitles();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "allfilteroperator"
},
"$:/core/modules/filters/all/orphans.js": {
"title": "$:/core/modules/filters/all/orphans.js",
"text": "/*\\\ntitle: $:/core/modules/filters/all/orphans.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[orphans]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.orphans = function(source,prefix,options) {\n\treturn options.wiki.getOrphanTitles();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "allfilteroperator"
},
"$:/core/modules/filters/all/shadows.js": {
"title": "$:/core/modules/filters/all/shadows.js",
"text": "/*\\\ntitle: $:/core/modules/filters/all/shadows.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[shadows]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadows = function(source,prefix,options) {\n\treturn options.wiki.allShadowTitles();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "allfilteroperator"
},
"$:/core/modules/filters/all/tags.js": {
"title": "$:/core/modules/filters/all/tags.js",
"text": "/*\\\ntitle: $:/core/modules/filters/all/tags.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[tags]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tags = function(source,prefix,options) {\n\treturn Object.keys(options.wiki.getTagMap());\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "allfilteroperator"
},
"$:/core/modules/filters/all/tiddlers.js": {
"title": "$:/core/modules/filters/all/tiddlers.js",
"text": "/*\\\ntitle: $:/core/modules/filters/all/tiddlers.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[tiddlers]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tiddlers = function(source,prefix,options) {\n\treturn options.wiki.allTitles();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "allfilteroperator"
},
"$:/core/modules/filters/all.js": {
"title": "$:/core/modules/filters/all.js",
"text": "/*\\\ntitle: $:/core/modules/filters/all.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for selecting tiddlers\n\n[all[shadows+tiddlers]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar allFilterOperators;\n\nfunction getAllFilterOperators() {\n\tif(!allFilterOperators) {\n\t\tallFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"allfilteroperator\",allFilterOperators);\n\t}\n\treturn allFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.all = function(source,operator,options) {\n\t// Get our suboperators\n\tvar allFilterOperators = getAllFilterOperators();\n\t// Cycle through the suboperators accumulating their results\n\tvar results = [],\n\t\tsubops = operator.operand.split(\"+\");\n\t// Check for common optimisations\n\tif(subops.length === 1 && subops[0] === \"\") {\n\t\treturn source;\n\t} else if(subops.length === 1 && subops[0] === \"tiddlers\") {\n\t\treturn options.wiki.each;\n\t} else if(subops.length === 1 && subops[0] === \"shadows\") {\n\t\treturn options.wiki.eachShadow;\n\t} else if(subops.length === 2 && subops[0] === \"tiddlers\" && subops[1] === \"shadows\") {\n\t\treturn options.wiki.eachTiddlerPlusShadows;\n\t} else if(subops.length === 2 && subops[0] === \"shadows\" && subops[1] === \"tiddlers\") {\n\t\treturn options.wiki.eachShadowPlusTiddlers;\n\t}\n\t// Do it the hard way\n\tfor(var t=0; t<subops.length; t++) {\n\t\tvar subop = allFilterOperators[subops[t]];\n\t\tif(subop) {\n\t\t\t$tw.utils.pushTop(results,subop(source,operator.prefix,options));\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/backlinks.js": {
"title": "$:/core/modules/filters/backlinks.js",
"text": "/*\\\ntitle: $:/core/modules/filters/backlinks.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning all the backlinks from a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.backlinks = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlerBacklinks(title));\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/before.js": {
"title": "$:/core/modules/filters/before.js",
"text": "/*\\\ntitle: $:/core/modules/filters/before.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler from the current list that is before the tiddler named in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.before = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar index = results.indexOf(operator.operand);\n\tif(index <= 0) {\n\t\treturn [];\n\t} else {\n\t\treturn [results[index - 1]];\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/commands.js": {
"title": "$:/core/modules/filters/commands.js",
"text": "/*\\\ntitle: $:/core/modules/filters/commands.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the commands available in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.commands = function(source,operator,options) {\n\tvar results = [];\n\t$tw.utils.each($tw.commands,function(commandInfo,name) {\n\t\tresults.push(name);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/compare.js": {
"title": "$:/core/modules/filters/compare.js",
"text": "/*\\\ntitle: $:/core/modules/filters/compare.js\ntype: application/javascript\nmodule-type: filteroperator\n\nGeneral purpose comparison operator\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.compare = function(source,operator,options) {\n\tvar suffixes = operator.suffixes || [],\n\t\ttype = (suffixes[0] || [])[0],\n\t\tmode = (suffixes[1] || [])[0],\n\t\ttypeFn = types[type] || types.number,\n\t\tmodeFn = modes[mode] || modes.eq,\n\t\tinvert = operator.prefix === \"!\",\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tif(modeFn(typeFn(title,operator.operand)) !== invert) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\nvar types = {\n\t\"number\": function(a,b) {\n\t\treturn compare($tw.utils.parseNumber(a),$tw.utils.parseNumber(b));\n\t},\n\t\"integer\": function(a,b) {\n\t\treturn compare($tw.utils.parseInt(a),$tw.utils.parseInt(b));\n\t},\n\t\"string\": function(a,b) {\n\t\treturn compare(\"\" + a,\"\" +b);\n\t},\n\t\"date\": function(a,b) {\n\t\tvar dateA = $tw.utils.parseDate(a),\n\t\t\tdateB = $tw.utils.parseDate(b);\n\t\tif(!isFinite(dateA)) {\n\t\t\tdateA = new Date(0);\n\t\t}\n\t\tif(!isFinite(dateB)) {\n\t\t\tdateB = new Date(0);\n\t\t}\n\t\treturn compare(dateA,dateB);\n\t},\n\t\"version\": function(a,b) {\n\t\treturn $tw.utils.compareVersions(a,b);\n\t}\n};\n\nfunction compare(a,b) {\n\tif(a > b) {\n\t\treturn +1;\n\t} else if(a < b) {\n\t\treturn -1;\n\t} else {\n\t\treturn 0;\n\t}\n};\n\nvar modes = {\n\t\"eq\": function(value) {return value === 0;},\n\t\"ne\": function(value) {return value !== 0;},\n\t\"gteq\": function(value) {return value >= 0;},\n\t\"gt\": function(value) {return value > 0;},\n\t\"lteq\": function(value) {return value <= 0;},\n\t\"lt\": function(value) {return value < 0;}\n}\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/contains.js": {
"title": "$:/core/modules/filters/contains.js",
"text": "/*\\\ntitle: $:/core/modules/filters/contains.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for finding values in array fields\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.contains = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldname = (operator.suffix || \"list\").toLowerCase();\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\tvar list = tiddler.getFieldList(fieldname);\n\t\t\t\tif(list.indexOf(operator.operand) === -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\tvar list = tiddler.getFieldList(fieldname);\n\t\t\t\tif(list.indexOf(operator.operand) !== -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/count.js": {
"title": "$:/core/modules/filters/count.js",
"text": "/*\\\ntitle: $:/core/modules/filters/count.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the number of entries in the current list.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.count = function(source,operator,options) {\n\tvar count = 0;\n\tsource(function(tiddler,title) {\n\t\tcount++;\n\t});\n\treturn [count + \"\"];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/days.js": {
"title": "$:/core/modules/filters/days.js",
"text": "/*\\\ntitle: $:/core/modules/filters/days.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects tiddlers with a specified date field within a specified date interval.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.days = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName = operator.suffix || \"modified\",\n\t\tdayInterval = (parseInt(operator.operand,10)||0),\n\t\tdayIntervalSign = $tw.utils.sign(dayInterval),\n\t\ttargetTimeStamp = (new Date()).setHours(0,0,0,0) + 1000*60*60*24*dayInterval,\n\t\tisWithinDays = function(dateField) {\n\t\t\tvar sign = $tw.utils.sign(targetTimeStamp - (new Date(dateField)).setHours(0,0,0,0));\n\t\t\treturn sign === 0 || sign === dayIntervalSign;\n\t\t};\n\n\tif(operator.prefix === \"!\") {\n\t\ttargetTimeStamp = targetTimeStamp - 1000*60*60*24*dayIntervalSign;\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\t\tif(!isWithinDays($tw.utils.parseDate(tiddler.fields[fieldName]))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\t\tif(isWithinDays($tw.utils.parseDate(tiddler.fields[fieldName]))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/each.js": {
"title": "$:/core/modules/filters/each.js",
"text": "/*\\\ntitle: $:/core/modules/filters/each.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects one tiddler for each unique value of the specified field.\nWith suffix \"list\", selects all tiddlers that are values in a specified list field.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.each = function(source,operator,options) {\n\tvar results =[] ,\n\tvalue,values = {},\n\tfield = operator.operand || \"title\";\n\tif(operator.suffix === \"value\" && field === \"title\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!$tw.utils.hop(values,title)) {\n\t\t\t\tvalues[title] = true;\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else if(operator.suffix !== \"list-item\") {\n\t\tif(field === \"title\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && !$tw.utils.hop(values,title)) {\n\t\t\t\t\tvalues[title] = true;\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvalue = tiddler.getFieldString(field);\n\t\t\t\t\tif(!$tw.utils.hop(values,value)) {\n\t\t\t\t\t\tvalues[value] = true;\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\t$tw.utils.each(\n\t\t\t\t\toptions.wiki.getTiddlerList(title,field),\n\t\t\t\t\tfunction(value) {\n\t\t\t\t\t\tif(!$tw.utils.hop(values,value)) {\n\t\t\t\t\t\t\tvalues[value] = true;\n\t\t\t\t\t\t\tresults.push(value);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/eachday.js": {
"title": "$:/core/modules/filters/eachday.js",
"text": "/*\\\ntitle: $:/core/modules/filters/eachday.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects one tiddler for each unique day covered by the specified date field\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.eachday = function(source,operator,options) {\n\tvar results = [],\n\t\tvalues = [],\n\t\tfieldName = operator.operand || \"modified\";\n\t// Function to convert a date/time to a date integer\n\tvar toDate = function(value) {\n\t\tvalue = (new Date(value)).setHours(0,0,0,0);\n\t\treturn value+0;\n\t};\n\tsource(function(tiddler,title) {\n\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\tvar value = toDate($tw.utils.parseDate(tiddler.fields[fieldName]));\n\t\t\tif(values.indexOf(value) === -1) {\n\t\t\t\tvalues.push(value);\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/editiondescription.js": {
"title": "$:/core/modules/filters/editiondescription.js",
"text": "/*\\\ntitle: $:/core/modules/filters/editiondescription.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the descriptions of the specified edition names\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.editiondescription = function(source,operator,options) {\n\tvar results = [],\n\t\teditionInfo = $tw.utils.getEditionInfo();\n\tif(editionInfo) {\n\t\tsource(function(tiddler,title) {\n\t\t\tif($tw.utils.hop(editionInfo,title)) {\n\t\t\t\tresults.push(editionInfo[title].description || \"\");\t\t\t\t\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/editions.js": {
"title": "$:/core/modules/filters/editions.js",
"text": "/*\\\ntitle: $:/core/modules/filters/editions.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the available editions in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.editions = function(source,operator,options) {\n\tvar results = [],\n\t\teditionInfo = $tw.utils.getEditionInfo();\n\tif(editionInfo) {\n\t\t$tw.utils.each(editionInfo,function(info,name) {\n\t\t\tresults.push(name);\n\t\t});\n\t}\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/else.js": {
"title": "$:/core/modules/filters/else.js",
"text": "/*\\\ntitle: $:/core/modules/filters/else.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing an empty input list with a constant, passing a non-empty input list straight through\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.else = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tif(results.length === 0) {\n\t\treturn [operator.operand];\n\t} else {\n\t\treturn results;\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/decodeuricomponent.js": {
"title": "$:/core/modules/filters/decodeuricomponent.js",
"text": "/*\\\ntitle: $:/core/modules/filters/decodeuricomponent.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for applying decodeURIComponent() to each item.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter functions\n*/\n\nexports.decodeuricomponent = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar value = title;\n\t\ttry {\n\t\t\tvalue = decodeURIComponent(title);\n\t\t} catch(e) {\n\t\t}\n\t\tresults.push(value);\n\t});\n\treturn results;\n};\n\nexports.encodeuricomponent = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(encodeURIComponent(title));\n\t});\n\treturn results;\n};\n\nexports.decodeuri = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar value = title;\n\t\ttry {\n\t\t\tvalue = decodeURI(title);\n\t\t} catch(e) {\n\t\t}\n\t\tresults.push(value);\n\t});\n\treturn results;\n};\n\nexports.encodeuri = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(encodeURI(title));\n\t});\n\treturn results;\n};\n\nexports.decodehtml = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.htmlDecode(title));\n\t});\n\treturn results;\n};\n\nexports.encodehtml = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.htmlEncode(title));\n\t});\n\treturn results;\n};\n\nexports.stringify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.stringify(title));\n\t});\n\treturn results;\n};\n\nexports.jsonstringify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.jsonStringify(title));\n\t});\n\treturn results;\n};\n\nexports.escaperegexp = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.escapeRegExp(title));\n\t});\n\treturn results;\n};\n\nexports.escapecss = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t// escape any character with a special meaning in CSS using CSS.escape()\n\t\tresults.push(CSS.escape(title));\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/enlist.js": {
"title": "$:/core/modules/filters/enlist.js",
"text": "/*\\\ntitle: $:/core/modules/filters/enlist.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning its operand parsed as a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.enlist = function(source,operator,options) {\n\tvar allowDuplicates = false;\n\tswitch(operator.suffix) {\n\t\tcase \"raw\":\n\t\t\tallowDuplicates = true;\n\t\t\tbreak;\n\t\tcase \"dedupe\":\n\t\t\tallowDuplicates = false;\n\t\t\tbreak;\n\t}\n\tvar list = $tw.utils.parseStringArray(operator.operand,allowDuplicates);\n\tif(operator.prefix === \"!\") {\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t\treturn results;\n\t} else {\n\t\treturn list;\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/field.js": {
"title": "$:/core/modules/filters/field.js",
"text": "/*\\\ntitle: $:/core/modules/filters/field.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for comparing fields for equality\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.field = function(source,operator,options) {\n\tvar results = [],indexedResults,\n\t\tfieldname = (operator.suffix || operator.operator || \"title\").toLowerCase();\n\tif(operator.prefix === \"!\") {\n\t\tif(operator.regexp) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && !operator.regexp.exec(text)) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && text !== operator.operand) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tif(operator.regexp) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && !!operator.regexp.exec(text)) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tif(source.byField && operator.operand) {\n\t\t\t\tindexedResults = source.byField(fieldname,operator.operand);\n\t\t\t\tif(indexedResults) {\n\t\t\t\t\treturn indexedResults\n\t\t\t\t}\n\t\t\t}\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && text === operator.operand) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/fields.js": {
"title": "$:/core/modules/filters/fields.js",
"text": "/*\\\ntitle: $:/core/modules/filters/fields.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the fields on the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.fields = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName,\n\t\tsuffixes = (operator.suffixes || [])[0] || [],\n\t\toperand = $tw.utils.parseStringArray(operator.operand);\n\t\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tif(suffixes.indexOf(\"include\") !== -1) {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t(operand.indexOf(fieldName) !== -1) ? $tw.utils.pushTop(results,fieldName) : \"\";\n\t\t\t\t}\n\t\t\t} else if (suffixes.indexOf(\"exclude\") !== -1) {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t(operand.indexOf(fieldName) !== -1) ? \"\" : $tw.utils.pushTop(results,fieldName);\n\t\t\t\t}\n\t\t\t} // else if\n\t\t\telse {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t$tw.utils.pushTop(results,fieldName);\n\t\t\t\t}\n\t\t\t} // else\n\t\t} // if (tiddler)\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/get.js": {
"title": "$:/core/modules/filters/get.js",
"text": "/*\\\ntitle: $:/core/modules/filters/get.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing tiddler titles by the value of the field specified in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.get = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tvar value = tiddler.getFieldString(operator.operand);\n\t\t\tif(value) {\n\t\t\t\tresults.push(value);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/getindex.js": {
"title": "$:/core/modules/filters/getindex.js",
"text": "/*\\\ntitle: $:/core/modules/filters/getindex.js\ntype: application/javascript\nmodule-type: filteroperator\n\nreturns the value at a given index of datatiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.getindex = function(source,operator,options) {\n\tvar data,title,results = [];\n\tif(operator.operand){\n\t\tsource(function(tiddler,title) {\n\t\t\ttitle = tiddler ? tiddler.fields.title : title;\n\t\t\tdata = options.wiki.extractTiddlerDataItem(tiddler,operator.operand);\n\t\t\tif(data) {\n\t\t\t\tresults.push(data);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/getvariable.js": {
"title": "$:/core/modules/filters/getvariable.js",
"text": "/*\\\ntitle: $:/core/modules/filters/getvariable.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing input values by the value of the variable with the same name, or blank if the variable is missing\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.getvariable = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.widget.getVariable(title) || \"\");\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/has.js": {
"title": "$:/core/modules/filters/has.js",
"text": "/*\\\ntitle: $:/core/modules/filters/has.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a tiddler has the specified field or index\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.has = function(source,operator,options) {\n\tvar results = [],\n\t\tinvert = operator.prefix === \"!\";\n\n\tif(operator.suffix === \"field\") {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || (tiddler && (!$tw.utils.hop(tiddler.fields,operator.operand)))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,operator.operand)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\telse if(operator.suffix === \"index\") {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || (tiddler && (!$tw.utils.hop($tw.wiki.getTiddlerDataCached(tiddler,Object.create(null)),operator.operand)))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop($tw.wiki.getTiddlerDataCached(tiddler,Object.create(null)),operator.operand)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\telse {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || !$tw.utils.hop(tiddler.fields,operator.operand) || (tiddler.fields[operator.operand] === \"\")) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,operator.operand) && !(tiddler.fields[operator.operand] === \"\" || tiddler.fields[operator.operand].length === 0)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\t\t\t\t\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/haschanged.js": {
"title": "$:/core/modules/filters/haschanged.js",
"text": "/*\\\ntitle: $:/core/modules/filters/haschanged.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returns tiddlers from the list that have a non-zero changecount.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.haschanged = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.getChangeCount(title) === 0) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.getChangeCount(title) > 0) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/indexes.js": {
"title": "$:/core/modules/filters/indexes.js",
"text": "/*\\\ntitle: $:/core/modules/filters/indexes.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the indexes of a data tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.indexes = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar data = options.wiki.getTiddlerDataCached(title);\n\t\tif(data) {\n\t\t\t$tw.utils.pushTop(results,Object.keys(data));\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/insertbefore.js": {
"title": "$:/core/modules/filters/insertbefore.js",
"text": "/*\\\ntitle: $:/core/modules/filters/insertbefore.js\ntype: application/javascript\nmodule-type: filteroperator\n\nInsert an item before another item in a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOrder a list\n*/\nexports.insertbefore = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar target = options.widget && options.widget.getVariable(operator.suffix || \"currentTiddler\");\n\tif(target !== operator.operand) {\n\t\t// Remove the entry from the list if it is present\n\t\tvar pos = results.indexOf(operator.operand);\n\t\tif(pos !== -1) {\n\t\t\tresults.splice(pos,1);\n\t\t}\n\t\t// Insert the entry before the target marker\n\t\tpos = results.indexOf(target);\n\t\tif(pos !== -1) {\n\t\t\tresults.splice(pos,0,operator.operand);\n\t\t} else {\n\t\t\tresults.push(operator.operand);\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/is/binary.js": {
"title": "$:/core/modules/filters/is/binary.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/binary.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[binary]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.binary = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isBinaryTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isBinaryTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/blank.js": {
"title": "$:/core/modules/filters/is/blank.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/blank.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[blank]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.blank = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!title) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/current.js": {
"title": "$:/core/modules/filters/is/current.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/current.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[current]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.current = function(source,prefix,options) {\n\tvar results = [],\n\t\tcurrTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\");\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title !== currTiddlerTitle) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title === currTiddlerTitle) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/image.js": {
"title": "$:/core/modules/filters/is/image.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/image.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[image]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.image = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isImageTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isImageTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/missing.js": {
"title": "$:/core/modules/filters/is/missing.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/missing.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[missing]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.missing = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/orphan.js": {
"title": "$:/core/modules/filters/is/orphan.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/orphan.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[orphan]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.orphan = function(source,prefix,options) {\n\tvar results = [],\n\t\torphanTitles = options.wiki.getOrphanTitles();\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(orphanTitles.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(orphanTitles.indexOf(title) !== -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/shadow.js": {
"title": "$:/core/modules/filters/is/shadow.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/shadow.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[shadow]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadow = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isShadowTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isShadowTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/system.js": {
"title": "$:/core/modules/filters/is/system.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/system.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[system]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.system = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isSystemTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isSystemTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/tag.js": {
"title": "$:/core/modules/filters/is/tag.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/tag.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[tag]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tag = function(source,prefix,options) {\n\tvar results = [],\n\t\ttagMap = options.wiki.getTagMap();\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!$tw.utils.hop(tagMap,title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif($tw.utils.hop(tagMap,title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/tiddler.js": {
"title": "$:/core/modules/filters/is/tiddler.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/tiddler.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[tiddler]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tiddler = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is/variable.js": {
"title": "$:/core/modules/filters/is/variable.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/variable.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[variable]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.variable = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!(title in options.widget.variables)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title in options.widget.variables) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "isfilteroperator"
},
"$:/core/modules/filters/is.js": {
"title": "$:/core/modules/filters/is.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking tiddler properties\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar isFilterOperators;\n\nfunction getIsFilterOperators() {\n\tif(!isFilterOperators) {\n\t\tisFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"isfilteroperator\",isFilterOperators);\n\t}\n\treturn isFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.is = function(source,operator,options) {\n\t// Dispatch to the correct isfilteroperator\n\tvar isFilterOperators = getIsFilterOperators();\n\tif(operator.operand) {\n\t\tvar isFilterOperator = isFilterOperators[operator.operand];\n\t\tif(isFilterOperator) {\n\t\t\treturn isFilterOperator(source,operator.prefix,options);\n\t\t} else {\n\t\t\treturn [$tw.language.getString(\"Error/IsFilterOperator\")];\n\t\t}\n\t} else {\n\t\t// Return all tiddlers if the operand is missing\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t\treturn results;\n\t}\n};\n\n})();",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/limit.js": {
"title": "$:/core/modules/filters/limit.js",
"text": "/*\\\ntitle: $:/core/modules/filters/limit.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for chopping the results to a specified maximum number of entries\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.limit = function(source,operator,options) {\n\tvar results = [];\n\t// Convert to an array\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\t// Slice the array if necessary\n\tvar limit = Math.min(results.length,parseInt(operator.operand,10));\n\tif(operator.prefix === \"!\") {\n\t\tresults = results.slice(-limit);\n\t} else {\n\t\tresults = results.slice(0,limit);\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/links.js": {
"title": "$:/core/modules/filters/links.js",
"text": "/*\\\ntitle: $:/core/modules/filters/links.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning all the links from a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.links = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlerLinks(title));\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/list.js": {
"title": "$:/core/modules/filters/list.js",
"text": "/*\\\ntitle: $:/core/modules/filters/list.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddlers whose title is listed in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.list = function(source,operator,options) {\n\tvar results = [],\n\t\ttr = $tw.utils.parseTextReference(operator.operand),\n\t\tcurrTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tlist = options.wiki.getTiddlerList(tr.title || currTiddlerTitle,tr.field,tr.index);\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tresults = list;\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/listed.js": {
"title": "$:/core/modules/filters/listed.js",
"text": "/*\\\ntitle: $:/core/modules/filters/listed.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all tiddlers that have the selected tiddlers in a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.listed = function(source,operator,options) {\n\tvar field = operator.operand || \"list\",\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.findListingsOfTiddler(title,field));\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/listops.js": {
"title": "$:/core/modules/filters/listops.js",
"text": "/*\\\ntitle: $:/core/modules/filters/listops.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for manipulating the current selection list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOrder a list\n*/\nexports.order = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.operand.toLowerCase() === \"reverse\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.unshift(title);\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t}\n\treturn results;\n};\n\n/*\nReverse list\n*/\nexports.reverse = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.unshift(title);\n\t});\n\treturn results;\n};\n\n/*\nFirst entry/entries in list\n*/\nexports.first = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(0,count);\n};\n\n/*\nLast entry/entries in list\n*/\nexports.last = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(-count);\n};\n\n/*\nAll but the first entry/entries of the list\n*/\nexports.rest = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(count);\n};\nexports.butfirst = exports.rest;\nexports.bf = exports.rest;\n\n/*\nAll but the last entry/entries of the list\n*/\nexports.butlast = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(0,-count);\n};\nexports.bl = exports.butlast;\n\n/*\nThe nth member of the list\n*/\nexports.nth = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(count - 1,count);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/lookup.js": {
"title": "$:/core/modules/filters/lookup.js",
"text": "/*\\\ntitle: $:/core/modules/filters/lookup.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that looks up values via a title prefix\n\n[lookup:<field>[<prefix>]]\n\nPrepends the prefix to the selected items and returns the specified field value\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.lookup = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.wiki.getTiddlerText(operator.operand + title) || options.wiki.getTiddlerText(operator.operand + operator.suffix));\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/match.js": {
"title": "$:/core/modules/filters/match.js",
"text": "/*\\\ntitle: $:/core/modules/filters/match.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title matches a string\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.match = function(source,operator,options) {\n\tvar results = [],\n\t\tsuffixes = (operator.suffixes || [])[0] || [];\n\tif(suffixes.indexOf(\"caseinsensitive\") !== -1) {\n\t\tif(operator.prefix === \"!\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title.toLowerCase() !== (operator.operand || \"\").toLowerCase()) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title.toLowerCase() === (operator.operand || \"\").toLowerCase()) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tif(operator.prefix === \"!\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title !== operator.operand) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title === operator.operand) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/math.js": {
"title": "$:/core/modules/filters/math.js",
"text": "/*\\\ntitle: $:/core/modules/filters/math.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for math. Unary/binary operators work on each item in turn, and return a new item list.\n\nSum/product/maxall/minall operate on the entire list, returning a single item.\n\nNote that strings are converted to numbers automatically. Trailing non-digits are ignored.\n\n* \"\" converts to 0\n* \"12kk\" converts to 12\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.negate = makeNumericBinaryOperator(\n\tfunction(a) {return -a}\n);\n\nexports.abs = makeNumericBinaryOperator(\n\tfunction(a) {return Math.abs(a)}\n);\n\nexports.ceil = makeNumericBinaryOperator(\n\tfunction(a) {return Math.ceil(a)}\n);\n\nexports.floor = makeNumericBinaryOperator(\n\tfunction(a) {return Math.floor(a)}\n);\n\nexports.round = makeNumericBinaryOperator(\n\tfunction(a) {return Math.round(a)}\n);\n\nexports.trunc = makeNumericBinaryOperator(\n\tfunction(a) {return Math.trunc(a)}\n);\n\nexports.untrunc = makeNumericBinaryOperator(\n\tfunction(a) {return Math.ceil(Math.abs(a)) * Math.sign(a)}\n);\n\nexports.sign = makeNumericBinaryOperator(\n\tfunction(a) {return Math.sign(a)}\n);\n\nexports.add = makeNumericBinaryOperator(\n\tfunction(a,b) {return a + b;}\n);\n\nexports.subtract = makeNumericBinaryOperator(\n\tfunction(a,b) {return a - b;}\n);\n\nexports.multiply = makeNumericBinaryOperator(\n\tfunction(a,b) {return a * b;}\n);\n\nexports.divide = makeNumericBinaryOperator(\n\tfunction(a,b) {return a / b;}\n);\n\nexports.remainder = makeNumericBinaryOperator(\n\tfunction(a,b) {return a % b;}\n);\n\nexports.max = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.max(a,b);}\n);\n\nexports.min = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.min(a,b);}\n);\n\nexports.fixed = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toFixed.call(a,Math.min(Math.max(b,0),100));}\n);\n\nexports.precision = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toPrecision.call(a,Math.min(Math.max(b,1),100));}\n);\n\nexports.exponential = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toExponential.call(a,Math.min(Math.max(b,0),100));}\n);\n\nexports.sum = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return accumulator + value},\n\t0 // Initial value\n);\n\nexports.product = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return accumulator * value},\n\t1 // Initial value\n);\n\nexports.maxall = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return Math.max(accumulator,value)},\n\t-Infinity // Initial value\n);\n\nexports.minall = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return Math.min(accumulator,value)},\n\tInfinity // Initial value\n);\n\nfunction makeNumericBinaryOperator(fnCalc) {\n\treturn function(source,operator,options) {\n\t\tvar result = [],\n\t\t\tnumOperand = $tw.utils.parseNumber(operator.operand);\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push($tw.utils.stringifyNumber(fnCalc($tw.utils.parseNumber(title),numOperand)));\n\t\t});\n\t\treturn result;\n\t};\n}\n\nfunction makeNumericReducingOperator(fnCalc,initialValue) {\n\tinitialValue = initialValue || 0;\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push(title);\n\t\t});\n\t\treturn [$tw.utils.stringifyNumber(result.reduce(function(accumulator,currentValue) {\n\t\t\treturn fnCalc(accumulator,$tw.utils.parseNumber(currentValue));\n\t\t},initialValue))];\n\t};\n}\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/minlength.js": {
"title": "$:/core/modules/filters/minlength.js",
"text": "/*\\\ntitle: $:/core/modules/filters/minlength.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for filtering out titles that don't meet the minimum length in the operand\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.minlength = function(source,operator,options) {\n\tvar results = [],\n\t\tminLength = parseInt(operator.operand || \"\",10) || 0;\n\tsource(function(tiddler,title) {\n\t\tif(title.length >= minLength) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/modules.js": {
"title": "$:/core/modules/filters/modules.js",
"text": "/*\\\ntitle: $:/core/modules/filters/modules.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the titles of the modules of a given type in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.modules = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.each($tw.modules.types[title],function(moduleInfo,moduleName) {\n\t\t\tresults.push(moduleName);\n\t\t});\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/moduletypes.js": {
"title": "$:/core/modules/filters/moduletypes.js",
"text": "/*\\\ntitle: $:/core/modules/filters/moduletypes.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the module types in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.moduletypes = function(source,operator,options) {\n\tvar results = [];\n\t$tw.utils.each($tw.modules.types,function(moduleInfo,type) {\n\t\tresults.push(type);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/next.js": {
"title": "$:/core/modules/filters/next.js",
"text": "/*\\\ntitle: $:/core/modules/filters/next.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler whose title occurs next in the list supplied in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.next = function(source,operator,options) {\n\tvar results = [],\n\t\tlist = options.wiki.getTiddlerList(operator.operand);\n\tsource(function(tiddler,title) {\n\t\tvar match = list.indexOf(title);\n\t\t// increment match and then test if result is in range\n\t\tmatch++;\n\t\tif(match > 0 && match < list.length) {\n\t\t\tresults.push(list[match]);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/plugintiddlers.js": {
"title": "$:/core/modules/filters/plugintiddlers.js",
"text": "/*\\\ntitle: $:/core/modules/filters/plugintiddlers.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the titles of the shadow tiddlers within a plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.plugintiddlers = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar pluginInfo = options.wiki.getPluginInfo(title) || options.wiki.getTiddlerDataCached(title,{tiddlers:[]});\n\t\tif(pluginInfo && pluginInfo.tiddlers) {\n\t\t\t$tw.utils.each(pluginInfo.tiddlers,function(fields,title) {\n\t\t\t\tresults.push(title);\n\t\t\t});\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/prefix.js": {
"title": "$:/core/modules/filters/prefix.js",
"text": "/*\\\ntitle: $:/core/modules/filters/prefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title starts with a prefix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.prefix = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(0,operator.operand.length) !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(0,operator.operand.length) === operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/previous.js": {
"title": "$:/core/modules/filters/previous.js",
"text": "/*\\\ntitle: $:/core/modules/filters/previous.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler whose title occurs immediately prior in the list supplied in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.previous = function(source,operator,options) {\n\tvar results = [],\n\t\tlist = options.wiki.getTiddlerList(operator.operand);\n\tsource(function(tiddler,title) {\n\t\tvar match = list.indexOf(title);\n\t\t// increment match and then test if result is in range\n\t\tmatch--;\n\t\tif(match >= 0) {\n\t\t\tresults.push(list[match]);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/range.js": {
"title": "$:/core/modules/filters/range.js",
"text": "/*\\\ntitle: $:/core/modules/filters/range.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for generating a numeric range.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.range = function(source,operator,options) {\n\tvar results = [];\n\t// Split the operand into numbers delimited by these symbols\n\tvar parts = operator.operand.split(/[,:;]/g),\n\t\tbeg, end, inc, i, fixed = 0;\n\tfor (i=0; i<parts.length; i++) {\n\t\t// Validate real number\n\t\tif(!/^\\s*[+-]?((\\d+(\\.\\d*)?)|(\\.\\d+))\\s*$/.test(parts[i])) {\n\t\t\treturn [\"range: bad number \\\"\" + parts[i] + \"\\\"\"];\n\t\t}\n\t\t// Count digits; the most precise number determines decimal places in output.\n\t\tvar frac = /\\.\\d+/.exec(parts[i]);\n\t\tif(frac) {\n\t\t\tfixed = Math.max(fixed,frac[0].length-1);\n\t\t}\n\t\tparts[i] = parseFloat(parts[i]);\n\t}\n\tswitch(parts.length) {\n\t\tcase 1:\n\t\t\tend = parts[0];\n\t\t\tif (end >= 1) {\n\t\t\t\tbeg = 1;\n\t\t\t}\n\t\t\telse if (end <= -1) {\n\t\t\t\tbeg = -1;\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tinc = 1;\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tbeg = parts[0];\n\t\t\tend = parts[1];\n\t\t\tinc = 1;\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tbeg = parts[0];\n\t\t\tend = parts[1];\n\t\t\tinc = Math.abs(parts[2]);\n\t\t\tbreak;\n\t}\n\tif(inc === 0) {\n\t\treturn [\"range: increment 0 causes infinite loop\"];\n\t}\n\t// May need to count backwards\n\tvar direction = ((end < beg) ? -1 : 1);\n\tinc *= direction;\n\t// Estimate number of resulting elements\n\tif((end - beg) / inc > 10000) {\n\t\treturn [\"range: too many steps (over 10K)\"];\n\t}\n\t// Avoid rounding error on last step\n\tend += direction * 0.5 * Math.pow(0.1,fixed);\n\tvar safety = 10010;\n\t// Enumerate the range\n\tif (end<beg) {\n\t\tfor(i=beg; i>end; i+=inc) {\n\t\t\tresults.push(i.toFixed(fixed));\n\t\t\tif(--safety<0) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tfor(i=beg; i<end; i+=inc) {\n\t\t\tresults.push(i.toFixed(fixed));\n\t\t\tif(--safety<0) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tif(safety<0) {\n\t\treturn [\"range: unexpectedly large output\"];\n\t}\n\t// Reverse?\n\tif(operator.prefix === \"!\") {\n\t\tresults.reverse();\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/regexp.js": {
"title": "$:/core/modules/filters/regexp.js",
"text": "/*\\\ntitle: $:/core/modules/filters/regexp.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for regexp matching\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.regexp = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldname = (operator.suffix || \"title\").toLowerCase(),\n\t\tregexpString, regexp, flags = \"\", match,\n\t\tgetFieldString = function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\treturn tiddler.getFieldString(fieldname);\n\t\t\t} else if(fieldname === \"title\") {\n\t\t\t\treturn title;\n\t\t\t} else {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t};\n\t// Process flags and construct regexp\n\tregexpString = operator.operand;\n\tmatch = /^\\(\\?([gim]+)\\)/.exec(regexpString);\n\tif(match) {\n\t\tflags = match[1];\n\t\tregexpString = regexpString.substr(match[0].length);\n\t} else {\n\t\tmatch = /\\(\\?([gim]+)\\)$/.exec(regexpString);\n\t\tif(match) {\n\t\t\tflags = match[1];\n\t\t\tregexpString = regexpString.substr(0,regexpString.length - match[0].length);\n\t\t}\n\t}\n\ttry {\n\t\tregexp = new RegExp(regexpString,flags);\n\t} catch(e) {\n\t\treturn [\"\" + e];\n\t}\n\t// Process the incoming tiddlers\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tvar text = getFieldString(tiddler,title);\n\t\t\tif(text !== null) {\n\t\t\t\tif(!regexp.exec(text)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tvar text = getFieldString(tiddler,title);\n\t\t\tif(text !== null) {\n\t\t\t\tif(!!regexp.exec(text)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/removeprefix.js": {
"title": "$:/core/modules/filters/removeprefix.js",
"text": "/*\\\ntitle: $:/core/modules/filters/removeprefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for removing a prefix from each title in the list. Titles that do not start with the prefix are removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.removeprefix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(title.substr(0,operator.operand.length) === operator.operand) {\n\t\t\tresults.push(title.substr(operator.operand.length));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/removesuffix.js": {
"title": "$:/core/modules/filters/removesuffix.js",
"text": "/*\\\ntitle: $:/core/modules/filters/removesuffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for removing a suffix from each title in the list. Titles that do not end with the suffix are removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.removesuffix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(title && title.substr(-operator.operand.length) === operator.operand) {\n\t\t\tresults.push(title.substr(0,title.length - operator.operand.length));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/sameday.js": {
"title": "$:/core/modules/filters/sameday.js",
"text": "/*\\\ntitle: $:/core/modules/filters/sameday.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects tiddlers with a modified date field on the same day as the provided value.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sameday = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName = operator.suffix || \"modified\",\n\t\ttargetDate = (new Date($tw.utils.parseDate(operator.operand))).setHours(0,0,0,0);\n\t// Function to convert a date/time to a date integer\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tif(tiddler.getFieldDay(fieldName) === targetDate) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/search.js": {
"title": "$:/core/modules/filters/search.js",
"text": "/*\\\ntitle: $:/core/modules/filters/search.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for searching for the text in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.search = function(source,operator,options) {\n\tvar invert = operator.prefix === \"!\";\n\tif(operator.suffixes) {\n\t\tvar hasFlag = function(flag) {\n\t\t\t\treturn (operator.suffixes[1] || []).indexOf(flag) !== -1;\n\t\t\t},\n\t\t\texcludeFields = false,\n\t\t\tfieldList = operator.suffixes[0] || [],\n\t\t\tfirstField = fieldList[0] || \"\", \n\t\t\tfirstChar = firstField.charAt(0),\n\t\t\tfields;\n\t\tif(firstChar === \"-\") {\n\t\t\tfields = [firstField.slice(1)].concat(fieldList.slice(1));\n\t\t\texcludeFields = true;\n\t\t} else if(fieldList[0] === \"*\"){\n\t\t\tfields = [];\n\t\t\texcludeFields = true;\n\t\t} else {\n\t\t\tfields = fieldList.slice(0);\n\t\t}\n\t\treturn options.wiki.search(operator.operand,{\n\t\t\tsource: source,\n\t\t\tinvert: invert,\n\t\t\tfield: fields,\n\t\t\texcludeField: excludeFields,\n\t\t\tcaseSensitive: hasFlag(\"casesensitive\"),\n\t\t\tliteral: hasFlag(\"literal\"),\n\t\t\twhitespace: hasFlag(\"whitespace\"),\n\t\t\tanchored: hasFlag(\"anchored\"),\n\t\t\tregexp: hasFlag(\"regexp\"),\n\t\t\twords: hasFlag(\"words\")\n\t\t});\n\t} else {\n\t\treturn options.wiki.search(operator.operand,{\n\t\t\tsource: source,\n\t\t\tinvert: invert\n\t\t});\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/shadowsource.js": {
"title": "$:/core/modules/filters/shadowsource.js",
"text": "/*\\\ntitle: $:/core/modules/filters/shadowsource.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the source plugins for shadow tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadowsource = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar source = options.wiki.getShadowSource(title);\n\t\tif(source) {\n\t\t\t$tw.utils.pushTop(results,source);\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/sort.js": {
"title": "$:/core/modules/filters/sort.js",
"text": "/*\\\ntitle: $:/core/modules/filters/sort.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for sorting\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sort = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",false,false);\n\treturn results;\n};\n\nexports.nsort = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",false,true);\n\treturn results;\n};\n\nexports.sortan = function(source, operator, options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results, operator.operand || \"title\", operator.prefix === \"!\",false,false,true);\n\treturn results;\n};\n\nexports.sortcs = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",true,false);\n\treturn results;\n};\n\nexports.nsortcs = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",true,true);\n\treturn results;\n};\n\nvar prepare_results = function (source) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/splitbefore.js": {
"title": "$:/core/modules/filters/splitbefore.js",
"text": "/*\\\ntitle: $:/core/modules/filters/splitbefore.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that splits each result on the first occurance of the specified separator and returns the unique values.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.splitbefore = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar parts = title.split(operator.operand);\n\t\tif(parts.length === 1) {\n\t\t\t$tw.utils.pushTop(results,parts[0]);\n\t\t} else {\n\t\t\t$tw.utils.pushTop(results,parts[0] + operator.operand);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/storyviews.js": {
"title": "$:/core/modules/filters/storyviews.js",
"text": "/*\\\ntitle: $:/core/modules/filters/storyviews.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the story views in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.storyviews = function(source,operator,options) {\n\tvar results = [],\n\t\tstoryviews = {};\n\t$tw.modules.applyMethods(\"storyview\",storyviews);\n\t$tw.utils.each(storyviews,function(info,name) {\n\t\tresults.push(name);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/strings.js": {
"title": "$:/core/modules/filters/strings.js",
"text": "/*\\\ntitle: $:/core/modules/filters/strings.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for strings. Unary/binary operators work on each item in turn, and return a new item list.\n\nSum/product/maxall/minall operate on the entire list, returning a single item.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.length = makeStringBinaryOperator(\n\tfunction(a) {return [\"\" + (\"\" + a).length];}\n);\n\nexports.uppercase = makeStringBinaryOperator(\n\tfunction(a) {return [(\"\" + a).toUpperCase()];}\n);\n\nexports.lowercase = makeStringBinaryOperator(\n\tfunction(a) {return [(\"\" + a).toLowerCase()];}\n);\n\nexports.sentencecase = makeStringBinaryOperator(\n\tfunction(a) {return [$tw.utils.toSentenceCase(a)];}\n);\n\nexports.titlecase = makeStringBinaryOperator(\n\tfunction(a) {return [$tw.utils.toTitleCase(a)];}\n);\n\nexports.trim = makeStringBinaryOperator(\n\tfunction(a) {return [$tw.utils.trim(a)];}\n);\n\nexports.split = makeStringBinaryOperator(\n\tfunction(a,b) {return (\"\" + a).split(b);}\n);\n\nexports.join = makeStringReducingOperator(\n\tfunction(accumulator,value,operand) {\n\t\tif(accumulator === null) {\n\t\t\treturn value;\n\t\t} else {\n\t\t\treturn accumulator + operand + value;\n\t\t}\n\t},null\n);\n\nfunction makeStringBinaryOperator(fnCalc) {\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tArray.prototype.push.apply(result,fnCalc(title,operator.operand || \"\"));\n\t\t});\n\t\treturn result;\n\t};\n}\n\nfunction makeStringReducingOperator(fnCalc,initialValue) {\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push(title);\n\t\t});\n\t\treturn [result.reduce(function(accumulator,currentValue) {\n\t\t\treturn fnCalc(accumulator,currentValue,operator.operand || \"\");\n\t\t},initialValue) || \"\"];\n\t};\n}\n\nexports.splitregexp = function(source,operator,options) {\n\tvar result = [],\n\t\tsuffix = operator.suffix || \"\",\n\t\tflags = (suffix.indexOf(\"m\") !== -1 ? \"m\" : \"\") + (suffix.indexOf(\"i\") !== -1 ? \"i\" : \"\"),\n\t\tregExp;\n\ttry {\n\t\tregExp = new RegExp(operator.operand || \"\",flags);\t\t\n\t} catch(ex) {\n\t\treturn [\"RegExp error: \" + ex];\n\t}\n\tsource(function(tiddler,title) {\n\t\tArray.prototype.push.apply(result,title.split(regExp));\n\t});\t\t\n\treturn result;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/subfilter.js": {
"title": "$:/core/modules/filters/subfilter.js",
"text": "/*\\\ntitle: $:/core/modules/filters/subfilter.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning its operand evaluated as a filter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.subfilter = function(source,operator,options) {\n\tvar list = options.wiki.filterTiddlers(operator.operand,options.widget,source);\n\tif(operator.prefix === \"!\") {\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t\treturn results;\n\t} else {\n\t\treturn list;\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/subtiddlerfields.js": {
"title": "$:/core/modules/filters/subtiddlerfields.js",
"text": "/*\\\ntitle: $:/core/modules/filters/subtiddlerfields.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the fields on the selected subtiddlers of the plugin named in the operand\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.subtiddlerfields = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar subtiddler = options.wiki.getSubTiddler(operator.operand,title);\n\t\tif(subtiddler) {\n\t\t\tfor(var fieldName in subtiddler.fields) {\n\t\t\t\t$tw.utils.pushTop(results,fieldName);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/suffix.js": {
"title": "$:/core/modules/filters/suffix.js",
"text": "/*\\\ntitle: $:/core/modules/filters/suffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title ends with a suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.suffix = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(-operator.operand.length) !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(-operator.operand.length) === operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/tag.js": {
"title": "$:/core/modules/filters/tag.js",
"text": "/*\\\ntitle: $:/core/modules/filters/tag.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking for the presence of a tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tag = function(source,operator,options) {\n\tvar results = [],indexedResults;\n\tif((operator.suffix || \"\").toLowerCase() === \"strict\" && !operator.operand) {\n\t\t// New semantics:\n\t\t// Always return copy of input if operator.operand is missing\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t} else {\n\t\t// Old semantics:\n\t\tvar tiddlers;\n\t\tif(operator.prefix === \"!\") {\n\t\t\t// Returns a copy of the input if operator.operand is missing\n\t\t\ttiddlers = options.wiki.getTiddlersWithTag(operator.operand);\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddlers.indexOf(title) === -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t// Returns empty results if operator.operand is missing\n\t\t\tif(source.byTag) {\n\t\t\t\tindexedResults = source.byTag(operator.operand);\n\t\t\t\tif(indexedResults) {\n\t\t\t\t\treturn indexedResults;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttiddlers = options.wiki.getTiddlersWithTag(operator.operand);\n\t\t\t\tsource(function(tiddler,title) {\n\t\t\t\t\tif(tiddlers.indexOf(title) !== -1) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tresults = options.wiki.sortByList(results,operator.operand);\n\t\t\t}\n\t\t}\t\t\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/tagging.js": {
"title": "$:/core/modules/filters/tagging.js",
"text": "/*\\\ntitle: $:/core/modules/filters/tagging.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all tiddlers that are tagged with the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tagging = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlersWithTag(title));\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/tags.js": {
"title": "$:/core/modules/filters/tags.js",
"text": "/*\\\ntitle: $:/core/modules/filters/tags.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all the tags of the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tags = function(source,operator,options) {\n\tvar tags = {};\n\tsource(function(tiddler,title) {\n\t\tvar t, length;\n\t\tif(tiddler && tiddler.fields.tags) {\n\t\t\tfor(t=0, length=tiddler.fields.tags.length; t<length; t++) {\n\t\t\t\ttags[tiddler.fields.tags[t]] = true;\n\t\t\t}\n\t\t}\n\t});\n\treturn Object.keys(tags);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/then.js": {
"title": "$:/core/modules/filters/then.js",
"text": "/*\\\ntitle: $:/core/modules/filters/then.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing any titles with a constant\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.then = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(operator.operand);\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/title.js": {
"title": "$:/core/modules/filters/title.js",
"text": "/*\\\ntitle: $:/core/modules/filters/title.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for comparing title fields for equality\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.title = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields.title !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tresults.push(operator.operand);\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/untagged.js": {
"title": "$:/core/modules/filters/untagged.js",
"text": "/*\\\ntitle: $:/core/modules/filters/untagged.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all the selected tiddlers that are untagged\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.untagged = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && $tw.utils.isArray(tiddler.fields.tags) && tiddler.fields.tags.length > 0) {\n\t\t\t\t$tw.utils.pushTop(results,title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!tiddler || !tiddler.hasField(\"tags\") || ($tw.utils.isArray(tiddler.fields.tags) && tiddler.fields.tags.length === 0)) {\n\t\t\t\t$tw.utils.pushTop(results,title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/variables.js": {
"title": "$:/core/modules/filters/variables.js",
"text": "/*\\\ntitle: $:/core/modules/filters/variables.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the active variables\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.variables = function(source,operator,options) {\n\tvar names = [];\n\tfor(var variable in options.widget.variables) {\n\t\tnames.push(variable);\n\t}\n\treturn names.sort();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/wikiparserrules.js": {
"title": "$:/core/modules/filters/wikiparserrules.js",
"text": "/*\\\ntitle: $:/core/modules/filters/wikiparserrules.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the wiki parser rules in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.wikiparserrules = function(source,operator,options) {\n\tvar results = [],\n\t\toperand = operator.operand;\n\t$tw.utils.each($tw.modules.types.wikirule,function(mod) {\n\t\tvar exp = mod.exports;\n\t\tif(!operand || exp.types[operand]) {\n\t\t\tresults.push(exp.name);\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/x-listops.js": {
"title": "$:/core/modules/filters/x-listops.js",
"text": "/*\\\ntitle: $:/core/modules/filters/x-listops.js\ntype: application/javascript\nmodule-type: filteroperator\n\nExtended filter operators to manipulate the current list.\n\n\\*/\n(function () {\n\n /*jslint node: true, browser: true */\n /*global $tw: false */\n \"use strict\";\n\n /*\n Fetch titles from the current list\n */\n var prepare_results = function (source) {\n var results = [];\n source(function (tiddler, title) {\n results.push(title);\n });\n return results;\n };\n\n /*\n Moves a number of items from the tail of the current list before the item named in the operand\n */\n exports.putbefore = function (source, operator) {\n var results = prepare_results(source),\n index = results.indexOf(operator.operand),\n count = $tw.utils.getInt(operator.suffix,1);\n return (index === -1) ?\n results.slice(0, -1) :\n results.slice(0, index).concat(results.slice(-count)).concat(results.slice(index, -count));\n };\n\n /*\n Moves a number of items from the tail of the current list after the item named in the operand\n */\n exports.putafter = function (source, operator) {\n var results = prepare_results(source),\n index = results.indexOf(operator.operand),\n count = $tw.utils.getInt(operator.suffix,1);\n return (index === -1) ?\n results.slice(0, -1) :\n results.slice(0, index + 1).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n };\n\n /*\n Replaces the item named in the operand with a number of items from the tail of the current list\n */\n exports.replace = function (source, operator) {\n var results = prepare_results(source),\n index = results.indexOf(operator.operand),\n count = $tw.utils.getInt(operator.suffix,1);\n return (index === -1) ?\n results.slice(0, -count) :\n results.slice(0, index).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n };\n\n /*\n Moves a number of items from the tail of the current list to the head of the list\n */\n exports.putfirst = function (source, operator) {\n var results = prepare_results(source),\n count = $tw.utils.getInt(operator.suffix,1);\n return results.slice(-count).concat(results.slice(0, -count));\n };\n\n /*\n Moves a number of items from the head of the current list to the tail of the list\n */\n exports.putlast = function (source, operator) {\n var results = prepare_results(source),\n count = $tw.utils.getInt(operator.suffix,1);\n return results.slice(count).concat(results.slice(0, count));\n };\n\n /*\n Moves the item named in the operand a number of places forward or backward in the list\n */\n exports.move = function (source, operator) {\n var results = prepare_results(source),\n index = results.indexOf(operator.operand),\n count = $tw.utils.getInt(operator.suffix,1),\n marker = results.splice(index, 1),\n offset = (index + count) > 0 ? index + count : 0;\n return results.slice(0, offset).concat(marker).concat(results.slice(offset));\n };\n\n /*\n Returns the items from the current list that are after the item named in the operand\n */\n exports.allafter = function (source, operator) {\n var results = prepare_results(source),\n index = results.indexOf(operator.operand);\n return (index === -1) ? [] :\n (operator.suffix) ? results.slice(index) :\n results.slice(index + 1);\n };\n\n /*\n Returns the items from the current list that are before the item named in the operand\n */\n exports.allbefore = function (source, operator) {\n var results = prepare_results(source),\n index = results.indexOf(operator.operand);\n return (index === -1) ? [] :\n (operator.suffix) ? results.slice(0, index + 1) :\n results.slice(0, index);\n };\n\n /*\n Appends the items listed in the operand array to the tail of the current list\n */\n exports.append = function (source, operator) {\n var append = $tw.utils.parseStringArray(operator.operand, \"true\"),\n results = prepare_results(source),\n count = parseInt(operator.suffix) || append.length;\n return (append.length === 0) ? results :\n (operator.prefix) ? results.concat(append.slice(-count)) :\n results.concat(append.slice(0, count));\n };\n\n /*\n Prepends the items listed in the operand array to the head of the current list\n */\n exports.prepend = function (source, operator) {\n var prepend = $tw.utils.parseStringArray(operator.operand, \"true\"),\n results = prepare_results(source),\n count = $tw.utils.getInt(operator.suffix,prepend.length);\n return (prepend.length === 0) ? results :\n (operator.prefix) ? prepend.slice(-count).concat(results) :\n prepend.slice(0, count).concat(results);\n };\n\n /*\n Returns all items from the current list except the items listed in the operand array\n */\n exports.remove = function (source, operator) {\n var array = $tw.utils.parseStringArray(operator.operand, \"true\"),\n results = prepare_results(source),\n count = parseInt(operator.suffix) || array.length,\n p,\n len,\n index;\n len = array.length - 1;\n for (p = 0; p < count; ++p) {\n if (operator.prefix) {\n index = results.indexOf(array[len - p]);\n } else {\n index = results.indexOf(array[p]);\n }\n if (index !== -1) {\n results.splice(index, 1);\n }\n }\n return results;\n };\n\n /*\n Returns all items from the current list sorted in the order of the items in the operand array\n */\n exports.sortby = function (source, operator) {\n var results = prepare_results(source);\n if (!results || results.length < 2) {\n return results;\n }\n var lookup = $tw.utils.parseStringArray(operator.operand, \"true\");\n results.sort(function (a, b) {\n return lookup.indexOf(a) - lookup.indexOf(b);\n });\n return results;\n };\n\n /*\n Removes all duplicate items from the current list\n */\n exports.unique = function (source, operator) {\n var results = prepare_results(source);\n var set = results.reduce(function (a, b) {\n if (a.indexOf(b) < 0) {\n a.push(b);\n }\n return a;\n }, []);\n return set;\n };\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters.js": {
"title": "$:/core/modules/filters.js",
"text": "/*\\\ntitle: $:/core/modules/filters.js\ntype: application/javascript\nmodule-type: wikimethod\n\nAdds tiddler filtering methods to the $tw.Wiki object.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParses an operation (i.e. a run) within a filter string\n\toperators: Array of array of operator nodes into which results should be inserted\n\tfilterString: filter string\n\tp: start position within the string\nReturns the new start position, after the parsed operation\n*/\nfunction parseFilterOperation(operators,filterString,p) {\n\tvar nextBracketPos, operator;\n\t// Skip the starting square bracket\n\tif(filterString.charAt(p++) !== \"[\") {\n\t\tthrow \"Missing [ in filter expression\";\n\t}\n\t// Process each operator in turn\n\tdo {\n\t\toperator = {};\n\t\t// Check for an operator prefix\n\t\tif(filterString.charAt(p) === \"!\") {\n\t\t\toperator.prefix = filterString.charAt(p++);\n\t\t}\n\t\t// Get the operator name\n\t\tnextBracketPos = filterString.substring(p).search(/[\\[\\{<\\/]/);\n\t\tif(nextBracketPos === -1) {\n\t\t\tthrow \"Missing [ in filter expression\";\n\t\t}\n\t\tnextBracketPos += p;\n\t\tvar bracket = filterString.charAt(nextBracketPos);\n\t\toperator.operator = filterString.substring(p,nextBracketPos);\n\t\t// Any suffix?\n\t\tvar colon = operator.operator.indexOf(':');\n\t\tif(colon > -1) {\n\t\t\t// The raw suffix for older filters\n\t\t\toperator.suffix = operator.operator.substring(colon + 1);\n\t\t\toperator.operator = operator.operator.substring(0,colon) || \"field\";\n\t\t\t// The processed suffix for newer filters\n\t\t\toperator.suffixes = [];\n\t\t\t$tw.utils.each(operator.suffix.split(\":\"),function(subsuffix) {\n\t\t\t\toperator.suffixes.push([]);\n\t\t\t\t$tw.utils.each(subsuffix.split(\",\"),function(entry) {\n\t\t\t\t\tentry = $tw.utils.trim(entry);\n\t\t\t\t\tif(entry) {\n\t\t\t\t\t\toperator.suffixes[operator.suffixes.length - 1].push(entry); \n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\t// Empty operator means: title\n\t\telse if(operator.operator === \"\") {\n\t\t\toperator.operator = \"title\";\n\t\t}\n\n\t\tp = nextBracketPos + 1;\n\t\tswitch (bracket) {\n\t\t\tcase \"{\": // Curly brackets\n\t\t\t\toperator.indirect = true;\n\t\t\t\tnextBracketPos = filterString.indexOf(\"}\",p);\n\t\t\t\tbreak;\n\t\t\tcase \"[\": // Square brackets\n\t\t\t\tnextBracketPos = filterString.indexOf(\"]\",p);\n\t\t\t\tbreak;\n\t\t\tcase \"<\": // Angle brackets\n\t\t\t\toperator.variable = true;\n\t\t\t\tnextBracketPos = filterString.indexOf(\">\",p);\n\t\t\t\tbreak;\n\t\t\tcase \"/\": // regexp brackets\n\t\t\t\tvar rex = /^((?:[^\\\\\\/]*|\\\\.)*)\\/(?:\\(([mygi]+)\\))?/g,\n\t\t\t\t\trexMatch = rex.exec(filterString.substring(p));\n\t\t\t\tif(rexMatch) {\n\t\t\t\t\toperator.regexp = new RegExp(rexMatch[1], rexMatch[2]);\n// DEPRECATION WARNING\nconsole.log(\"WARNING: Filter\",operator.operator,\"has a deprecated regexp operand\",operator.regexp);\n\t\t\t\t\tnextBracketPos = p + rex.lastIndex - 1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthrow \"Unterminated regular expression in filter expression\";\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif(nextBracketPos === -1) {\n\t\t\tthrow \"Missing closing bracket in filter expression\";\n\t\t}\n\t\tif(!operator.regexp) {\n\t\t\toperator.operand = filterString.substring(p,nextBracketPos);\n\t\t}\n\t\tp = nextBracketPos + 1;\n\n\t\t// Push this operator\n\t\toperators.push(operator);\n\t} while(filterString.charAt(p) !== \"]\");\n\t// Skip the ending square bracket\n\tif(filterString.charAt(p++) !== \"]\") {\n\t\tthrow \"Missing ] in filter expression\";\n\t}\n\t// Return the parsing position\n\treturn p;\n}\n\n/*\nParse a filter string\n*/\nexports.parseFilter = function(filterString) {\n\tfilterString = filterString || \"\";\n\tvar results = [], // Array of arrays of operator nodes {operator:,operand:}\n\t\tp = 0, // Current position in the filter string\n\t\tmatch;\n\tvar whitespaceRegExp = /(\\s+)/mg,\n\t\toperandRegExp = /((?:\\+|\\-|~|=)?)(?:(\\[)|(?:\"([^\"]*)\")|(?:'([^']*)')|([^\\s\\[\\]]+))/mg;\n\twhile(p < filterString.length) {\n\t\t// Skip any whitespace\n\t\twhitespaceRegExp.lastIndex = p;\n\t\tmatch = whitespaceRegExp.exec(filterString);\n\t\tif(match && match.index === p) {\n\t\t\tp = p + match[0].length;\n\t\t}\n\t\t// Match the start of the operation\n\t\tif(p < filterString.length) {\n\t\t\toperandRegExp.lastIndex = p;\n\t\t\tmatch = operandRegExp.exec(filterString);\n\t\t\tif(!match || match.index !== p) {\n\t\t\t\tthrow $tw.language.getString(\"Error/FilterSyntax\");\n\t\t\t}\n\t\t\tvar operation = {\n\t\t\t\tprefix: \"\",\n\t\t\t\toperators: []\n\t\t\t};\n\t\t\tif(match[1]) {\n\t\t\t\toperation.prefix = match[1];\n\t\t\t\tp++;\n\t\t\t}\n\t\t\tif(match[2]) { // Opening square bracket\n\t\t\t\tp = parseFilterOperation(operation.operators,filterString,p);\n\t\t\t} else {\n\t\t\t\tp = match.index + match[0].length;\n\t\t\t}\n\t\t\tif(match[3] || match[4] || match[5]) { // Double quoted string, single quoted string or unquoted title\n\t\t\t\toperation.operators.push(\n\t\t\t\t\t{operator: \"title\", operand: match[3] || match[4] || match[5]}\n\t\t\t\t);\n\t\t\t}\n\t\t\tresults.push(operation);\n\t\t}\n\t}\n\treturn results;\n};\n\nexports.getFilterOperators = function() {\n\tif(!this.filterOperators) {\n\t\t$tw.Wiki.prototype.filterOperators = {};\n\t\t$tw.modules.applyMethods(\"filteroperator\",this.filterOperators);\n\t}\n\treturn this.filterOperators;\n};\n\nexports.filterTiddlers = function(filterString,widget,source) {\n\tvar fn = this.compileFilter(filterString);\n\treturn fn.call(this,source,widget);\n};\n\n/*\nCompile a filter into a function with the signature fn(source,widget) where:\nsource: an iterator function for the source tiddlers, called source(iterator), where iterator is called as iterator(tiddler,title)\nwidget: an optional widget node for retrieving the current tiddler etc.\n*/\nexports.compileFilter = function(filterString) {\n\tvar filterParseTree;\n\ttry {\n\t\tfilterParseTree = this.parseFilter(filterString);\n\t} catch(e) {\n\t\treturn function(source,widget) {\n\t\t\treturn [$tw.language.getString(\"Error/Filter\") + \": \" + e];\n\t\t};\n\t}\n\t// Get the hashmap of filter operator functions\n\tvar filterOperators = this.getFilterOperators();\n\t// Assemble array of functions, one for each operation\n\tvar operationFunctions = [];\n\t// Step through the operations\n\tvar self = this;\n\t$tw.utils.each(filterParseTree,function(operation) {\n\t\t// Create a function for the chain of operators in the operation\n\t\tvar operationSubFunction = function(source,widget) {\n\t\t\tvar accumulator = source,\n\t\t\t\tresults = [],\n\t\t\t\tcurrTiddlerTitle = widget && widget.getVariable(\"currentTiddler\");\n\t\t\t$tw.utils.each(operation.operators,function(operator) {\n\t\t\t\tvar operand = operator.operand,\n\t\t\t\t\toperatorFunction;\n\t\t\t\tif(!operator.operator) {\n\t\t\t\t\toperatorFunction = filterOperators.title;\n\t\t\t\t} else if(!filterOperators[operator.operator]) {\n\t\t\t\t\toperatorFunction = filterOperators.field;\n\t\t\t\t} else {\n\t\t\t\t\toperatorFunction = filterOperators[operator.operator];\n\t\t\t\t}\n\t\t\t\tif(operator.indirect) {\n\t\t\t\t\toperand = self.getTextReference(operator.operand,\"\",currTiddlerTitle);\n\t\t\t\t}\n\t\t\t\tif(operator.variable) {\n\t\t\t\t\toperand = widget.getVariable(operator.operand,{defaultValue: \"\"});\n\t\t\t\t}\n\t\t\t\t// Invoke the appropriate filteroperator module\n\t\t\t\tresults = operatorFunction(accumulator,{\n\t\t\t\t\t\t\toperator: operator.operator,\n\t\t\t\t\t\t\toperand: operand,\n\t\t\t\t\t\t\tprefix: operator.prefix,\n\t\t\t\t\t\t\tsuffix: operator.suffix,\n\t\t\t\t\t\t\tsuffixes: operator.suffixes,\n\t\t\t\t\t\t\tregexp: operator.regexp\n\t\t\t\t\t\t},{\n\t\t\t\t\t\t\twiki: self,\n\t\t\t\t\t\t\twidget: widget\n\t\t\t\t\t\t});\n\t\t\t\tif($tw.utils.isArray(results)) {\n\t\t\t\t\taccumulator = self.makeTiddlerIterator(results);\n\t\t\t\t} else {\n\t\t\t\t\taccumulator = results;\n\t\t\t\t}\n\t\t\t});\n\t\t\tif($tw.utils.isArray(results)) {\n\t\t\t\treturn results;\n\t\t\t} else {\n\t\t\t\tvar resultArray = [];\n\t\t\t\tresults(function(tiddler,title) {\n\t\t\t\t\tresultArray.push(title);\n\t\t\t\t});\n\t\t\t\treturn resultArray;\n\t\t\t}\n\t\t};\n\t\t// Wrap the operator functions in a wrapper function that depends on the prefix\n\t\toperationFunctions.push((function() {\n\t\t\tswitch(operation.prefix || \"\") {\n\t\t\t\tcase \"\": // No prefix means that the operation is unioned into the result\n\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\t$tw.utils.pushTop(results,operationSubFunction(source,widget));\n\t\t\t\t\t};\n\t\t\t\tcase \"=\": // The results of the operation are pushed into the result without deduplication\n\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\tArray.prototype.push.apply(results,operationSubFunction(source,widget));\n\t\t\t\t\t};\n\t\t\t\tcase \"-\": // The results of this operation are removed from the main result\n\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\t$tw.utils.removeArrayEntries(results,operationSubFunction(source,widget));\n\t\t\t\t\t};\n\t\t\t\tcase \"+\": // This operation is applied to the main results so far\n\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\t// This replaces all the elements of the array, but keeps the actual array so that references to it are preserved\n\t\t\t\t\t\tsource = self.makeTiddlerIterator(results);\n\t\t\t\t\t\tresults.splice(0,results.length);\n\t\t\t\t\t\t$tw.utils.pushTop(results,operationSubFunction(source,widget));\n\t\t\t\t\t};\n\t\t\t\tcase \"~\": // This operation is unioned into the result only if the main result so far is empty\n\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\tif(results.length === 0) {\n\t\t\t\t\t\t\t// Main result so far is empty\n\t\t\t\t\t\t\t$tw.utils.pushTop(results,operationSubFunction(source,widget));\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t}\n\t\t})());\n\t});\n\t// Return a function that applies the operations to a source iterator of tiddler titles\n\treturn $tw.perf.measure(\"filter: \" + filterString,function filterFunction(source,widget) {\n\t\tif(!source) {\n\t\t\tsource = self.each;\n\t\t} else if(typeof source === \"object\") { // Array or hashmap\n\t\t\tsource = self.makeTiddlerIterator(source);\n\t\t}\n\t\tvar results = [];\n\t\t$tw.utils.each(operationFunctions,function(operationFunction) {\n\t\t\toperationFunction(results,source,widget);\n\t\t});\n\t\treturn results;\n\t});\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikimethod"
},
"$:/core/modules/indexers/backlinks-indexer.js": {
"title": "$:/core/modules/indexers/backlinks-indexer.js",
"text": "/*\\\ntitle: $:/core/modules/indexers/backlinks-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers' backlinks\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\n\nfunction BacklinksIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nBacklinksIndexer.prototype.init = function() {\n\tthis.index = null;\n}\n\nBacklinksIndexer.prototype.rebuild = function() {\n\tthis.index = null;\n}\n\nBacklinksIndexer.prototype._getLinks = function(tiddler) {\n\tvar parser = this.wiki.parseText(tiddler.fields.type, tiddler.fields.text, {});\n\tif(parser) {\n\t\treturn this.wiki.extractLinks(parser.tree);\n\t}\n\treturn [];\n}\n\nBacklinksIndexer.prototype.update = function(updateDescriptor) {\n\tif(!this.index) {\n\t\treturn;\n\t}\n\tvar newLinks = [],\n\t oldLinks = [],\n\t self = this;\n\tif(updateDescriptor.old.exists) {\n\t\toldLinks = this._getLinks(updateDescriptor.old.tiddler);\n\t}\n\tif(updateDescriptor.new.exists) {\n\t\tnewLinks = this._getLinks(updateDescriptor.new.tiddler);\n\t}\n\n\t$tw.utils.each(oldLinks,function(link) {\n\t\tif(self.index[link]) {\n\t\t\tdelete self.index[link][updateDescriptor.old.tiddler.fields.title];\n\t\t}\n\t});\n\t$tw.utils.each(newLinks,function(link) {\n\t\tif(!self.index[link]) {\n\t\t\tself.index[link] = Object.create(null);\n\t\t}\n\t\tself.index[link][updateDescriptor.new.tiddler.fields.title] = true;\n\t});\n}\n\nBacklinksIndexer.prototype.lookup = function(title) {\n\tif(!this.index) {\n\t\tthis.index = Object.create(null);\n\t\tvar self = this;\n\t\tthis.wiki.forEachTiddler(function(title,tiddler) {\n\t\t\tvar links = self._getLinks(tiddler);\n\t\t\t$tw.utils.each(links, function(link) {\n\t\t\t\tif(!self.index[link]) {\n\t\t\t\t\tself.index[link] = Object.create(null);\n\t\t\t\t}\n\t\t\t\tself.index[link][title] = true;\n\t\t\t});\n\t\t});\n\t}\n\tif(this.index[title]) {\n\t\treturn Object.keys(this.index[title]);\n\t} else {\n\t\treturn [];\n\t}\n}\n\nexports.BacklinksIndexer = BacklinksIndexer;\n\n})();\n",
"type": "application/javascript",
"module-type": "indexer"
},
"$:/core/modules/indexers/field-indexer.js": {
"title": "$:/core/modules/indexers/field-indexer.js",
"text": "/*\\\ntitle: $:/core/modules/indexers/field-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers with each field value\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\nvar DEFAULT_MAXIMUM_INDEXED_VALUE_LENGTH = 128;\n\nfunction FieldIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nFieldIndexer.prototype.init = function() {\n\tthis.index = null;\n\tthis.maxIndexedValueLength = DEFAULT_MAXIMUM_INDEXED_VALUE_LENGTH;\n\tthis.addIndexMethods();\n}\n\n// Provided for testing\nFieldIndexer.prototype.setMaxIndexedValueLength = function(length) {\n\tthis.index = null;\n\tthis.maxIndexedValueLength = length;\n};\n\nFieldIndexer.prototype.addIndexMethods = function() {\n\tvar self = this;\n\tthis.wiki.each.byField = function(name,value) {\n\t\tvar titles = self.wiki.allTitles(),\n\t\t\tlookup = self.lookup(name,value);\n\t\treturn lookup && lookup.filter(function(title) {\n\t\t\treturn titles.indexOf(title) !== -1;\n\t\t});\n\t};\n\tthis.wiki.eachShadow.byField = function(name,value) {\n\t\tvar titles = self.wiki.allShadowTitles(),\n\t\t\tlookup = self.lookup(name,value);\n\t\treturn lookup && lookup.filter(function(title) {\n\t\t\treturn titles.indexOf(title) !== -1;\n\t\t});\n\t};\n\tthis.wiki.eachTiddlerPlusShadows.byField = function(name,value) {\n\t\tvar lookup = self.lookup(name,value);\n\t\treturn lookup ? lookup.slice(0) : null;\n\t};\n\tthis.wiki.eachShadowPlusTiddlers.byField = function(name,value) {\n\t\tvar lookup = self.lookup(name,value);\n\t\treturn lookup ? lookup.slice(0) : null;\n\t};\n};\n\n/*\nTear down and then rebuild the index as if all tiddlers have changed\n*/\nFieldIndexer.prototype.rebuild = function() {\n\t// Invalidate the index so that it will be rebuilt when it is next used\n\tthis.index = null;\n};\n\n/*\nBuild the index for a particular field\n*/\nFieldIndexer.prototype.buildIndexForField = function(name) {\n\tvar self = this;\n\t// Hashmap by field name of hashmap by field value of array of tiddler titles\n\tthis.index = this.index || Object.create(null);\n\tthis.index[name] = Object.create(null);\n\tvar baseIndex = this.index[name];\n\t// Update the index for each tiddler\n\tthis.wiki.eachTiddlerPlusShadows(function(tiddler,title) {\n\t\tif(name in tiddler.fields) {\n\t\t\tvar value = tiddler.getFieldString(name);\n\t\t\t// Skip any values above the maximum length\n\t\t\tif(value.length < self.maxIndexedValueLength) {\n\t\t\t\tbaseIndex[value] = baseIndex[value] || [];\n\t\t\t\tbaseIndex[value].push(title);\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nUpdate the index in the light of a tiddler value changing; note that the title must be identical. (Renames are handled as a separate delete and create)\nupdateDescriptor: {old: {tiddler: <tiddler>, shadow: <boolean>, exists: <boolean>},new: {tiddler: <tiddler>, shadow: <boolean>, exists: <boolean>}}\n*/\nFieldIndexer.prototype.update = function(updateDescriptor) {\n\tvar self = this;\n\t// Don't do anything if the index hasn't been built yet\n\tif(this.index === null) {\n\t\treturn;\n\t}\n\t// Remove the old tiddler from the index\n\tif(updateDescriptor.old.tiddler) {\n\t\t$tw.utils.each(this.index,function(indexEntry,name) {\n\t\t\tif(name in updateDescriptor.old.tiddler.fields) {\n\t\t\t\tvar value = updateDescriptor.old.tiddler.getFieldString(name),\n\t\t\t\t\ttiddlerList = indexEntry[value];\n\t\t\t\tif(tiddlerList) {\n\t\t\t\t\tvar index = tiddlerList.indexOf(updateDescriptor.old.tiddler.fields.title);\n\t\t\t\t\tif(index !== -1) {\n\t\t\t\t\t\ttiddlerList.splice(index,1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\t// Add the new tiddler to the index\n\tif(updateDescriptor[\"new\"].tiddler) {\n\t\t$tw.utils.each(this.index,function(indexEntry,name) {\n\t\t\tif(name in updateDescriptor[\"new\"].tiddler.fields) {\n\t\t\t\tvar value = updateDescriptor[\"new\"].tiddler.getFieldString(name);\n\t\t\t\tif(value.length < self.maxIndexedValueLength) {\n\t\t\t\t\tindexEntry[value] = indexEntry[value] || [];\n\t\t\t\t\tindexEntry[value].push(updateDescriptor[\"new\"].tiddler.fields.title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\t\t\n\t}\n};\n\n// Lookup the given field returning a list of tiddler titles\nFieldIndexer.prototype.lookup = function(name,value) {\n\t// Fail the lookup if the value is too long\n\tif(value.length >= this.maxIndexedValueLength) {\n\t\treturn null;\n\t}\n\t// Update the index if it has yet to be built\n\tif(this.index === null || !this.index[name]) {\n\t\tthis.buildIndexForField(name);\n\t}\n\treturn this.index[name][value] || [];\n};\n\nexports.FieldIndexer = FieldIndexer;\n\n})();\n",
"type": "application/javascript",
"module-type": "indexer"
},
"$:/core/modules/indexers/tag-indexer.js": {
"title": "$:/core/modules/indexers/tag-indexer.js",
"text": "/*\\\ntitle: $:/core/modules/indexers/tag-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers with each tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\nfunction TagIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nTagIndexer.prototype.init = function() {\n\tthis.subIndexers = [\n\t\tnew TagSubIndexer(this,\"each\"),\n\t\tnew TagSubIndexer(this,\"eachShadow\"),\n\t\tnew TagSubIndexer(this,\"eachTiddlerPlusShadows\"),\n\t\tnew TagSubIndexer(this,\"eachShadowPlusTiddlers\")\n\t];\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.addIndexMethod();\n\t});\n};\n\nTagIndexer.prototype.rebuild = function() {\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.rebuild();\n\t});\n};\n\nTagIndexer.prototype.update = function(updateDescriptor) {\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.update(updateDescriptor);\n\t});\n};\n\nfunction TagSubIndexer(indexer,iteratorMethod) {\n\tthis.indexer = indexer;\n\tthis.iteratorMethod = iteratorMethod;\n\tthis.index = null; // Hashmap of tag title to {isSorted: bool, titles: [array]} or null if not yet initialised\n}\n\nTagSubIndexer.prototype.addIndexMethod = function() {\n\tvar self = this;\n\tthis.indexer.wiki[this.iteratorMethod].byTag = function(tag) {\n\t\treturn self.lookup(tag).slice(0);\n\t};\n};\n\nTagSubIndexer.prototype.rebuild = function() {\n\tvar self = this;\n\t// Hashmap by tag of array of {isSorted:, titles:[]}\n\tthis.index = Object.create(null);\n\t// Add all the tags\n\tthis.indexer.wiki[this.iteratorMethod](function(tiddler,title) {\n\t\t$tw.utils.each(tiddler.fields.tags,function(tag) {\n\t\t\tif(!self.index[tag]) {\n\t\t\t\tself.index[tag] = {isSorted: false, titles: [title]};\n\t\t\t} else {\n\t\t\t\tself.index[tag].titles.push(title);\n\t\t\t}\n\t\t});\t\t\n\t});\n};\n\nTagSubIndexer.prototype.update = function(updateDescriptor) {\n\tthis.index = null;\n};\n\nTagSubIndexer.prototype.lookup = function(tag) {\n\t// Update the index if it has yet to be built\n\tif(this.index === null) {\n\t\tthis.rebuild();\n\t}\n\tvar indexRecord = this.index[tag];\n\tif(indexRecord) {\n\t\tif(!indexRecord.isSorted) {\n\t\t\tif(this.indexer.wiki.sortByList) {\n\t\t\t\tindexRecord.titles = this.indexer.wiki.sortByList(indexRecord.titles,tag);\n\t\t\t}\t\t\t\n\t\t\tindexRecord.isSorted = true;\n\t\t}\n\t\treturn indexRecord.titles;\n\t} else {\n\t\treturn [];\n\t}\n};\n\n\nexports.TagIndexer = TagIndexer;\n\n})();\n",
"type": "application/javascript",
"module-type": "indexer"
},
"$:/core/modules/info/platform.js": {
"title": "$:/core/modules/info/platform.js",
"text": "/*\\\ntitle: $:/core/modules/info/platform.js\ntype: application/javascript\nmodule-type: info\n\nInitialise basic platform $:/info/ tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.getInfoTiddlerFields = function() {\n\tvar mapBoolean = function(value) {return value ? \"yes\" : \"no\";},\n\t\tinfoTiddlerFields = [];\n\t// Basics\n\tinfoTiddlerFields.push({title: \"$:/info/browser\", text: mapBoolean(!!$tw.browser)});\n\tinfoTiddlerFields.push({title: \"$:/info/node\", text: mapBoolean(!!$tw.node)});\n\tif($tw.browser) {\n\t\t// Document location\n\t\tvar setLocationProperty = function(name,value) {\n\t\t\t\tinfoTiddlerFields.push({title: \"$:/info/url/\" + name, text: value});\t\t\t\n\t\t\t},\n\t\t\tlocation = document.location;\n\t\tsetLocationProperty(\"full\", (location.toString()).split(\"#\")[0]);\n\t\tsetLocationProperty(\"host\", location.host);\n\t\tsetLocationProperty(\"hostname\", location.hostname);\n\t\tsetLocationProperty(\"protocol\", location.protocol);\n\t\tsetLocationProperty(\"port\", location.port);\n\t\tsetLocationProperty(\"pathname\", location.pathname);\n\t\tsetLocationProperty(\"search\", location.search);\n\t\tsetLocationProperty(\"origin\", location.origin);\n\t\t// Screen size\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/screen/width\", text: window.screen.width.toString()});\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/screen/height\", text: window.screen.height.toString()});\n\t\t// Language\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/language\", text: navigator.language || \"\"});\n\t}\n\treturn infoTiddlerFields;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "info"
},
"$:/core/modules/keyboard.js": {
"title": "$:/core/modules/keyboard.js",
"text": "/*\\\ntitle: $:/core/modules/keyboard.js\ntype: application/javascript\nmodule-type: global\n\nKeyboard handling utilities\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar namedKeys = {\n\t\"cancel\": 3,\n\t\"help\": 6,\n\t\"backspace\": 8,\n\t\"tab\": 9,\n\t\"clear\": 12,\n\t\"return\": 13,\n\t\"enter\": 13,\n\t\"pause\": 19,\n\t\"escape\": 27,\n\t\"space\": 32,\n\t\"page_up\": 33,\n\t\"page_down\": 34,\n\t\"end\": 35,\n\t\"home\": 36,\n\t\"left\": 37,\n\t\"up\": 38,\n\t\"right\": 39,\n\t\"down\": 40,\n\t\"printscreen\": 44,\n\t\"insert\": 45,\n\t\"delete\": 46,\n\t\"0\": 48,\n\t\"1\": 49,\n\t\"2\": 50,\n\t\"3\": 51,\n\t\"4\": 52,\n\t\"5\": 53,\n\t\"6\": 54,\n\t\"7\": 55,\n\t\"8\": 56,\n\t\"9\": 57,\n\t\"firefoxsemicolon\": 59,\n\t\"firefoxequals\": 61,\n\t\"a\": 65,\n\t\"b\": 66,\n\t\"c\": 67,\n\t\"d\": 68,\n\t\"e\": 69,\n\t\"f\": 70,\n\t\"g\": 71,\n\t\"h\": 72,\n\t\"i\": 73,\n\t\"j\": 74,\n\t\"k\": 75,\n\t\"l\": 76,\n\t\"m\": 77,\n\t\"n\": 78,\n\t\"o\": 79,\n\t\"p\": 80,\n\t\"q\": 81,\n\t\"r\": 82,\n\t\"s\": 83,\n\t\"t\": 84,\n\t\"u\": 85,\n\t\"v\": 86,\n\t\"w\": 87,\n\t\"x\": 88,\n\t\"y\": 89,\n\t\"z\": 90,\n\t\"numpad0\": 96,\n\t\"numpad1\": 97,\n\t\"numpad2\": 98,\n\t\"numpad3\": 99,\n\t\"numpad4\": 100,\n\t\"numpad5\": 101,\n\t\"numpad6\": 102,\n\t\"numpad7\": 103,\n\t\"numpad8\": 104,\n\t\"numpad9\": 105,\n\t\"multiply\": 106,\n\t\"add\": 107,\n\t\"separator\": 108,\n\t\"subtract\": 109,\n\t\"decimal\": 110,\n\t\"divide\": 111,\n\t\"f1\": 112,\n\t\"f2\": 113,\n\t\"f3\": 114,\n\t\"f4\": 115,\n\t\"f5\": 116,\n\t\"f6\": 117,\n\t\"f7\": 118,\n\t\"f8\": 119,\n\t\"f9\": 120,\n\t\"f10\": 121,\n\t\"f11\": 122,\n\t\"f12\": 123,\n\t\"f13\": 124,\n\t\"f14\": 125,\n\t\"f15\": 126,\n\t\"f16\": 127,\n\t\"f17\": 128,\n\t\"f18\": 129,\n\t\"f19\": 130,\n\t\"f20\": 131,\n\t\"f21\": 132,\n\t\"f22\": 133,\n\t\"f23\": 134,\n\t\"f24\": 135,\n\t\"firefoxminus\": 173,\n\t\"semicolon\": 186,\n\t\"equals\": 187,\n\t\"comma\": 188,\n\t\"dash\": 189,\n\t\"period\": 190,\n\t\"slash\": 191,\n\t\"backquote\": 192,\n\t\"openbracket\": 219,\n\t\"backslash\": 220,\n\t\"closebracket\": 221,\n\t\"quote\": 222\n};\n\nfunction KeyboardManager(options) {\n\tvar self = this;\n\toptions = options || \"\";\n\t// Save the named key hashmap\n\tthis.namedKeys = namedKeys;\n\t// Create a reverse mapping of code to keyname\n\tthis.keyNames = [];\n\t$tw.utils.each(namedKeys,function(keyCode,name) {\n\t\tself.keyNames[keyCode] = name.substr(0,1).toUpperCase() + name.substr(1);\n\t});\n\t// Save the platform-specific name of the \"meta\" key\n\tthis.metaKeyName = $tw.platform.isMac ? \"cmd-\" : \"win-\";\n\tthis.shortcutKeysList = [], // Stores the shortcut-key descriptors\n\tthis.shortcutActionList = [], // Stores the corresponding action strings\n\tthis.shortcutParsedList = []; // Stores the parsed key descriptors\n\tthis.lookupNames = [\"shortcuts\"];\n\tthis.lookupNames.push($tw.platform.isMac ? \"shortcuts-mac\" : \"shortcuts-not-mac\")\n\tthis.lookupNames.push($tw.platform.isWindows ? \"shortcuts-windows\" : \"shortcuts-not-windows\");\n\tthis.lookupNames.push($tw.platform.isLinux ? \"shortcuts-linux\" : \"shortcuts-not-linux\");\n\tthis.updateShortcutLists(this.getShortcutTiddlerList());\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tself.handleShortcutChanges(changes);\n\t});\n}\n\n/*\nReturn an array of keycodes for the modifier keys ctrl, shift, alt, meta\n*/\nKeyboardManager.prototype.getModifierKeys = function() {\n\treturn [\n\t\t16, // Shift\n\t\t17, // Ctrl\n\t\t18, // Alt\n\t\t20, // CAPS LOCK\n\t\t91, // Meta (left)\n\t\t93, // Meta (right)\n\t\t224 // Meta (Firefox)\n\t]\n};\n\n/*\nParses a key descriptor into the structure:\n{\n\tkeyCode: numeric keycode\n\tshiftKey: boolean\n\taltKey: boolean\n\tctrlKey: boolean\n\tmetaKey: boolean\n}\nKey descriptors have the following format:\n\tctrl+enter\n\tctrl+shift+alt+A\n*/\nKeyboardManager.prototype.parseKeyDescriptor = function(keyDescriptor) {\n\tvar components = keyDescriptor.split(/\\+|\\-/),\n\t\tinfo = {\n\t\t\tkeyCode: 0,\n\t\t\tshiftKey: false,\n\t\t\taltKey: false,\n\t\t\tctrlKey: false,\n\t\t\tmetaKey: false\n\t\t};\n\tfor(var t=0; t<components.length; t++) {\n\t\tvar s = components[t].toLowerCase(),\n\t\t\tc = s.charCodeAt(0);\n\t\t// Look for modifier keys\n\t\tif(s === \"ctrl\") {\n\t\t\tinfo.ctrlKey = true;\n\t\t} else if(s === \"shift\") {\n\t\t\tinfo.shiftKey = true;\n\t\t} else if(s === \"alt\") {\n\t\t\tinfo.altKey = true;\n\t\t} else if(s === \"meta\" || s === \"cmd\" || s === \"win\") {\n\t\t\tinfo.metaKey = true;\n\t\t}\n\t\t// Replace named keys with their code\n\t\tif(this.namedKeys[s]) {\n\t\t\tinfo.keyCode = this.namedKeys[s];\n\t\t}\n\t}\n\tif(info.keyCode) {\n\t\treturn info;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nParse a list of key descriptors into an array of keyInfo objects. The key descriptors can be passed as an array of strings or a space separated string\n*/\nKeyboardManager.prototype.parseKeyDescriptors = function(keyDescriptors,options) {\n\tvar self = this;\n\toptions = options || {};\n\toptions.stack = options.stack || [];\n\tvar wiki = options.wiki || $tw.wiki;\n\tif(typeof keyDescriptors === \"string\" && keyDescriptors === \"\") {\n\t\treturn [];\n\t}\n\tif(!$tw.utils.isArray(keyDescriptors)) {\n\t\tkeyDescriptors = keyDescriptors.split(\" \");\n\t}\n\tvar result = [];\n\t$tw.utils.each(keyDescriptors,function(keyDescriptor) {\n\t\t// Look for a named shortcut\n\t\tif(keyDescriptor.substr(0,2) === \"((\" && keyDescriptor.substr(-2,2) === \"))\") {\n\t\t\tif(options.stack.indexOf(keyDescriptor) === -1) {\n\t\t\t\toptions.stack.push(keyDescriptor);\n\t\t\t\tvar name = keyDescriptor.substring(2,keyDescriptor.length - 2),\n\t\t\t\t\tlookupName = function(configName) {\n\t\t\t\t\t\tvar keyDescriptors = wiki.getTiddlerText(\"$:/config/\" + configName + \"/\" + name);\n\t\t\t\t\t\tif(keyDescriptors) {\n\t\t\t\t\t\t\tresult.push.apply(result,self.parseKeyDescriptors(keyDescriptors,options));\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t$tw.utils.each(self.lookupNames,function(platformDescriptor) {\n\t\t\t\t\tlookupName(platformDescriptor);\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tresult.push(self.parseKeyDescriptor(keyDescriptor));\n\t\t}\n\t});\n\treturn result;\n};\n\nKeyboardManager.prototype.getPrintableShortcuts = function(keyInfoArray) {\n\tvar self = this,\n\t\tresult = [];\n\t$tw.utils.each(keyInfoArray,function(keyInfo) {\n\t\tif(keyInfo) {\n\t\t\tresult.push((keyInfo.ctrlKey ? \"ctrl-\" : \"\") + \n\t\t\t\t (keyInfo.shiftKey ? \"shift-\" : \"\") + \n\t\t\t\t (keyInfo.altKey ? \"alt-\" : \"\") + \n\t\t\t\t (keyInfo.metaKey ? self.metaKeyName : \"\") + \n\t\t\t\t (self.keyNames[keyInfo.keyCode]));\n\t\t}\n\t});\n\treturn result;\n}\n\nKeyboardManager.prototype.checkKeyDescriptor = function(event,keyInfo) {\n\treturn keyInfo &&\n\t\t\tevent.keyCode === keyInfo.keyCode && \n\t\t\tevent.shiftKey === keyInfo.shiftKey && \n\t\t\tevent.altKey === keyInfo.altKey && \n\t\t\tevent.ctrlKey === keyInfo.ctrlKey && \n\t\t\tevent.metaKey === keyInfo.metaKey;\n};\n\nKeyboardManager.prototype.checkKeyDescriptors = function(event,keyInfoArray) {\n\tfor(var t=0; t<keyInfoArray.length; t++) {\n\t\tif(this.checkKeyDescriptor(event,keyInfoArray[t])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\nKeyboardManager.prototype.getShortcutTiddlerList = function() {\n\treturn $tw.wiki.getTiddlersWithTag(\"$:/tags/KeyboardShortcut\");\n};\n\nKeyboardManager.prototype.updateShortcutLists = function(tiddlerList) {\n\tthis.shortcutTiddlers = tiddlerList;\n\tfor(var i=0; i<tiddlerList.length; i++) {\n\t\tvar title = tiddlerList[i],\n\t\t\ttiddlerFields = $tw.wiki.getTiddler(title).fields;\n\t\tthis.shortcutKeysList[i] = tiddlerFields.key !== undefined ? tiddlerFields.key : undefined;\n\t\tthis.shortcutActionList[i] = tiddlerFields.text;\n\t\tthis.shortcutParsedList[i] = this.shortcutKeysList[i] !== undefined ? this.parseKeyDescriptors(this.shortcutKeysList[i]) : undefined;\n\t}\n};\n\nKeyboardManager.prototype.handleKeydownEvent = function(event) {\n\tvar key, action;\n\tfor(var i=0; i<this.shortcutTiddlers.length; i++) {\n\t\tif(this.shortcutParsedList[i] !== undefined && this.checkKeyDescriptors(event,this.shortcutParsedList[i])) {\n\t\t\tkey = this.shortcutParsedList[i];\n\t\t\taction = this.shortcutActionList[i];\n\t\t}\n\t}\n\tif(key !== undefined) {\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\t$tw.rootWidget.invokeActionString(action,$tw.rootWidget);\n\t\treturn true;\n\t}\n\treturn false;\n};\n\nKeyboardManager.prototype.detectNewShortcuts = function(changedTiddlers) {\n\tvar shortcutConfigTiddlers = [],\n\t\thandled = false;\n\t$tw.utils.each(this.lookupNames,function(platformDescriptor) {\n\t\tvar descriptorString = \"$:/config/\" + platformDescriptor + \"/\";\n\t\tObject.keys(changedTiddlers).forEach(function(configTiddler) {\n\t\t\tvar configString = configTiddler.substr(0, configTiddler.lastIndexOf(\"/\") + 1);\n\t\t\tif(configString === descriptorString) {\n\t\t\t\tshortcutConfigTiddlers.push(configTiddler);\n\t\t\t\thandled = true;\n\t\t\t}\n\t\t});\n\t});\n\tif(handled) {\n\t\treturn $tw.utils.hopArray(changedTiddlers,shortcutConfigTiddlers);\n\t} else {\n\t\treturn false;\n\t}\n};\n\nKeyboardManager.prototype.handleShortcutChanges = function(changedTiddlers) {\n\tvar newList = this.getShortcutTiddlerList();\n\tvar hasChanged = $tw.utils.hopArray(changedTiddlers,this.shortcutTiddlers) ? true :\n\t\t($tw.utils.hopArray(changedTiddlers,newList) ? true :\n\t\t(this.detectNewShortcuts(changedTiddlers))\n\t);\n\t// Re-cache shortcuts if something changed\n\tif(hasChanged) {\n\t\tthis.updateShortcutLists(newList);\n\t}\n};\n\nexports.KeyboardManager = KeyboardManager;\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/language.js": {
"title": "$:/core/modules/language.js",
"text": "/*\\\ntitle: $:/core/modules/language.js\ntype: application/javascript\nmodule-type: global\n\nThe $tw.Language() manages translateable strings\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreate an instance of the language manager. Options include:\nwiki: wiki from which to retrieve translation tiddlers\n*/\nfunction Language(options) {\n\toptions = options || \"\";\n\tthis.wiki = options.wiki || $tw.wiki;\n}\n\n/*\nReturn a wikified translateable string. The title is automatically prefixed with \"$:/language/\"\nOptions include:\nvariables: optional hashmap of variables to supply to the language wikification\n*/\nLanguage.prototype.getString = function(title,options) {\n\toptions = options || {};\n\ttitle = \"$:/language/\" + title;\n\treturn this.wiki.renderTiddler(\"text/plain\",title,{variables: options.variables});\n};\n\n/*\nReturn a raw, unwikified translateable string. The title is automatically prefixed with \"$:/language/\"\n*/\nLanguage.prototype.getRawString = function(title) {\n\ttitle = \"$:/language/\" + title;\n\treturn this.wiki.getTiddlerText(title);\n};\n\nexports.Language = Language;\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/macros/changecount.js": {
"title": "$:/core/modules/macros/changecount.js",
"text": "/*\\\ntitle: $:/core/modules/macros/changecount.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return the changecount for the current tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"changecount\";\n\nexports.params = [];\n\n/*\nRun the macro\n*/\nexports.run = function() {\n\treturn this.wiki.getChangeCount(this.getVariable(\"currentTiddler\")) + \"\";\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/contrastcolour.js": {
"title": "$:/core/modules/macros/contrastcolour.js",
"text": "/*\\\ntitle: $:/core/modules/macros/contrastcolour.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to choose which of two colours has the highest contrast with a base colour\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"contrastcolour\";\n\nexports.params = [\n\t{name: \"target\"},\n\t{name: \"fallbackTarget\"},\n\t{name: \"colourA\"},\n\t{name: \"colourB\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(target,fallbackTarget,colourA,colourB) {\n\tvar rgbTarget = $tw.utils.parseCSSColor(target) || $tw.utils.parseCSSColor(fallbackTarget);\n\tif(!rgbTarget) {\n\t\treturn colourA;\n\t}\n\tvar rgbColourA = $tw.utils.parseCSSColor(colourA),\n\t\trgbColourB = $tw.utils.parseCSSColor(colourB);\n\tif(rgbColourA && !rgbColourB) {\n\t\treturn rgbColourA;\n\t}\n\tif(rgbColourB && !rgbColourA) {\n\t\treturn rgbColourB;\n\t}\n\tif(!rgbColourA && !rgbColourB) {\n\t\t// If neither colour is readable, return a crude inverse of the target\n\t\treturn [255 - rgbTarget[0],255 - rgbTarget[1],255 - rgbTarget[2],rgbTarget[3]];\n\t}\n\t// Colour brightness formula derived from http://www.w3.org/WAI/ER/WD-AERT/#color-contrast\n\tvar brightnessTarget = rgbTarget[0] * 0.299 + rgbTarget[1] * 0.587 + rgbTarget[2] * 0.114,\n\t\tbrightnessA = rgbColourA[0] * 0.299 + rgbColourA[1] * 0.587 + rgbColourA[2] * 0.114,\n\t\tbrightnessB = rgbColourB[0] * 0.299 + rgbColourB[1] * 0.587 + rgbColourB[2] * 0.114;\n\treturn Math.abs(brightnessTarget - brightnessA) > Math.abs(brightnessTarget - brightnessB) ? colourA : colourB;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/csvtiddlers.js": {
"title": "$:/core/modules/macros/csvtiddlers.js",
"text": "/*\\\ntitle: $:/core/modules/macros/csvtiddlers.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output tiddlers matching a filter to CSV\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"csvtiddlers\";\n\nexports.params = [\n\t{name: \"filter\"},\n\t{name: \"format\"},\n];\n\n/*\nRun the macro\n*/\nexports.run = function(filter,format) {\n\tvar self = this,\n\t\ttiddlers = this.wiki.filterTiddlers(filter),\n\t\ttiddler,\n\t\tfields = [],\n\t\tt,f;\n\t// Collect all the fields\n\tfor(t=0;t<tiddlers.length; t++) {\n\t\ttiddler = this.wiki.getTiddler(tiddlers[t]);\n\t\tfor(f in tiddler.fields) {\n\t\t\tif(fields.indexOf(f) === -1) {\n\t\t\t\tfields.push(f);\n\t\t\t}\n\t\t}\n\t}\n\t// Sort the fields and bring the standard ones to the front\n\tfields.sort();\n\t\"title text modified modifier created creator\".split(\" \").reverse().forEach(function(value,index) {\n\t\tvar p = fields.indexOf(value);\n\t\tif(p !== -1) {\n\t\t\tfields.splice(p,1);\n\t\t\tfields.unshift(value)\n\t\t}\n\t});\n\t// Output the column headings\n\tvar output = [], row = [];\n\tfields.forEach(function(value) {\n\t\trow.push(quoteAndEscape(value))\n\t});\n\toutput.push(row.join(\",\"));\n\t// Output each tiddler\n\tfor(var t=0;t<tiddlers.length; t++) {\n\t\trow = [];\n\t\ttiddler = this.wiki.getTiddler(tiddlers[t]);\n\t\t\tfor(f=0; f<fields.length; f++) {\n\t\t\t\trow.push(quoteAndEscape(tiddler ? tiddler.getFieldString(fields[f]) || \"\" : \"\"));\n\t\t\t}\n\t\toutput.push(row.join(\",\"));\n\t}\n\treturn output.join(\"\\n\");\n};\n\nfunction quoteAndEscape(value) {\n\treturn \"\\\"\" + value.replace(/\"/mg,\"\\\"\\\"\") + \"\\\"\";\n}\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/displayshortcuts.js": {
"title": "$:/core/modules/macros/displayshortcuts.js",
"text": "/*\\\ntitle: $:/core/modules/macros/displayshortcuts.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to display a list of keyboard shortcuts in human readable form. Notably, it resolves named shortcuts like `((bold))` to the underlying keystrokes.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"displayshortcuts\";\n\nexports.params = [\n\t{name: \"shortcuts\"},\n\t{name: \"prefix\"},\n\t{name: \"separator\"},\n\t{name: \"suffix\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(shortcuts,prefix,separator,suffix) {\n\tvar shortcutArray = $tw.keyboardManager.getPrintableShortcuts($tw.keyboardManager.parseKeyDescriptors(shortcuts,{\n\t\twiki: this.wiki\n\t}));\n\tif(shortcutArray.length > 0) {\n\t\tshortcutArray.sort(function(a,b) {\n\t\t return a.toLowerCase().localeCompare(b.toLowerCase());\n\t\t})\n\t\treturn prefix + shortcutArray.join(separator) + suffix;\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/jsontiddler.js": {
"title": "$:/core/modules/macros/jsontiddler.js",
"text": "/*\\\ntitle: $:/core/modules/macros/jsontiddler.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output a single tiddler to JSON\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"jsontiddler\";\n\nexports.params = [\n\t{name: \"title\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(title) {\n\ttitle = title || this.getVariable(\"currentTiddler\");\n\tvar tiddler = !!title && this.wiki.getTiddler(title),\n\t\tfields = new Object();\n\tif(tiddler) {\n\t\tfor(var field in tiddler.fields) {\n\t\t\tfields[field] = tiddler.getFieldString(field);\n\t\t}\n\t}\n\treturn JSON.stringify(fields,null,$tw.config.preferences.jsonSpaces);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/jsontiddlers.js": {
"title": "$:/core/modules/macros/jsontiddlers.js",
"text": "/*\\\ntitle: $:/core/modules/macros/jsontiddlers.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output tiddlers matching a filter to JSON\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"jsontiddlers\";\n\nexports.params = [\n\t{name: \"filter\"},\n\t{name: \"spaces\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(filter,spaces) {\n\treturn this.wiki.getTiddlersAsJson(filter,$tw.utils.parseInt(spaces));\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/makedatauri.js": {
"title": "$:/core/modules/macros/makedatauri.js",
"text": "/*\\\ntitle: $:/core/modules/macros/makedatauri.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to convert a string of text to a data URI\n\n<<makedatauri text:\"Text to be converted\" type:\"text/vnd.tiddlywiki\">>\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"makedatauri\";\n\nexports.params = [\n\t{name: \"text\"},\n\t{name: \"type\"},\n\t{name: \"_canonical_uri\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(text,type,_canonical_uri) {\n\treturn $tw.utils.makeDataUri(text,type,_canonical_uri);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/now.js": {
"title": "$:/core/modules/macros/now.js",
"text": "/*\\\ntitle: $:/core/modules/macros/now.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return a formatted version of the current time\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"now\";\n\nexports.params = [\n\t{name: \"format\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(format) {\n\treturn $tw.utils.formatDateString(new Date(),format || \"0hh:0mm, DDth MMM YYYY\");\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/qualify.js": {
"title": "$:/core/modules/macros/qualify.js",
"text": "/*\\\ntitle: $:/core/modules/macros/qualify.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to qualify a state tiddler title according\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"qualify\";\n\nexports.params = [\n\t{name: \"title\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(title) {\n\treturn title + \"-\" + this.getStateQualifier();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/resolvepath.js": {
"title": "$:/core/modules/macros/resolvepath.js",
"text": "/*\\\ntitle: $:/core/modules/macros/resolvepath.js\ntype: application/javascript\nmodule-type: macro\n\nResolves a relative path for an absolute rootpath.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"resolvepath\";\n\nexports.params = [\n\t{name: \"source\"},\n\t{name: \"root\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(source, root) {\n\treturn $tw.utils.resolvePath(source, root);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/unusedtitle.js": {
"title": "$:/core/modules/macros/unusedtitle.js",
"text": "/*\\\ntitle: $:/core/modules/macros/unusedtitle.js\ntype: application/javascript\nmodule-type: macro\nMacro to return a new title that is unused in the wiki. It can be given a name as a base.\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"unusedtitle\";\n\nexports.params = [\n\t{name: \"baseName\"},\n\t{name: \"options\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(baseName, options) {\n\tif(!baseName) {\n\t\tbaseName = $tw.language.getString(\"DefaultNewTiddlerTitle\");\n\t}\n\treturn this.wiki.generateNewTitle(baseName, options);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/macros/version.js": {
"title": "$:/core/modules/macros/version.js",
"text": "/*\\\ntitle: $:/core/modules/macros/version.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return the TiddlyWiki core version number\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"version\";\n\nexports.params = [];\n\n/*\nRun the macro\n*/\nexports.run = function() {\n\treturn $tw.version;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/core/modules/parsers/audioparser.js": {
"title": "$:/core/modules/parsers/audioparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/audioparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe audio parser parses an audio tiddler into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar AudioParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"audio\",\n\t\t\tattributes: {\n\t\t\t\tcontrols: {type: \"string\", value: \"controls\"},\n\t\t\t\tstyle: {type: \"string\", value: \"width: 100%; object-fit: contain\"}\n\t\t\t}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"audio/ogg\"] = AudioParser;\nexports[\"audio/mpeg\"] = AudioParser;\nexports[\"audio/mp3\"] = AudioParser;\nexports[\"audio/mp4\"] = AudioParser;\n\n})();\n\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/core/modules/parsers/binaryparser.js": {
"title": "$:/core/modules/parsers/binaryparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/binaryparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe binary parser parses a binary tiddler into a warning message and download link\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar BINARY_WARNING_MESSAGE = \"$:/core/ui/BinaryWarning\";\nvar EXPORT_BUTTON_IMAGE = \"$:/core/images/export-button\";\n\nvar BinaryParser = function(type,text,options) {\n\t// Transclude the binary data tiddler warning message\n\tvar warn = {\n\t\ttype: \"element\",\n\t\ttag: \"p\",\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: BINARY_WARNING_MESSAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Create download link based on binary tiddler title\n\tvar link = {\n\t\ttype: \"element\",\n\t\ttag: \"a\",\n\t\tattributes: {\n\t\t\ttitle: {type: \"indirect\", textReference: \"!!title\"},\n\t\t\tdownload: {type: \"indirect\", textReference: \"!!title\"}\n\t\t},\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: EXPORT_BUTTON_IMAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Set the link href to external or internal data URI\n\tif(options._canonical_uri) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: options._canonical_uri\n\t\t};\n\t} else if(text) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: \"data:\" + type + \";base64,\" + text\n\t\t};\n\t}\n\t// Combine warning message and download link in a div\n\tvar element = {\n\t\ttype: \"element\",\n\t\ttag: \"div\",\n\t\tattributes: {\n\t\t\tclass: {type: \"string\", value: \"tc-binary-warning\"}\n\t\t},\n\t\tchildren: [warn, link]\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"application/octet-stream\"] = BinaryParser;\n\n})();\n\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/core/modules/parsers/csvparser.js": {
"title": "$:/core/modules/parsers/csvparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/csvparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe CSV text parser processes CSV files into a table wrapped in a scrollable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar CsvParser = function(type,text,options) {\n\t// Table framework\n\tthis.tree = [{\n\t\t\"type\": \"scrollable\", \"children\": [{\n\t\t\t\"type\": \"element\", \"tag\": \"table\", \"children\": [{\n\t\t\t\t\"type\": \"element\", \"tag\": \"tbody\", \"children\": []\n\t\t\t}], \"attributes\": {\n\t\t\t\t\"class\": {\"type\": \"string\", \"value\": \"tc-csv-table\"}\n\t\t\t}\n\t\t}]\n\t}];\n\t// Split the text into lines\n\tvar lines = text.split(/\\r?\\n/mg),\n\t\ttag = \"th\";\n\tfor(var line=0; line<lines.length; line++) {\n\t\tvar lineText = lines[line];\n\t\tif(lineText) {\n\t\t\tvar row = {\n\t\t\t\t\t\"type\": \"element\", \"tag\": \"tr\", \"children\": []\n\t\t\t\t};\n\t\t\tvar columns = lineText.split(\",\");\n\t\t\tfor(var column=0; column<columns.length; column++) {\n\t\t\t\trow.children.push({\n\t\t\t\t\t\t\"type\": \"element\", \"tag\": tag, \"children\": [{\n\t\t\t\t\t\t\t\"type\": \"text\",\n\t\t\t\t\t\t\t\"text\": columns[column]\n\t\t\t\t\t\t}]\n\t\t\t\t\t});\n\t\t\t}\n\t\t\ttag = \"td\";\n\t\t\tthis.tree[0].children[0].children[0].children.push(row);\n\t\t}\n\t}\n};\n\nexports[\"text/csv\"] = CsvParser;\n\n})();\n\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/core/modules/parsers/htmlparser.js": {
"title": "$:/core/modules/parsers/htmlparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/htmlparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe HTML parser displays text as raw HTML\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HtmlParser = function(type,text,options) {\n\tvar src;\n\tif(options._canonical_uri) {\n\t\tsrc = options._canonical_uri;\n\t} else if(text) {\n\t\tsrc = \"data:text/html;charset=utf-8,\" + encodeURIComponent(text);\n\t}\n\tthis.tree = [{\n\t\ttype: \"element\",\n\t\ttag: \"iframe\",\n\t\tattributes: {\n\t\t\tsrc: {type: \"string\", value: src},\n\t\t\tsandbox: {type: \"string\", value: \"\"}\n\t\t}\n\t}];\n};\n\nexports[\"text/html\"] = HtmlParser;\n\n})();\n\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/core/modules/parsers/imageparser.js": {
"title": "$:/core/modules/parsers/imageparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/imageparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe image parser parses an image into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ImageParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"img\",\n\t\t\tattributes: {}\n\t\t};\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\tif(type === \"image/svg+xml\" || type === \".svg\") {\n\t\t\telement.attributes.src = {type: \"string\", value: \"data:image/svg+xml,\" + encodeURIComponent(text)};\n\t\t} else {\n\t\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t\t}\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"image/svg+xml\"] = ImageParser;\nexports[\"image/jpg\"] = ImageParser;\nexports[\"image/jpeg\"] = ImageParser;\nexports[\"image/png\"] = ImageParser;\nexports[\"image/gif\"] = ImageParser;\nexports[\"image/webp\"] = ImageParser;\nexports[\"image/heic\"] = ImageParser;\nexports[\"image/heif\"] = ImageParser;\nexports[\"image/x-icon\"] = ImageParser;\n\n})();\n\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/core/modules/utils/parseutils.js": {
"title": "$:/core/modules/utils/parseutils.js",
"text": "/*\\\ntitle: $:/core/modules/utils/parseutils.js\ntype: application/javascript\nmodule-type: utils\n\nUtility functions concerned with parsing text into tokens.\n\nMost functions have the following pattern:\n\n* The parameters are:\n** `source`: the source string being parsed\n** `pos`: the current parse position within the string\n** Any further parameters are used to identify the token that is being parsed\n* The return value is:\n** null if the token was not found at the specified position\n** an object representing the token with the following standard fields:\n*** `type`: string indicating the type of the token\n*** `start`: start position of the token in the source string\n*** `end`: end position of the token in the source string\n*** Any further fields required to describe the token\n\nThe exception is `skipWhiteSpace`, which just returns the position after the whitespace.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nLook for a whitespace token. Returns null if not found, otherwise returns {type: \"whitespace\", start:, end:,}\n*/\nexports.parseWhiteSpace = function(source,pos) {\n\tvar p = pos,c;\n\twhile(true) {\n\t\tc = source.charAt(p);\n\t\tif((c === \" \") || (c === \"\\f\") || (c === \"\\n\") || (c === \"\\r\") || (c === \"\\t\") || (c === \"\\v\") || (c === \"\\u00a0\")) { // Ignores some obscure unicode spaces\n\t\t\tp++;\n\t\t} else {\n\t\t\tbreak;\n\t\t}\n\t}\n\tif(p === pos) {\n\t\treturn null;\n\t} else {\n\t\treturn {\n\t\t\ttype: \"whitespace\",\n\t\t\tstart: pos,\n\t\t\tend: p\n\t\t}\n\t}\n};\n\n/*\nConvenience wrapper for parseWhiteSpace. Returns the position after the whitespace\n*/\nexports.skipWhiteSpace = function(source,pos) {\n\tvar c;\n\twhile(true) {\n\t\tc = source.charAt(pos);\n\t\tif((c === \" \") || (c === \"\\f\") || (c === \"\\n\") || (c === \"\\r\") || (c === \"\\t\") || (c === \"\\v\") || (c === \"\\u00a0\")) { // Ignores some obscure unicode spaces\n\t\t\tpos++;\n\t\t} else {\n\t\t\treturn pos;\n\t\t}\n\t}\n};\n\n/*\nLook for a given string token. Returns null if not found, otherwise returns {type: \"token\", value:, start:, end:,}\n*/\nexports.parseTokenString = function(source,pos,token) {\n\tvar match = source.indexOf(token,pos) === pos;\n\tif(match) {\n\t\treturn {\n\t\t\ttype: \"token\",\n\t\t\tvalue: token,\n\t\t\tstart: pos,\n\t\t\tend: pos + token.length\n\t\t};\n\t}\n\treturn null;\n};\n\n/*\nLook for a token matching a regex. Returns null if not found, otherwise returns {type: \"regexp\", match:, start:, end:,}\n*/\nexports.parseTokenRegExp = function(source,pos,reToken) {\n\tvar node = {\n\t\ttype: \"regexp\",\n\t\tstart: pos\n\t};\n\treToken.lastIndex = pos;\n\tnode.match = reToken.exec(source);\n\tif(node.match && node.match.index === pos) {\n\t\tnode.end = pos + node.match[0].length;\n\t\treturn node;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLook for a string literal. Returns null if not found, otherwise returns {type: \"string\", value:, start:, end:,}\n*/\nexports.parseStringLiteral = function(source,pos) {\n\tvar node = {\n\t\ttype: \"string\",\n\t\tstart: pos\n\t};\n\tvar reString = /(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\")|(?:'([^']*)')/g;\n\treString.lastIndex = pos;\n\tvar match = reString.exec(source);\n\tif(match && match.index === pos) {\n\t\tnode.value = match[1] !== undefined ? match[1] :(\n\t\t\tmatch[2] !== undefined ? match[2] : match[3] \n\t\t\t\t\t);\n\t\tnode.end = pos + match[0].length;\n\t\treturn node;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLook for a macro invocation parameter. Returns null if not found, or {type: \"macro-parameter\", name:, value:, start:, end:}\n*/\nexports.parseMacroParameter = function(source,pos) {\n\tvar node = {\n\t\ttype: \"macro-parameter\",\n\t\tstart: pos\n\t};\n\t// Define our regexp\n\tvar reMacroParameter = /(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\\s>\"'=]+)))/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the parameter\n\tvar token = $tw.utils.parseTokenRegExp(source,pos,reMacroParameter);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the parameter details\n\tnode.value = token.match[2] !== undefined ? token.match[2] : (\n\t\t\t\t\ttoken.match[3] !== undefined ? token.match[3] : (\n\t\t\t\t\t\ttoken.match[4] !== undefined ? token.match[4] : (\n\t\t\t\t\t\t\ttoken.match[5] !== undefined ? token.match[5] : (\n\t\t\t\t\t\t\t\ttoken.match[6] !== undefined ? token.match[6] : (\n\t\t\t\t\t\t\t\t\t\"\"\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t);\n\tif(token.match[1]) {\n\t\tnode.name = token.match[1];\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n/*\nLook for a macro invocation. Returns null if not found, or {type: \"macrocall\", name:, parameters:, start:, end:}\n*/\nexports.parseMacroInvocation = function(source,pos) {\n\tvar node = {\n\t\ttype: \"macrocall\",\n\t\tstart: pos,\n\t\tparams: []\n\t};\n\t// Define our regexps\n\tvar reMacroName = /([^\\s>\"'=]+)/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a double less than sign\n\tvar token = $tw.utils.parseTokenString(source,pos,\"<<\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the macro name\n\tvar name = $tw.utils.parseTokenRegExp(source,pos,reMacroName);\n\tif(!name) {\n\t\treturn null;\n\t}\n\tnode.name = name.match[1];\n\tpos = name.end;\n\t// Process parameters\n\tvar parameter = $tw.utils.parseMacroParameter(source,pos);\n\twhile(parameter) {\n\t\tnode.params.push(parameter);\n\t\tpos = parameter.end;\n\t\t// Get the next parameter\n\t\tparameter = $tw.utils.parseMacroParameter(source,pos);\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a double greater than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\">>\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n/*\nLook for an HTML attribute definition. Returns null if not found, otherwise returns {type: \"attribute\", name:, valueType: \"string|indirect|macro\", value:, start:, end:,}\n*/\nexports.parseAttribute = function(source,pos) {\n\tvar node = {\n\t\tstart: pos\n\t};\n\t// Define our regexps\n\tvar reAttributeName = /([^\\/\\s>\"'=]+)/g,\n\t\treUnquotedAttribute = /([^\\/\\s<>\"'=]+)/g,\n\t\treFilteredValue = /\\{\\{\\{(.+?)\\}\\}\\}/g,\n\t\treIndirectValue = /\\{\\{([^\\}]+)\\}\\}/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Get the attribute name\n\tvar name = $tw.utils.parseTokenRegExp(source,pos,reAttributeName);\n\tif(!name) {\n\t\treturn null;\n\t}\n\tnode.name = name.match[1];\n\tpos = name.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for an equals sign\n\tvar token = $tw.utils.parseTokenString(source,pos,\"=\");\n\tif(token) {\n\t\tpos = token.end;\n\t\t// Skip whitespace\n\t\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t\t// Look for a string literal\n\t\tvar stringLiteral = $tw.utils.parseStringLiteral(source,pos);\n\t\tif(stringLiteral) {\n\t\t\tpos = stringLiteral.end;\n\t\t\tnode.type = \"string\";\n\t\t\tnode.value = stringLiteral.value;\n\t\t} else {\n\t\t\t// Look for a filtered value\n\t\t\tvar filteredValue = $tw.utils.parseTokenRegExp(source,pos,reFilteredValue);\n\t\t\tif(filteredValue) {\n\t\t\t\tpos = filteredValue.end;\n\t\t\t\tnode.type = \"filtered\";\n\t\t\t\tnode.filter = filteredValue.match[1];\n\t\t\t} else {\n\t\t\t\t// Look for an indirect value\n\t\t\t\tvar indirectValue = $tw.utils.parseTokenRegExp(source,pos,reIndirectValue);\n\t\t\t\tif(indirectValue) {\n\t\t\t\t\tpos = indirectValue.end;\n\t\t\t\t\tnode.type = \"indirect\";\n\t\t\t\t\tnode.textReference = indirectValue.match[1];\n\t\t\t\t} else {\n\t\t\t\t\t// Look for a unquoted value\n\t\t\t\t\tvar unquotedValue = $tw.utils.parseTokenRegExp(source,pos,reUnquotedAttribute);\n\t\t\t\t\tif(unquotedValue) {\n\t\t\t\t\t\tpos = unquotedValue.end;\n\t\t\t\t\t\tnode.type = \"string\";\n\t\t\t\t\t\tnode.value = unquotedValue.match[1];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Look for a macro invocation value\n\t\t\t\t\t\tvar macroInvocation = $tw.utils.parseMacroInvocation(source,pos);\n\t\t\t\t\t\tif(macroInvocation) {\n\t\t\t\t\t\t\tpos = macroInvocation.end;\n\t\t\t\t\t\t\tnode.type = \"macro\";\n\t\t\t\t\t\t\tnode.value = macroInvocation;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tnode.type = \"string\";\n\t\t\t\t\t\t\tnode.value = \"true\";\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t} else {\n\t\tnode.type = \"string\";\n\t\tnode.value = \"true\";\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/parsers/pdfparser.js": {
"title": "$:/core/modules/parsers/pdfparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/pdfparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe PDF parser embeds a PDF viewer\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ImageParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"embed\",\n\t\t\tattributes: {}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:application/pdf;base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"application/pdf\"] = ImageParser;\n\n})();\n\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/core/modules/parsers/textparser.js": {
"title": "$:/core/modules/parsers/textparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/textparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe plain text parser processes blocks of source text into a degenerate parse tree consisting of a single text node\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar TextParser = function(type,text,options) {\n\tthis.tree = [{\n\t\ttype: \"codeblock\",\n\t\tattributes: {\n\t\t\tcode: {type: \"string\", value: text},\n\t\t\tlanguage: {type: \"string\", value: type}\n\t\t}\n\t}];\n};\n\nexports[\"text/plain\"] = TextParser;\nexports[\"text/x-tiddlywiki\"] = TextParser;\nexports[\"application/javascript\"] = TextParser;\nexports[\"application/json\"] = TextParser;\nexports[\"text/css\"] = TextParser;\nexports[\"application/x-tiddler-dictionary\"] = TextParser;\n\n})();\n\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/core/modules/parsers/videoparser.js": {
"title": "$:/core/modules/parsers/videoparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/videoparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe video parser parses a video tiddler into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar VideoParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"video\",\n\t\t\tattributes: {\n\t\t\t\tcontrols: {type: \"string\", value: \"controls\"},\n\t\t\t\tstyle: {type: \"string\", value: \"width: 100%; object-fit: contain\"}\n\t\t\t}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"video/ogg\"] = VideoParser;\nexports[\"video/webm\"] = VideoParser;\nexports[\"video/mp4\"] = VideoParser;\nexports[\"video/quicktime\"] = VideoParser;\n\n})();\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/core/modules/parsers/wikiparser/rules/codeblock.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/codeblock.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/codeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for code blocks. For example:\n\n```\n\t```\n\tThis text will not be //wikified//\n\t```\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"codeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match and get language if defined\n\tthis.matchRegExp = /```([\\w-]*)\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /(\\r?\\n```$)/mg;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Look for the end of the block\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the block\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\t// Return the $codeblock widget\n\treturn [{\n\t\t\ttype: \"codeblock\",\n\t\t\tattributes: {\n\t\t\t\t\tcode: {type: \"string\", value: text},\n\t\t\t\t\tlanguage: {type: \"string\", value: this.match[1]}\n\t\t\t}\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/codeinline.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/codeinline.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/codeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for code runs. For example:\n\n```\n\tThis is a `code run`.\n\tThis is another ``code run``\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"codeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(``?)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar reEnd = new RegExp(this.match[1], \"mg\");\n\t// Look for the end marker\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the text\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"code\",\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\ttext: text\n\t\t}]\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/commentblock.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/commentblock.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/commentblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for HTML comments. For example:\n\n```\n<!-- This is a comment -->\n```\n\nNote that the syntax for comments is simplified to an opening \"<!--\" sequence and a closing \"-->\" sequence -- HTML itself implements a more complex format (see http://ostermiller.org/findhtmlcomment.html)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"commentblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /<!--/mg;\n\tthis.endMatchRegExp = /-->/mg;\n};\n\nexports.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\tif(this.match) {\n\t\tthis.endMatchRegExp.lastIndex = startPos + this.match[0].length;\n\t\tthis.endMatch = this.endMatchRegExp.exec(this.parser.source);\n\t\tif(this.endMatch) {\n\t\t\treturn this.match.index;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\t// Don't return any elements\n\treturn [];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/commentinline.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/commentinline.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/commentinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for HTML comments. For example:\n\n```\n<!-- This is a comment -->\n```\n\nNote that the syntax for comments is simplified to an opening \"<!--\" sequence and a closing \"-->\" sequence -- HTML itself implements a more complex format (see http://ostermiller.org/findhtmlcomment.html)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"commentinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /<!--/mg;\n\tthis.endMatchRegExp = /-->/mg;\n};\n\nexports.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\tif(this.match) {\n\t\tthis.endMatchRegExp.lastIndex = startPos + this.match[0].length;\n\t\tthis.endMatch = this.endMatchRegExp.exec(this.parser.source);\n\t\tif(this.endMatch) {\n\t\t\treturn this.match.index;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\t// Don't return any elements\n\treturn [];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/dash.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/dash.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/dash.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for dashes. For example:\n\n```\nThis is an en-dash: --\n\nThis is an em-dash: ---\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"dash\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /-{2,3}(?!-)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar dash = this.match[0].length === 2 ? \"–\" : \"—\";\n\treturn [{\n\t\ttype: \"entity\",\n\t\tentity: dash\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/emphasis/bold.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/emphasis/bold.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/bold.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - bold. For example:\n\n```\n\tThis is ''bold'' text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except bold \n\\rules only bold \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"bold\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /''/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/''/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"strong\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/emphasis/italic.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/emphasis/italic.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/italic.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - italic. For example:\n\n```\n\tThis is //italic// text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except italic\n\\rules only italic\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"italic\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\/\\//mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/\\/\\//mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"em\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - strikethrough. For example:\n\n```\n\tThis is ~~strikethrough~~ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except strikethrough \n\\rules only strikethrough \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"strikethrough\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /~~/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/~~/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"strike\",\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - subscript. For example:\n\n```\n\tThis is ,,subscript,, text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except subscript \n\\rules only subscript \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"subscript\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /,,/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/,,/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"sub\",\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - superscript. For example:\n\n```\n\tThis is ^^superscript^^ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except superscript \n\\rules only superscript \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"superscript\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\^\\^/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/\\^\\^/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"sup\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - underscore. For example:\n\n```\n\tThis is __underscore__ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except underscore \n\\rules only underscore\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"underscore\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /__/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/__/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"u\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/entity.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/entity.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/entity.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for HTML entities. For example:\n\n```\n\tThis is a copyright symbol: ©\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"entity\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(&#?[a-zA-Z0-9]{2,8};)/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar entityString = this.match[1];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Return the entity\n\treturn [{type: \"entity\", entity: this.match[0]}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/extlink.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/extlink.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/extlink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for external links. For example:\n\n```\nAn external link: https://www.tiddlywiki.com/\n\nA suppressed external link: ~http://www.tiddlyspace.com/\n```\n\nExternal links can be suppressed by preceding them with `~`.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"extlink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /~?(?:file|http|https|mailto|ftp|irc|news|data|skype):[^\\s<>{}\\[\\]`|\"\\\\^]+(?:\\/|\\b)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Create the link unless it is suppressed\n\tif(this.match[0].substr(0,1) === \"~\") {\n\t\treturn [{type: \"text\", text: this.match[0].substr(1)}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tattributes: {\n\t\t\t\thref: {type: \"string\", value: this.match[0]},\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t\ttarget: {type: \"string\", value: \"_blank\"},\n\t\t\t\trel: {type: \"string\", value: \"noopener noreferrer\"}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: this.match[0]\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for block-level filtered transclusion. For example:\n\n```\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"filteredtranscludeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{\\{([^\\|]+?)(?:\\|([^\\|\\{\\}]+))?(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}([^\\}]*)\\}(?:\\.(\\S+))?(?:\\r?\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar filter = this.match[1],\n\t\ttooltip = this.match[2],\n\t\ttemplate = $tw.utils.trim(this.match[3]),\n\t\tstyle = this.match[4],\n\t\tclasses = this.match[5];\n\t// Return the list widget\n\tvar node = {\n\t\ttype: \"list\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: filter}\n\t\t},\n\t\tisBlock: true\n\t};\n\tif(tooltip) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: tooltip};\n\t}\n\tif(template) {\n\t\tnode.attributes.template = {type: \"string\", value: template};\n\t}\n\tif(style) {\n\t\tnode.attributes.style = {type: \"string\", value: style};\n\t}\n\tif(classes) {\n\t\tnode.attributes.itemClass = {type: \"string\", value: classes.split(\".\").join(\" \")};\n\t}\n\treturn [node];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for inline filtered transclusion. For example:\n\n```\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"filteredtranscludeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{\\{([^\\|]+?)(?:\\|([^\\|\\{\\}]+))?(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}([^\\}]*)\\}(?:\\.(\\S+))?/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar filter = this.match[1],\n\t\ttooltip = this.match[2],\n\t\ttemplate = $tw.utils.trim(this.match[3]),\n\t\tstyle = this.match[4],\n\t\tclasses = this.match[5];\n\t// Return the list widget\n\tvar node = {\n\t\ttype: \"list\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: filter}\n\t\t}\n\t};\n\tif(tooltip) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: tooltip};\n\t}\n\tif(template) {\n\t\tnode.attributes.template = {type: \"string\", value: template};\n\t}\n\tif(style) {\n\t\tnode.attributes.style = {type: \"string\", value: style};\n\t}\n\tif(classes) {\n\t\tnode.attributes.itemClass = {type: \"string\", value: classes.split(\".\").join(\" \")};\n\t}\n\treturn [node];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for marking areas with hard line breaks. For example:\n\n```\n\"\"\"\nThis is some text\nThat is set like\nIt is a Poem\nWhen it is\nClearly\nNot\n\"\"\"\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"hardlinebreaks\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\"\"\"(?:\\r?\\n)?/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /(\"\"\")|(\\r?\\n)/mg,\n\t\ttree = [],\n\t\tmatch;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tdo {\n\t\t// Parse the run up to the terminator\n\t\ttree.push.apply(tree,this.parser.parseInlineRun(reEnd,{eatTerminator: false}));\n\t\t// Redo the terminator match\n\t\treEnd.lastIndex = this.parser.pos;\n\t\tmatch = reEnd.exec(this.parser.source);\n\t\tif(match) {\n\t\t\tthis.parser.pos = reEnd.lastIndex;\n\t\t\t// Add a line break if the terminator was a line break\n\t\t\tif(match[2]) {\n\t\t\t\ttree.push({type: \"element\", tag: \"br\"});\n\t\t\t}\n\t\t}\n\t} while(match && !match[1]);\n\t// Return the nodes\n\treturn tree;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/heading.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/heading.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/heading.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for headings\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"heading\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(!{1,6})/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar headingLevel = this.match[1].length;\n\t// Move past the !s\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse any classes, whitespace and then the heading itself\n\tvar classes = this.parser.parseClasses();\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tvar tree = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// Return the heading\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"h\" + headingLevel, \n\t\tattributes: {\n\t\t\t\"class\": {type: \"string\", value: classes.join(\" \")}\n\t\t},\n\t\tchildren: tree\n\t}];\n};\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/horizrule.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/horizrule.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/horizrule.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for rules. For example:\n\n```\n---\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"horizrule\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /-{3,}\\r?(?:\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\treturn [{type: \"element\", tag: \"hr\"}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/html.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/html.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/html.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for HTML elements and widgets. For example:\n\n{{{\n<aside>\nThis is an HTML5 aside element\n</aside>\n\n<$slider target=\"MyTiddler\">\nThis is a widget invocation\n</$slider>\n\n}}}\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"html\";\nexports.types = {inline: true, block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextTag = this.findNextTag(this.parser.source,startPos,{\n\t\trequireLineBreak: this.is.block\n\t});\n\treturn this.nextTag ? this.nextTag.start : undefined;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Retrieve the most recent match so that recursive calls don't overwrite it\n\tvar tag = this.nextTag;\n\tthis.nextTag = null;\n\t// Advance the parser position to past the tag\n\tthis.parser.pos = tag.end;\n\t// Check for an immediately following double linebreak\n\tvar hasLineBreak = !tag.isSelfClosing && !!$tw.utils.parseTokenRegExp(this.parser.source,this.parser.pos,/([^\\S\\n\\r]*\\r?\\n(?:[^\\S\\n\\r]*\\r?\\n|$))/g);\n\t// Set whether we're in block mode\n\ttag.isBlock = this.is.block || hasLineBreak;\n\t// Parse the body if we need to\n\tif(!tag.isSelfClosing && $tw.config.htmlVoidElements.indexOf(tag.tag) === -1) {\n\t\t\tvar reEndString = \"</\" + $tw.utils.escapeRegExp(tag.tag) + \">\",\n\t\t\t\treEnd = new RegExp(\"(\" + reEndString + \")\",\"mg\");\n\t\tif(hasLineBreak) {\n\t\t\ttag.children = this.parser.parseBlocks(reEndString);\n\t\t} else {\n\t\t\ttag.children = this.parser.parseInlineRun(reEnd);\n\t\t}\n\t\treEnd.lastIndex = this.parser.pos;\n\t\tvar endMatch = reEnd.exec(this.parser.source);\n\t\tif(endMatch && endMatch.index === this.parser.pos) {\n\t\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t\t}\n\t}\n\t// Return the tag\n\treturn [tag];\n};\n\n/*\nLook for an HTML tag. Returns null if not found, otherwise returns {type: \"element\", name:, attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseTag = function(source,pos,options) {\n\toptions = options || {};\n\tvar token,\n\t\tnode = {\n\t\t\ttype: \"element\",\n\t\t\tstart: pos,\n\t\t\tattributes: {}\n\t\t};\n\t// Define our regexps\n\tvar reTagName = /([a-zA-Z0-9\\-\\$]+)/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a less than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\"<\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the tag name\n\ttoken = $tw.utils.parseTokenRegExp(source,pos,reTagName);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tnode.tag = token.match[1];\n\tif(node.tag.slice(1).indexOf(\"$\") !== -1) {\n\t\treturn null;\n\t}\n\tif(node.tag.charAt(0) === \"$\") {\n\t\tnode.type = node.tag.substr(1);\n\t}\n\tpos = token.end;\n\t// Check that the tag is terminated by a space, / or >\n\tif(!$tw.utils.parseWhiteSpace(source,pos) && !(source.charAt(pos) === \"/\") && !(source.charAt(pos) === \">\") ) {\n\t\treturn null;\n\t}\n\t// Process attributes\n\tvar attribute = $tw.utils.parseAttribute(source,pos);\n\twhile(attribute) {\n\t\tnode.attributes[attribute.name] = attribute;\n\t\tpos = attribute.end;\n\t\t// Get the next attribute\n\t\tattribute = $tw.utils.parseAttribute(source,pos);\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a closing slash\n\ttoken = $tw.utils.parseTokenString(source,pos,\"/\");\n\tif(token) {\n\t\tpos = token.end;\n\t\tnode.isSelfClosing = true;\n\t}\n\t// Look for a greater than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\">\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Check for a required line break\n\tif(options.requireLineBreak) {\n\t\ttoken = $tw.utils.parseTokenRegExp(source,pos,/([^\\S\\n\\r]*\\r?\\n(?:[^\\S\\n\\r]*\\r?\\n|$))/g);\n\t\tif(!token) {\n\t\t\treturn null;\n\t\t}\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\nexports.findNextTag = function(source,pos,options) {\n\t// A regexp for finding candidate HTML tags\n\tvar reLookahead = /<([a-zA-Z\\-\\$]+)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a tag\n\t\tvar tag = this.parseTag(source,match.index,options);\n\t\t// Return success\n\t\tif(tag && this.isLegalTag(tag)) {\n\t\t\treturn tag;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\nexports.isLegalTag = function(tag) {\n\t// Widgets are always OK\n\tif(tag.type !== \"element\") {\n\t\treturn true;\n\t// If it's an HTML tag that starts with a dash then it's not legal\n\t} else if(tag.tag.charAt(0) === \"-\") {\n\t\treturn false;\n\t} else {\n\t\t// Otherwise it's OK\n\t\treturn true;\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/image.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/image.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/image.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for embedding images. For example:\n\n```\n[img[https://tiddlywiki.com/fractalveg.jpg]]\n[img width=23 height=24 [https://tiddlywiki.com/fractalveg.jpg]]\n[img width={{!!width}} height={{!!height}} [https://tiddlywiki.com/fractalveg.jpg]]\n[img[Description of image|https://tiddlywiki.com/fractalveg.jpg]]\n[img[TiddlerTitle]]\n[img[Description of image|TiddlerTitle]]\n```\n\nGenerates the `<$image>` widget.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"image\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextImage = this.findNextImage(this.parser.source,startPos);\n\treturn this.nextImage ? this.nextImage.start : undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.nextImage.end;\n\tvar node = {\n\t\ttype: \"image\",\n\t\tattributes: this.nextImage.attributes\n\t};\n\treturn [node];\n};\n\n/*\nFind the next image from the current position\n*/\nexports.findNextImage = function(source,pos) {\n\t// A regexp for finding candidate HTML tags\n\tvar reLookahead = /(\\[img)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a tag\n\t\tvar tag = this.parseImage(source,match.index);\n\t\t// Return success\n\t\tif(tag) {\n\t\t\treturn tag;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\n/*\nLook for an image at the specified position. Returns null if not found, otherwise returns {type: \"image\", attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseImage = function(source,pos) {\n\tvar token,\n\t\tnode = {\n\t\t\ttype: \"image\",\n\t\t\tstart: pos,\n\t\t\tattributes: {}\n\t\t};\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[img`\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[img\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Process attributes\n\tif(source.charAt(pos) !== \"[\") {\n\t\tvar attribute = $tw.utils.parseAttribute(source,pos);\n\t\twhile(attribute) {\n\t\t\tnode.attributes[attribute.name] = attribute;\n\t\t\tpos = attribute.end;\n\t\t\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t\t\tif(source.charAt(pos) !== \"[\") {\n\t\t\t\t// Get the next attribute\n\t\t\t\tattribute = $tw.utils.parseAttribute(source,pos);\n\t\t\t} else {\n\t\t\t\tattribute = null;\n\t\t\t}\n\t\t}\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[` after the attributes\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Get the source up to the terminating `]]`\n\ttoken = $tw.utils.parseTokenRegExp(source,pos,/(?:([^|\\]]*?)\\|)?([^\\]]+?)\\]\\]/g);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\tif(token.match[1]) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: token.match[1].trim()};\n\t}\n\tnode.attributes.source = {type: \"string\", value: (token.match[2] || \"\").trim()};\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/import.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/import.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/import.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for importing variable definitions\n\n```\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"import\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\import[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\tvar self = this;\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the filter terminated by a line break\n\tvar reMatch = /(.*)(\\r?\\n)|$/mg;\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\tthis.parser.pos = reMatch.lastIndex;\n\t// Parse tree nodes to return\n\treturn [{\n\t\ttype: \"importvariables\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: match[1]}\n\t\t},\n\t\tchildren: []\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/list.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/list.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/list.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for lists. For example:\n\n```\n* This is an unordered list\n* It has two items\n\n# This is a numbered list\n## With a subitem\n# And a third item\n\n; This is a term that is being defined\n: This is the definition of that term\n```\n\nNote that lists can be nested arbitrarily:\n\n```\n#** One\n#* Two\n#** Three\n#**** Four\n#**# Five\n#**## Six\n## Seven\n### Eight\n## Nine\n```\n\nA CSS class can be applied to a list item as follows:\n\n```\n* List item one\n*.active List item two has the class `active`\n* List item three\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"list\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /([\\*#;:>]+)/mg;\n};\n\nvar listTypes = {\n\t\"*\": {listTag: \"ul\", itemTag: \"li\"},\n\t\"#\": {listTag: \"ol\", itemTag: \"li\"},\n\t\";\": {listTag: \"dl\", itemTag: \"dt\"},\n\t\":\": {listTag: \"dl\", itemTag: \"dd\"},\n\t\">\": {listTag: \"blockquote\", itemTag: \"div\"}\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Array of parse tree nodes for the previous row of the list\n\tvar listStack = [];\n\t// Cycle through the items in the list\n\twhile(true) {\n\t\t// Match the list marker\n\t\tvar reMatch = /([\\*#;:>]+)/mg;\n\t\treMatch.lastIndex = this.parser.pos;\n\t\tvar match = reMatch.exec(this.parser.source);\n\t\tif(!match || match.index !== this.parser.pos) {\n\t\t\tbreak;\n\t\t}\n\t\t// Check whether the list type of the top level matches\n\t\tvar listInfo = listTypes[match[0].charAt(0)];\n\t\tif(listStack.length > 0 && listStack[0].tag !== listInfo.listTag) {\n\t\t\tbreak;\n\t\t}\n\t\t// Move past the list marker\n\t\tthis.parser.pos = match.index + match[0].length;\n\t\t// Walk through the list markers for the current row\n\t\tfor(var t=0; t<match[0].length; t++) {\n\t\t\tlistInfo = listTypes[match[0].charAt(t)];\n\t\t\t// Remove any stacked up element if we can't re-use it because the list type doesn't match\n\t\t\tif(listStack.length > t && listStack[t].tag !== listInfo.listTag) {\n\t\t\t\tlistStack.splice(t,listStack.length - t);\n\t\t\t}\n\t\t\t// Construct the list element or reuse the previous one at this level\n\t\t\tif(listStack.length <= t) {\n\t\t\t\tvar listElement = {type: \"element\", tag: listInfo.listTag, children: [\n\t\t\t\t\t{type: \"element\", tag: listInfo.itemTag, children: []}\n\t\t\t\t]};\n\t\t\t\t// Link this list element into the last child item of the parent list item\n\t\t\t\tif(t) {\n\t\t\t\t\tvar prevListItem = listStack[t-1].children[listStack[t-1].children.length-1];\n\t\t\t\t\tprevListItem.children.push(listElement);\n\t\t\t\t}\n\t\t\t\t// Save this element in the stack\n\t\t\t\tlistStack[t] = listElement;\n\t\t\t} else if(t === (match[0].length - 1)) {\n\t\t\t\tlistStack[t].children.push({type: \"element\", tag: listInfo.itemTag, children: []});\n\t\t\t}\n\t\t}\n\t\tif(listStack.length > match[0].length) {\n\t\t\tlistStack.splice(match[0].length,listStack.length - match[0].length);\n\t\t}\n\t\t// Process the body of the list item into the last list item\n\t\tvar lastListChildren = listStack[listStack.length-1].children,\n\t\t\tlastListItem = lastListChildren[lastListChildren.length-1],\n\t\t\tclasses = this.parser.parseClasses();\n\t\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\t\tvar tree = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t\tlastListItem.children.push.apply(lastListItem.children,tree);\n\t\tif(classes.length > 0) {\n\t\t\t$tw.utils.addClassToParseTreeNode(lastListItem,classes.join(\" \"));\n\t\t}\n\t\t// Consume any whitespace following the list item\n\t\tthis.parser.skipWhitespace();\n\t}\n\t// Return the root element of the list\n\treturn [listStack[0]];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/macrocallblock.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/macrocallblock.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrocallblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for block macro calls\n\n```\n<<name value value2>>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrocallblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /<<([^>\\s]+)(?:\\s*)((?:[^>]|(?:>(?!>)))*?)>>(?:\\r?\\n|$)/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar macroName = this.match[1],\n\t\tparamString = this.match[2];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar params = [],\n\t\treParam = /\\s*(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))/mg,\n\t\tparamMatch = reParam.exec(paramString);\n\twhile(paramMatch) {\n\t\t// Process this parameter\n\t\tvar paramInfo = {\n\t\t\tvalue: paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5] || paramMatch[6]\n\t\t};\n\t\tif(paramMatch[1]) {\n\t\t\tparamInfo.name = paramMatch[1];\n\t\t}\n\t\tparams.push(paramInfo);\n\t\t// Find the next match\n\t\tparamMatch = reParam.exec(paramString);\n\t}\n\treturn [{\n\t\ttype: \"macrocall\",\n\t\tname: macroName,\n\t\tparams: params,\n\t\tisBlock: true\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/macrocallinline.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/macrocallinline.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrocallinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for macro calls\n\n```\n<<name value value2>>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrocallinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /<<([^\\s>]+)\\s*([\\s\\S]*?)>>/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar macroName = this.match[1],\n\t\tparamString = this.match[2];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar params = [],\n\t\treParam = /\\s*(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))/mg,\n\t\tparamMatch = reParam.exec(paramString);\n\twhile(paramMatch) {\n\t\t// Process this parameter\n\t\tvar paramInfo = {\n\t\t\tvalue: paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5]|| paramMatch[6]\n\t\t};\n\t\tif(paramMatch[1]) {\n\t\t\tparamInfo.name = paramMatch[1];\n\t\t}\n\t\tparams.push(paramInfo);\n\t\t// Find the next match\n\t\tparamMatch = reParam.exec(paramString);\n\t}\n\treturn [{\n\t\ttype: \"macrocall\",\n\t\tname: macroName,\n\t\tparams: params\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/macrodef.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/macrodef.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrodef.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for macro definitions\n\n```\n\\define name(param:defaultvalue,param2:defaultvalue)\ndefinition text, including $param$ markers\n\\end\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrodef\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\define\\s+([^(\\s]+)\\(\\s*([^)]*)\\)(\\s*\\r?\\n)?/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Move past the macro name and parameters\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the parameters\n\tvar paramString = this.match[2],\n\t\tparams = [];\n\tif(paramString !== \"\") {\n\t\tvar reParam = /\\s*([A-Za-z0-9\\-_]+)(?:\\s*:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))?/mg,\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\twhile(paramMatch) {\n\t\t\t// Save the parameter details\n\t\t\tvar paramInfo = {name: paramMatch[1]},\n\t\t\t\tdefaultValue = paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5] || paramMatch[6];\n\t\t\tif(defaultValue) {\n\t\t\t\tparamInfo[\"default\"] = defaultValue;\n\t\t\t}\n\t\t\tparams.push(paramInfo);\n\t\t\t// Look for the next parameter\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\t}\n\t}\n\t// Is this a multiline definition?\n\tvar reEnd;\n\tif(this.match[3]) {\n\t\t// If so, the end of the body is marked with \\end\n\t\treEnd = /(\\r?\\n\\\\end[^\\S\\n\\r]*(?:$|\\r?\\n))/mg;\n\t} else {\n\t\t// Otherwise, the end of the definition is marked by the end of the line\n\t\treEnd = /($|\\r?\\n)/mg;\n\t\t// Move past any whitespace\n\t\tthis.parser.pos = $tw.utils.skipWhiteSpace(this.parser.source,this.parser.pos);\n\t}\n\t// Find the end of the definition\n\treEnd.lastIndex = this.parser.pos;\n\tvar text,\n\t\tendMatch = reEnd.exec(this.parser.source);\n\tif(endMatch) {\n\t\ttext = this.parser.source.substring(this.parser.pos,endMatch.index);\n\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t} else {\n\t\t// We didn't find the end of the definition, so we'll make it blank\n\t\ttext = \"\";\n\t}\n\t// Save the macro definition\n\treturn [{\n\t\ttype: \"set\",\n\t\tattributes: {\n\t\t\tname: {type: \"string\", value: this.match[1]},\n\t\t\tvalue: {type: \"string\", value: text}\n\t\t},\n\t\tchildren: [],\n\t\tparams: params,\n\t\tisMacroDefinition: true\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/prettyextlink.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/prettyextlink.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/prettyextlink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for external links. For example:\n\n```\n[ext[https://tiddlywiki.com/fractalveg.jpg]]\n[ext[Tooltip|https://tiddlywiki.com/fractalveg.jpg]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"prettyextlink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextLink = this.findNextLink(this.parser.source,startPos);\n\treturn this.nextLink ? this.nextLink.start : undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.nextLink.end;\n\treturn [this.nextLink];\n};\n\n/*\nFind the next link from the current position\n*/\nexports.findNextLink = function(source,pos) {\n\t// A regexp for finding candidate links\n\tvar reLookahead = /(\\[ext\\[)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a link\n\t\tvar link = this.parseLink(source,match.index);\n\t\t// Return success\n\t\tif(link) {\n\t\t\treturn link;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\n/*\nLook for an link at the specified position. Returns null if not found, otherwise returns {type: \"element\", tag: \"a\", attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseLink = function(source,pos) {\n\tvar token,\n\t\ttextNode = {\n\t\t\ttype: \"text\"\n\t\t},\n\t\tnode = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tstart: pos,\n\t\t\tattributes: {\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t},\n\t\t\tchildren: [textNode]\n\t\t};\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[ext[`\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[ext[\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Look ahead for the terminating `]]`\n\tvar closePos = source.indexOf(\"]]\",pos);\n\tif(closePos === -1) {\n\t\treturn null;\n\t}\n\t// Look for a `|` separating the tooltip\n\tvar splitPos = source.indexOf(\"|\",pos);\n\tif(splitPos === -1 || splitPos > closePos) {\n\t\tsplitPos = null;\n\t}\n\t// Pull out the tooltip and URL\n\tvar tooltip, URL;\n\tif(splitPos) {\n\t\tURL = source.substring(splitPos + 1,closePos).trim();\n\t\ttextNode.text = source.substring(pos,splitPos).trim();\n\t} else {\n\t\tURL = source.substring(pos,closePos).trim();\n\t\ttextNode.text = URL;\n\t}\n\tnode.attributes.href = {type: \"string\", value: URL};\n\tnode.attributes.target = {type: \"string\", value: \"_blank\"};\n\tnode.attributes.rel = {type: \"string\", value: \"noopener noreferrer\"};\n\t// Update the end position\n\tnode.end = closePos + 2;\n\treturn node;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/prettylink.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/prettylink.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/prettylink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for pretty links. For example:\n\n```\n[[Introduction]]\n\n[[Link description|TiddlerTitle]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"prettylink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\[\\[(.*?)(?:\\|(.*?))?\\]\\]/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Process the link\n\tvar text = this.match[1],\n\t\tlink = this.match[2] || text;\n\tif($tw.utils.isLinkExternal(link)) {\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tattributes: {\n\t\t\t\thref: {type: \"string\", value: link},\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t\ttarget: {type: \"string\", value: \"_blank\"},\n\t\t\t\trel: {type: \"string\", value: \"noopener noreferrer\"}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: text\n\t\t\t}]\n\t\t}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"link\",\n\t\t\tattributes: {\n\t\t\t\tto: {type: \"string\", value: link}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: text\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/quoteblock.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/quoteblock.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/quoteblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for quote blocks. For example:\n\n```\n\t<<<.optionalClass(es) optional cited from\n\ta quote\n\t<<<\n\t\n\t<<<.optionalClass(es)\n\ta quote\n\t<<< optional cited from\n```\n\nQuotes can be quoted by putting more <s\n\n```\n\t<<<\n\tQuote Level 1\n\t\n\t<<<<\n\tQuoteLevel 2\n\t<<<<\n\t\n\t<<<\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"quoteblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(<<<+)/mg;\n};\n\nexports.parse = function() {\n\tvar classes = [\"tc-quote\"];\n\t// Get all the details of the match\n\tvar reEndString = \"^\" + this.match[1] + \"(?!<)\";\n\t// Move past the <s\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t\n\t// Parse any classes, whitespace and then the optional cite itself\n\tclasses.push.apply(classes, this.parser.parseClasses());\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tvar cite = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// before handling the cite, parse the body of the quote\n\tvar tree= this.parser.parseBlocks(reEndString);\n\t// If we got a cite, put it before the text\n\tif(cite.length > 0) {\n\t\ttree.unshift({\n\t\t\ttype: \"element\",\n\t\t\ttag: \"cite\",\n\t\t\tchildren: cite\n\t\t});\n\t}\n\t// Parse any optional cite\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tcite = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// If we got a cite, push it\n\tif(cite.length > 0) {\n\t\ttree.push({\n\t\t\ttype: \"element\",\n\t\t\ttag: \"cite\",\n\t\t\tchildren: cite\n\t\t});\n\t}\n\t// Return the blockquote element\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"blockquote\",\n\t\tattributes: {\n\t\t\tclass: { type: \"string\", value: classes.join(\" \") },\n\t\t},\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/rules.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/rules.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/rules.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for rules specifications\n\n```\n\\rules except ruleone ruletwo rulethree\n\\rules only ruleone ruletwo rulethree\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"rules\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\rules[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse whitespace delimited tokens terminated by a line break\n\tvar reMatch = /[^\\S\\n]*(\\S+)|(\\r?\\n)/mg,\n\t\ttokens = [];\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\twhile(match && match.index === this.parser.pos) {\n\t\tthis.parser.pos = reMatch.lastIndex;\n\t\t// Exit if we've got the line break\n\t\tif(match[2]) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the token\n\t\tif(match[1]) {\n\t\t\ttokens.push(match[1]);\n\t\t}\n\t\t// Match the next token\n\t\tmatch = reMatch.exec(this.parser.source);\n\t}\n\t// Process the tokens\n\tif(tokens.length > 0) {\n\t\tthis.parser.amendRules(tokens[0],tokens.slice(1));\n\t}\n\t// No parse tree nodes to return\n\treturn [];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/styleblock.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/styleblock.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/styleblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for assigning styles and classes to paragraphs and other blocks. For example:\n\n```\n@@.myClass\n@@background-color:red;\nThis paragraph will have the CSS class `myClass`.\n\n* The `<ul>` around this list will also have the class `myClass`\n* List item 2\n\n@@\n```\n\nNote that classes and styles can be mixed subject to the rule that styles must precede classes. For example\n\n```\n@@.myFirstClass.mySecondClass\n@@width:100px;.myThirdClass\nThis is a paragraph\n@@\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"styleblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /@@((?:[^\\.\\r\\n\\s:]+:[^\\r\\n;]+;)+)?(?:\\.([^\\r\\n\\s]+))?\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEndString = \"^@@(?:\\\\r?\\\\n)?\";\n\tvar classes = [], styles = [];\n\tdo {\n\t\t// Get the class and style\n\t\tif(this.match[1]) {\n\t\t\tstyles.push(this.match[1]);\n\t\t}\n\t\tif(this.match[2]) {\n\t\t\tclasses.push(this.match[2].split(\".\").join(\" \"));\n\t\t}\n\t\t// Move past the match\n\t\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t\t// Look for another line of classes and styles\n\t\tthis.match = this.matchRegExp.exec(this.parser.source);\n\t} while(this.match && this.match.index === this.parser.pos);\n\t// Parse the body\n\tvar tree = this.parser.parseBlocks(reEndString);\n\tfor(var t=0; t<tree.length; t++) {\n\t\tif(classes.length > 0) {\n\t\t\t$tw.utils.addClassToParseTreeNode(tree[t],classes.join(\" \"));\n\t\t}\n\t\tif(styles.length > 0) {\n\t\t\t$tw.utils.addAttributeToParseTreeNode(tree[t],\"style\",styles.join(\"\"));\n\t\t}\n\t}\n\treturn tree;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/styleinline.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/styleinline.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/styleinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for assigning styles and classes to inline runs. For example:\n\n```\n@@.myClass This is some text with a class@@\n@@background-color:red;This is some text with a background colour@@\n@@width:100px;.myClass This is some text with a class and a width@@\n```\n\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"styleinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /@@((?:[^\\.\\r\\n\\s:]+:[^\\r\\n;]+;)+)?(\\.(?:[^\\r\\n\\s]+)\\s+)?/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /@@/g;\n\t// Get the styles and class\n\tvar stylesString = this.match[1],\n\t\tclassString = this.match[2] ? this.match[2].split(\".\").join(\" \") : undefined;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the run up to the terminator\n\tvar tree = this.parser.parseInlineRun(reEnd,{eatTerminator: true});\n\t// Return the classed span\n\tvar node = {\n\t\ttype: \"element\",\n\t\ttag: \"span\",\n\t\tattributes: {\n\t\t\t\"class\": {type: \"string\", value: \"tc-inline-style\"}\n\t\t},\n\t\tchildren: tree\n\t};\n\tif(classString) {\n\t\t$tw.utils.addClassToParseTreeNode(node,classString);\n\t}\n\tif(stylesString) {\n\t\t$tw.utils.addAttributeToParseTreeNode(node,\"style\",stylesString);\n\t}\n\treturn [node];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/syslink.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/syslink.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/syslink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for system tiddler links.\nCan be suppressed preceding them with `~`.\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"syslink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = new RegExp(\n\t\t\"~?\\\\$:\\\\/[\" +\n\t\t$tw.config.textPrimitives.anyLetter.substr(1,$tw.config.textPrimitives.anyLetter.length - 2) +\n\t\t\"\\/._-]+\",\n\t\t\"mg\"\n\t);\n};\n\nexports.parse = function() {\n\tvar match = this.match[0];\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Create the link unless it is suppressed\n\tif(match.substr(0,1) === \"~\") {\n\t\treturn [{type: \"text\", text: match.substr(1)}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"link\",\n\t\t\tattributes: {\n\t\t\t\tto: {type: \"string\", value: match}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: match\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/table.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/table.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/table.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for tables.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"table\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\|(?:[^\\n]*)\\|(?:[fhck]?)\\r?(?:\\n|$)/mg;\n};\n\nvar processRow = function(prevColumns) {\n\tvar cellRegExp = /(?:\\|([^\\n\\|]*)\\|)|(\\|[fhck]?\\r?(?:\\n|$))/mg,\n\t\tcellTermRegExp = /((?:\\x20*)\\|)/mg,\n\t\ttree = [],\n\t\tcol = 0,\n\t\tcolSpanCount = 1,\n\t\tprevCell,\n\t\tvAlign;\n\t// Match a single cell\n\tcellRegExp.lastIndex = this.parser.pos;\n\tvar cellMatch = cellRegExp.exec(this.parser.source);\n\twhile(cellMatch && cellMatch.index === this.parser.pos) {\n\t\tif(cellMatch[1] === \"~\") {\n\t\t\t// Rowspan\n\t\t\tvar last = prevColumns[col];\n\t\t\tif(last) {\n\t\t\t\tlast.rowSpanCount++;\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"rowspan\",last.rowSpanCount);\n\t\t\t\tvAlign = $tw.utils.getAttributeValueFromParseTreeNode(last.element,\"valign\",\"center\");\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"valign\",vAlign);\n\t\t\t\tif(colSpanCount > 1) {\n\t\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"colspan\",colSpanCount);\n\t\t\t\t\tcolSpanCount = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[1] === \">\") {\n\t\t\t// Colspan\n\t\t\tcolSpanCount++;\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[1] === \"<\" && prevCell) {\n\t\t\tcolSpanCount = 1 + $tw.utils.getAttributeValueFromParseTreeNode(prevCell,\"colspan\",1);\n\t\t\t$tw.utils.addAttributeToParseTreeNode(prevCell,\"colspan\",colSpanCount);\n\t\t\tcolSpanCount = 1;\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[2]) {\n\t\t\t// End of row\n\t\t\tif(prevCell && colSpanCount > 1) {\n\t\t\t\tif(prevCell.attributes && prevCell.attributes && prevCell.attributes.colspan) {\n\t\t\t\t\t\tcolSpanCount += prevCell.attributes.colspan.value;\n\t\t\t\t} else {\n\t\t\t\t\tcolSpanCount -= 1;\n\t\t\t\t}\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(prevCell,\"colspan\",colSpanCount);\n\t\t\t}\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t\tbreak;\n\t\t} else {\n\t\t\t// For ordinary cells, step beyond the opening `|`\n\t\t\tthis.parser.pos++;\n\t\t\t// Look for a space at the start of the cell\n\t\t\tvar spaceLeft = false;\n\t\t\tvAlign = null;\n\t\t\tif(this.parser.source.substr(this.parser.pos).search(/^\\^([^\\^]|\\^\\^)/) === 0) {\n\t\t\t\tvAlign = \"top\";\n\t\t\t} else if(this.parser.source.substr(this.parser.pos).search(/^,([^,]|,,)/) === 0) {\n\t\t\t\tvAlign = \"bottom\";\n\t\t\t}\n\t\t\tif(vAlign) {\n\t\t\t\tthis.parser.pos++;\n\t\t\t}\n\t\t\tvar chr = this.parser.source.substr(this.parser.pos,1);\n\t\t\twhile(chr === \" \") {\n\t\t\t\tspaceLeft = true;\n\t\t\t\tthis.parser.pos++;\n\t\t\t\tchr = this.parser.source.substr(this.parser.pos,1);\n\t\t\t}\n\t\t\t// Check whether this is a heading cell\n\t\t\tvar cell;\n\t\t\tif(chr === \"!\") {\n\t\t\t\tthis.parser.pos++;\n\t\t\t\tcell = {type: \"element\", tag: \"th\", children: []};\n\t\t\t} else {\n\t\t\t\tcell = {type: \"element\", tag: \"td\", children: []};\n\t\t\t}\n\t\t\ttree.push(cell);\n\t\t\t// Record information about this cell\n\t\t\tprevCell = cell;\n\t\t\tprevColumns[col] = {rowSpanCount:1,element:cell};\n\t\t\t// Check for a colspan\n\t\t\tif(colSpanCount > 1) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"colspan\",colSpanCount);\n\t\t\t\tcolSpanCount = 1;\n\t\t\t}\n\t\t\t// Parse the cell\n\t\t\tcell.children = this.parser.parseInlineRun(cellTermRegExp,{eatTerminator: true});\n\t\t\t// Set the alignment for the cell\n\t\t\tif(vAlign) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"valign\",vAlign);\n\t\t\t}\n\t\t\tif(this.parser.source.substr(this.parser.pos - 2,1) === \" \") { // spaceRight\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"align\",spaceLeft ? \"center\" : \"left\");\n\t\t\t} else if(spaceLeft) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"align\",\"right\");\n\t\t\t}\n\t\t\t// Move back to the closing `|`\n\t\t\tthis.parser.pos--;\n\t\t}\n\t\tcol++;\n\t\tcellRegExp.lastIndex = this.parser.pos;\n\t\tcellMatch = cellRegExp.exec(this.parser.source);\n\t}\n\treturn tree;\n};\n\nexports.parse = function() {\n\tvar rowContainerTypes = {\"c\":\"caption\", \"h\":\"thead\", \"\":\"tbody\", \"f\":\"tfoot\"},\n\t\ttable = {type: \"element\", tag: \"table\", children: []},\n\t\trowRegExp = /^\\|([^\\n]*)\\|([fhck]?)\\r?(?:\\n|$)/mg,\n\t\trowTermRegExp = /(\\|(?:[fhck]?)\\r?(?:\\n|$))/mg,\n\t\tprevColumns = [],\n\t\tcurrRowType,\n\t\trowContainer,\n\t\trowCount = 0;\n\t// Match the row\n\trowRegExp.lastIndex = this.parser.pos;\n\tvar rowMatch = rowRegExp.exec(this.parser.source);\n\twhile(rowMatch && rowMatch.index === this.parser.pos) {\n\t\tvar rowType = rowMatch[2];\n\t\t// Check if it is a class assignment\n\t\tif(rowType === \"k\") {\n\t\t\t$tw.utils.addClassToParseTreeNode(table,rowMatch[1]);\n\t\t\tthis.parser.pos = rowMatch.index + rowMatch[0].length;\n\t\t} else {\n\t\t\t// Otherwise, create a new row if this one is of a different type\n\t\t\tif(rowType !== currRowType) {\n\t\t\t\trowContainer = {type: \"element\", tag: rowContainerTypes[rowType], children: []};\n\t\t\t\ttable.children.push(rowContainer);\n\t\t\t\tcurrRowType = rowType;\n\t\t\t}\n\t\t\t// Is this a caption row?\n\t\t\tif(currRowType === \"c\") {\n\t\t\t\t// If so, move past the opening `|` of the row\n\t\t\t\tthis.parser.pos++;\n\t\t\t\t// Move the caption to the first row if it isn't already\n\t\t\t\tif(table.children.length !== 1) {\n\t\t\t\t\ttable.children.pop(); // Take rowContainer out of the children array\n\t\t\t\t\ttable.children.splice(0,0,rowContainer); // Insert it at the bottom\t\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t// Set the alignment - TODO: figure out why TW did this\n//\t\t\t\trowContainer.attributes.align = rowCount === 0 ? \"top\" : \"bottom\";\n\t\t\t\t// Parse the caption\n\t\t\t\trowContainer.children = this.parser.parseInlineRun(rowTermRegExp,{eatTerminator: true});\n\t\t\t} else {\n\t\t\t\t// Create the row\n\t\t\t\tvar theRow = {type: \"element\", tag: \"tr\", children: []};\n\t\t\t\t$tw.utils.addClassToParseTreeNode(theRow,rowCount%2 ? \"oddRow\" : \"evenRow\");\n\t\t\t\trowContainer.children.push(theRow);\n\t\t\t\t// Process the row\n\t\t\t\ttheRow.children = processRow.call(this,prevColumns);\n\t\t\t\tthis.parser.pos = rowMatch.index + rowMatch[0].length;\n\t\t\t\t// Increment the row count\n\t\t\t\trowCount++;\n\t\t\t}\n\t\t}\n\t\trowMatch = rowRegExp.exec(this.parser.source);\n\t}\n\treturn [table];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/transcludeblock.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/transcludeblock.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/transcludeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for block-level transclusion. For example:\n\n```\n{{MyTiddler}}\n{{MyTiddler||TemplateTitle}}\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"transcludeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{([^\\{\\}\\|]*)(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}(?:\\r?\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar template = $tw.utils.trim(this.match[2]),\n\t\ttextRef = $tw.utils.trim(this.match[1]);\n\t// Prepare the transclude widget\n\tvar transcludeNode = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {},\n\t\t\tisBlock: true\n\t\t};\n\t// Prepare the tiddler widget\n\tvar tr, targetTitle, targetField, targetIndex, tiddlerNode;\n\tif(textRef) {\n\t\ttr = $tw.utils.parseTextReference(textRef);\n\t\ttargetTitle = tr.title;\n\t\ttargetField = tr.field;\n\t\ttargetIndex = tr.index;\n\t\ttiddlerNode = {\n\t\t\ttype: \"tiddler\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: targetTitle}\n\t\t\t},\n\t\t\tisBlock: true,\n\t\t\tchildren: [transcludeNode]\n\t\t};\n\t}\n\tif(template) {\n\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: template};\n\t\tif(textRef) {\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t} else {\n\t\tif(textRef) {\n\t\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: targetTitle};\n\t\t\tif(targetField) {\n\t\t\t\ttranscludeNode.attributes.field = {type: \"string\", value: targetField};\n\t\t\t}\n\t\t\tif(targetIndex) {\n\t\t\t\ttranscludeNode.attributes.index = {type: \"string\", value: targetIndex};\n\t\t\t}\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/transcludeinline.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/transcludeinline.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/transcludeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for inline-level transclusion. For example:\n\n```\n{{MyTiddler}}\n{{MyTiddler||TemplateTitle}}\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"transcludeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{([^\\{\\}\\|]*)(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar template = $tw.utils.trim(this.match[2]),\n\t\ttextRef = $tw.utils.trim(this.match[1]);\n\t// Prepare the transclude widget\n\tvar transcludeNode = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {}\n\t\t};\n\t// Prepare the tiddler widget\n\tvar tr, targetTitle, targetField, targetIndex, tiddlerNode;\n\tif(textRef) {\n\t\ttr = $tw.utils.parseTextReference(textRef);\n\t\ttargetTitle = tr.title;\n\t\ttargetField = tr.field;\n\t\ttargetIndex = tr.index;\n\t\ttiddlerNode = {\n\t\t\ttype: \"tiddler\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: targetTitle}\n\t\t\t},\n\t\t\tchildren: [transcludeNode]\n\t\t};\n\t}\n\tif(template) {\n\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: template};\n\t\tif(textRef) {\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t} else {\n\t\tif(textRef) {\n\t\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: targetTitle};\n\t\t\tif(targetField) {\n\t\t\t\ttranscludeNode.attributes.field = {type: \"string\", value: targetField};\n\t\t\t}\n\t\t\tif(targetIndex) {\n\t\t\t\ttranscludeNode.attributes.index = {type: \"string\", value: targetIndex};\n\t\t\t}\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/typedblock.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/typedblock.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/typedblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for typed blocks. For example:\n\n```\n$$$.js\nThis will be rendered as JavaScript\n$$$\n\n$$$.svg\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"150\" height=\"100\">\n <circle cx=\"100\" cy=\"50\" r=\"40\" stroke=\"black\" stroke-width=\"2\" fill=\"red\" />\n</svg>\n$$$\n\n$$$text/vnd.tiddlywiki>text/html\nThis will be rendered as an //HTML representation// of WikiText\n$$$\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.name = \"typedblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\$\\$\\$([^ >\\r\\n]*)(?: *> *([^ \\r\\n]+))?\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /\\r?\\n\\$\\$\\$\\r?(?:\\n|$)/mg;\n\t// Save the type\n\tvar parseType = this.match[1],\n\t\trenderType = this.match[2];\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Look for the end of the block\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the block\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\t// Parse the block according to the specified type\n\tvar parser = this.parser.wiki.parseText(parseType,text,{defaultType: \"text/plain\"});\n\t// If there's no render type, just return the parse tree\n\tif(!renderType) {\n\t\treturn parser.tree;\n\t} else {\n\t\t// Otherwise, render to the rendertype and return in a <PRE> tag\n\t\tvar widgetNode = this.parser.wiki.makeWidget(parser),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\ttext = renderType === \"text/html\" ? container.innerHTML : container.textContent;\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"pre\",\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: text\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/whitespace.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/whitespace.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/whitespace.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for whitespace specifications\n\n```\n\\whitespace trim\n\\whitespace notrim\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"whitespace\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\whitespace[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\tvar self = this;\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse whitespace delimited tokens terminated by a line break\n\tvar reMatch = /[^\\S\\n]*(\\S+)|(\\r?\\n)/mg,\n\t\ttokens = [];\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\twhile(match && match.index === this.parser.pos) {\n\t\tthis.parser.pos = reMatch.lastIndex;\n\t\t// Exit if we've got the line break\n\t\tif(match[2]) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the token\n\t\tif(match[1]) {\n\t\t\ttokens.push(match[1]);\n\t\t}\n\t\t// Match the next token\n\t\tmatch = reMatch.exec(this.parser.source);\n\t}\n\t// Process the tokens\n\t$tw.utils.each(tokens,function(token) {\n\t\tswitch(token) {\n\t\t\tcase \"trim\":\n\t\t\t\tself.parser.configTrimWhiteSpace = true;\n\t\t\t\tbreak;\n\t\t\tcase \"notrim\":\n\t\t\t\tself.parser.configTrimWhiteSpace = false;\n\t\t\t\tbreak;\n\t\t}\n\t});\n\t// No parse tree nodes to return\n\treturn [];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/rules/wikilink.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/wikilink.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/wikilink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for wiki links. For example:\n\n```\nAWikiLink\nAnotherLink\n~SuppressedLink\n```\n\nPrecede a camel case word with `~` to prevent it from being recognised as a link.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"wikilink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = new RegExp($tw.config.textPrimitives.unWikiLink + \"?\" + $tw.config.textPrimitives.wikiLink,\"mg\");\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get the details of the match\n\tvar linkText = this.match[0];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// If the link starts with the unwikilink character then just output it as plain text\n\tif(linkText.substr(0,1) === $tw.config.textPrimitives.unWikiLink) {\n\t\treturn [{type: \"text\", text: linkText.substr(1)}];\n\t}\n\t// If the link has been preceded with a blocked letter then don't treat it as a link\n\tif(this.match.index > 0) {\n\t\tvar preRegExp = new RegExp($tw.config.textPrimitives.blockPrefixLetters,\"mg\");\n\t\tpreRegExp.lastIndex = this.match.index-1;\n\t\tvar preMatch = preRegExp.exec(this.parser.source);\n\t\tif(preMatch && preMatch.index === this.match.index-1) {\n\t\t\treturn [{type: \"text\", text: linkText}];\n\t\t}\n\t}\n\treturn [{\n\t\ttype: \"link\",\n\t\tattributes: {\n\t\t\tto: {type: \"string\", value: linkText}\n\t\t},\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\ttext: linkText\n\t\t}]\n\t}];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikirule"
},
"$:/core/modules/parsers/wikiparser/wikiparser.js": {
"title": "$:/core/modules/parsers/wikiparser/wikiparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/wikiparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe wiki text parser processes blocks of source text into a parse tree.\n\nThe parse tree is made up of nested arrays of these JavaScript objects:\n\n\t{type: \"element\", tag: <string>, attributes: {}, children: []} - an HTML element\n\t{type: \"text\", text: <string>} - a text node\n\t{type: \"entity\", value: <string>} - an entity\n\t{type: \"raw\", html: <string>} - raw HTML\n\nAttributes are stored as hashmaps of the following objects:\n\n\t{type: \"string\", value: <string>} - literal string\n\t{type: \"indirect\", textReference: <textReference>} - indirect through a text reference\n\t{type: \"macro\", macro: <TBD>} - indirect through a macro invocation\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar WikiParser = function(type,text,options) {\n\tthis.wiki = options.wiki;\n\tvar self = this;\n\t// Check for an externally linked tiddler\n\tif($tw.browser && (text || \"\") === \"\" && options._canonical_uri) {\n\t\tthis.loadRemoteTiddler(options._canonical_uri);\n\t\ttext = $tw.language.getRawString(\"LazyLoadingWarning\");\n\t}\n\t// Initialise the classes if we don't have them already\n\tif(!this.pragmaRuleClasses) {\n\t\tWikiParser.prototype.pragmaRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"pragma\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.pragmaRuleClasses,\"$:/config/WikiParserRules/Pragmas/\");\n\t}\n\tif(!this.blockRuleClasses) {\n\t\tWikiParser.prototype.blockRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"block\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.blockRuleClasses,\"$:/config/WikiParserRules/Block/\");\n\t}\n\tif(!this.inlineRuleClasses) {\n\t\tWikiParser.prototype.inlineRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"inline\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.inlineRuleClasses,\"$:/config/WikiParserRules/Inline/\");\n\t}\n\t// Save the parse text\n\tthis.type = type || \"text/vnd.tiddlywiki\";\n\tthis.source = text || \"\";\n\tthis.sourceLength = this.source.length;\n\t// Flag for ignoring whitespace\n\tthis.configTrimWhiteSpace = false;\n\t// Set current parse position\n\tthis.pos = 0;\n\t// Instantiate the pragma parse rules\n\tthis.pragmaRules = this.instantiateRules(this.pragmaRuleClasses,\"pragma\",0);\n\t// Instantiate the parser block and inline rules\n\tthis.blockRules = this.instantiateRules(this.blockRuleClasses,\"block\",0);\n\tthis.inlineRules = this.instantiateRules(this.inlineRuleClasses,\"inline\",0);\n\t// Parse any pragmas\n\tthis.tree = [];\n\tvar topBranch = this.parsePragmas();\n\t// Parse the text into inline runs or blocks\n\tif(options.parseAsInline) {\n\t\ttopBranch.push.apply(topBranch,this.parseInlineRun());\n\t} else {\n\t\ttopBranch.push.apply(topBranch,this.parseBlocks());\n\t}\n\t// Return the parse tree\n};\n\n/*\n*/\nWikiParser.prototype.loadRemoteTiddler = function(url) {\n\tvar self = this;\n\t$tw.utils.httpRequest({\n\t\turl: url,\n\t\ttype: \"GET\",\n\t\tcallback: function(err,data) {\n\t\t\tif(!err) {\n\t\t\t\tvar tiddlers = self.wiki.deserializeTiddlers(\".tid\",data,self.wiki.getCreationFields());\n\t\t\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\t\t\ttiddler[\"_canonical_uri\"] = url;\n\t\t\t\t});\n\t\t\t\tif(tiddlers) {\n\t\t\t\t\tself.wiki.addTiddlers(tiddlers);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\n*/\nWikiParser.prototype.setupRules = function(proto,configPrefix) {\n\tvar self = this;\n\tif(!$tw.safemode) {\n\t\t$tw.utils.each(proto,function(object,name) {\n\t\t\tif(self.wiki.getTiddlerText(configPrefix + name,\"enable\") !== \"enable\") {\n\t\t\t\tdelete proto[name];\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nInstantiate an array of parse rules\n*/\nWikiParser.prototype.instantiateRules = function(classes,type,startPos) {\n\tvar rulesInfo = [],\n\t\tself = this;\n\t$tw.utils.each(classes,function(RuleClass) {\n\t\t// Instantiate the rule\n\t\tvar rule = new RuleClass(self);\n\t\trule.is = {};\n\t\trule.is[type] = true;\n\t\trule.init(self);\n\t\tvar matchIndex = rule.findNextMatch(startPos);\n\t\tif(matchIndex !== undefined) {\n\t\t\trulesInfo.push({\n\t\t\t\trule: rule,\n\t\t\t\tmatchIndex: matchIndex\n\t\t\t});\n\t\t}\n\t});\n\treturn rulesInfo;\n};\n\n/*\nSkip any whitespace at the current position. Options are:\n\ttreatNewlinesAsNonWhitespace: true if newlines are NOT to be treated as whitespace\n*/\nWikiParser.prototype.skipWhitespace = function(options) {\n\toptions = options || {};\n\tvar whitespaceRegExp = options.treatNewlinesAsNonWhitespace ? /([^\\S\\n]+)/mg : /(\\s+)/mg;\n\twhitespaceRegExp.lastIndex = this.pos;\n\tvar whitespaceMatch = whitespaceRegExp.exec(this.source);\n\tif(whitespaceMatch && whitespaceMatch.index === this.pos) {\n\t\tthis.pos = whitespaceRegExp.lastIndex;\n\t}\n};\n\n/*\nGet the next match out of an array of parse rule instances\n*/\nWikiParser.prototype.findNextMatch = function(rules,startPos) {\n\t// Find the best matching rule by finding the closest match position\n\tvar matchingRule,\n\t\tmatchingRulePos = this.sourceLength;\n\t// Step through each rule\n\tfor(var t=0; t<rules.length; t++) {\n\t\tvar ruleInfo = rules[t];\n\t\t// Ask the rule to get the next match if we've moved past the current one\n\t\tif(ruleInfo.matchIndex !== undefined && ruleInfo.matchIndex < startPos) {\n\t\t\truleInfo.matchIndex = ruleInfo.rule.findNextMatch(startPos);\n\t\t}\n\t\t// Adopt this match if it's closer than the current best match\n\t\tif(ruleInfo.matchIndex !== undefined && ruleInfo.matchIndex <= matchingRulePos) {\n\t\t\tmatchingRule = ruleInfo;\n\t\t\tmatchingRulePos = ruleInfo.matchIndex;\n\t\t}\n\t}\n\treturn matchingRule;\n};\n\n/*\nParse any pragmas at the beginning of a block of parse text\n*/\nWikiParser.prototype.parsePragmas = function() {\n\tvar currentTreeBranch = this.tree;\n\twhile(true) {\n\t\t// Skip whitespace\n\t\tthis.skipWhitespace();\n\t\t// Check for the end of the text\n\t\tif(this.pos >= this.sourceLength) {\n\t\t\tbreak;\n\t\t}\n\t\t// Check if we've arrived at a pragma rule match\n\t\tvar nextMatch = this.findNextMatch(this.pragmaRules,this.pos);\n\t\t// If not, just exit\n\t\tif(!nextMatch || nextMatch.matchIndex !== this.pos) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the pragma rule\n\t\tvar subTree = nextMatch.rule.parse();\n\t\tif(subTree.length > 0) {\n\t\t\t// Quick hack; we only cope with a single parse tree node being returned, which is true at the moment\n\t\t\tcurrentTreeBranch.push.apply(currentTreeBranch,subTree);\n\t\t\tsubTree[0].children = [];\n\t\t\tcurrentTreeBranch = subTree[0].children;\n\t\t}\n\t}\n\treturn currentTreeBranch;\n};\n\n/*\nParse a block from the current position\n\tterminatorRegExpString: optional regular expression string that identifies the end of plain paragraphs. Must not include capturing parenthesis\n*/\nWikiParser.prototype.parseBlock = function(terminatorRegExpString) {\n\tvar terminatorRegExp = terminatorRegExpString ? new RegExp(\"(\" + terminatorRegExpString + \"|\\\\r?\\\\n\\\\r?\\\\n)\",\"mg\") : /(\\r?\\n\\r?\\n)/mg;\n\tthis.skipWhitespace();\n\tif(this.pos >= this.sourceLength) {\n\t\treturn [];\n\t}\n\t// Look for a block rule that applies at the current position\n\tvar nextMatch = this.findNextMatch(this.blockRules,this.pos);\n\tif(nextMatch && nextMatch.matchIndex === this.pos) {\n\t\treturn nextMatch.rule.parse();\n\t}\n\t// Treat it as a paragraph if we didn't find a block rule\n\treturn [{type: \"element\", tag: \"p\", children: this.parseInlineRun(terminatorRegExp)}];\n};\n\n/*\nParse a series of blocks of text until a terminating regexp is encountered or the end of the text\n\tterminatorRegExpString: terminating regular expression\n*/\nWikiParser.prototype.parseBlocks = function(terminatorRegExpString) {\n\tif(terminatorRegExpString) {\n\t\treturn this.parseBlocksTerminated(terminatorRegExpString);\n\t} else {\n\t\treturn this.parseBlocksUnterminated();\n\t}\n};\n\n/*\nParse a block from the current position to the end of the text\n*/\nWikiParser.prototype.parseBlocksUnterminated = function() {\n\tvar tree = [];\n\twhile(this.pos < this.sourceLength) {\n\t\ttree.push.apply(tree,this.parseBlock());\n\t}\n\treturn tree;\n};\n\n/*\nParse blocks of text until a terminating regexp is encountered\n*/\nWikiParser.prototype.parseBlocksTerminated = function(terminatorRegExpString) {\n\tvar terminatorRegExp = new RegExp(\"(\" + terminatorRegExpString + \")\",\"mg\"),\n\t\ttree = [];\n\t// Skip any whitespace\n\tthis.skipWhitespace();\n\t// Check if we've got the end marker\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar match = terminatorRegExp.exec(this.source);\n\t// Parse the text into blocks\n\twhile(this.pos < this.sourceLength && !(match && match.index === this.pos)) {\n\t\tvar blocks = this.parseBlock(terminatorRegExpString);\n\t\ttree.push.apply(tree,blocks);\n\t\t// Skip any whitespace\n\t\tthis.skipWhitespace();\n\t\t// Check if we've got the end marker\n\t\tterminatorRegExp.lastIndex = this.pos;\n\t\tmatch = terminatorRegExp.exec(this.source);\n\t}\n\tif(match && match.index === this.pos) {\n\t\tthis.pos = match.index + match[0].length;\n\t}\n\treturn tree;\n};\n\n/*\nParse a run of text at the current position\n\tterminatorRegExp: a regexp at which to stop the run\n\toptions: see below\nOptions available:\n\teatTerminator: move the parse position past any encountered terminator (default false)\n*/\nWikiParser.prototype.parseInlineRun = function(terminatorRegExp,options) {\n\tif(terminatorRegExp) {\n\t\treturn this.parseInlineRunTerminated(terminatorRegExp,options);\n\t} else {\n\t\treturn this.parseInlineRunUnterminated(options);\n\t}\n};\n\nWikiParser.prototype.parseInlineRunUnterminated = function(options) {\n\tvar tree = [];\n\t// Find the next occurrence of an inline rule\n\tvar nextMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t// Loop around the matches until we've reached the end of the text\n\twhile(this.pos < this.sourceLength && nextMatch) {\n\t\t// Process the text preceding the run rule\n\t\tif(nextMatch.matchIndex > this.pos) {\n\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,nextMatch.matchIndex));\n\t\t\tthis.pos = nextMatch.matchIndex;\n\t\t}\n\t\t// Process the run rule\n\t\ttree.push.apply(tree,nextMatch.rule.parse());\n\t\t// Look for the next run rule\n\t\tnextMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t}\n\t// Process the remaining text\n\tif(this.pos < this.sourceLength) {\n\t\tthis.pushTextWidget(tree,this.source.substr(this.pos));\n\t}\n\tthis.pos = this.sourceLength;\n\treturn tree;\n};\n\nWikiParser.prototype.parseInlineRunTerminated = function(terminatorRegExp,options) {\n\toptions = options || {};\n\tvar tree = [];\n\t// Find the next occurrence of the terminator\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar terminatorMatch = terminatorRegExp.exec(this.source);\n\t// Find the next occurrence of a inlinerule\n\tvar inlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t// Loop around until we've reached the end of the text\n\twhile(this.pos < this.sourceLength && (terminatorMatch || inlineRuleMatch)) {\n\t\t// Return if we've found the terminator, and it precedes any inline rule match\n\t\tif(terminatorMatch) {\n\t\t\tif(!inlineRuleMatch || inlineRuleMatch.matchIndex >= terminatorMatch.index) {\n\t\t\t\tif(terminatorMatch.index > this.pos) {\n\t\t\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,terminatorMatch.index));\n\t\t\t\t}\n\t\t\t\tthis.pos = terminatorMatch.index;\n\t\t\t\tif(options.eatTerminator) {\n\t\t\t\t\tthis.pos += terminatorMatch[0].length;\n\t\t\t\t}\n\t\t\t\treturn tree;\n\t\t\t}\n\t\t}\n\t\t// Process any inline rule, along with the text preceding it\n\t\tif(inlineRuleMatch) {\n\t\t\t// Preceding text\n\t\t\tif(inlineRuleMatch.matchIndex > this.pos) {\n\t\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,inlineRuleMatch.matchIndex));\n\t\t\t\tthis.pos = inlineRuleMatch.matchIndex;\n\t\t\t}\n\t\t\t// Process the inline rule\n\t\t\ttree.push.apply(tree,inlineRuleMatch.rule.parse());\n\t\t\t// Look for the next inline rule\n\t\t\tinlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t\t\t// Look for the next terminator match\n\t\t\tterminatorRegExp.lastIndex = this.pos;\n\t\t\tterminatorMatch = terminatorRegExp.exec(this.source);\n\t\t}\n\t}\n\t// Process the remaining text\n\tif(this.pos < this.sourceLength) {\n\t\tthis.pushTextWidget(tree,this.source.substr(this.pos));\n\t}\n\tthis.pos = this.sourceLength;\n\treturn tree;\n};\n\n/*\nPush a text widget onto an array, respecting the configTrimWhiteSpace setting\n*/\nWikiParser.prototype.pushTextWidget = function(array,text) {\n\tif(this.configTrimWhiteSpace) {\n\t\ttext = $tw.utils.trim(text);\n\t}\n\tif(text) {\n\t\tarray.push({type: \"text\", text: text});\t\t\n\t}\n};\n\n/*\nParse zero or more class specifiers `.classname`\n*/\nWikiParser.prototype.parseClasses = function() {\n\tvar classRegExp = /\\.([^\\s\\.]+)/mg,\n\t\tclassNames = [];\n\tclassRegExp.lastIndex = this.pos;\n\tvar match = classRegExp.exec(this.source);\n\twhile(match && match.index === this.pos) {\n\t\tthis.pos = match.index + match[0].length;\n\t\tclassNames.push(match[1]);\n\t\tmatch = classRegExp.exec(this.source);\n\t}\n\treturn classNames;\n};\n\n/*\nAmend the rules used by this instance of the parser\n\ttype: `only` keeps just the named rules, `except` keeps all but the named rules\n\tnames: array of rule names\n*/\nWikiParser.prototype.amendRules = function(type,names) {\n\tnames = names || [];\n\t// Define the filter function\n\tvar keepFilter;\n\tif(type === \"only\") {\n\t\tkeepFilter = function(name) {\n\t\t\treturn names.indexOf(name) !== -1;\n\t\t};\n\t} else if(type === \"except\") {\n\t\tkeepFilter = function(name) {\n\t\t\treturn names.indexOf(name) === -1;\n\t\t};\n\t} else {\n\t\treturn;\n\t}\n\t// Define a function to process each of our rule arrays\n\tvar processRuleArray = function(ruleArray) {\n\t\tfor(var t=ruleArray.length-1; t>=0; t--) {\n\t\t\tif(!keepFilter(ruleArray[t].rule.name)) {\n\t\t\t\truleArray.splice(t,1);\n\t\t\t}\n\t\t}\n\t};\n\t// Process each rule array\n\tprocessRuleArray(this.pragmaRules);\n\tprocessRuleArray(this.blockRules);\n\tprocessRuleArray(this.inlineRules);\n};\n\nexports[\"text/vnd.tiddlywiki\"] = WikiParser;\n\n})();\n\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/core/modules/parsers/wikiparser/rules/wikirulebase.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/wikirulebase.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/wikirulebase.js\ntype: application/javascript\nmodule-type: global\n\nBase class for wiki parser rules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nThis constructor is always overridden with a blank constructor, and so shouldn't be used\n*/\nvar WikiRuleBase = function() {\n};\n\n/*\nTo be overridden by individual rules\n*/\nWikiRuleBase.prototype.init = function(parser) {\n\tthis.parser = parser;\n};\n\n/*\nDefault implementation of findNextMatch uses RegExp matching\n*/\nWikiRuleBase.prototype.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\treturn this.match ? this.match.index : undefined;\n};\n\nexports.WikiRuleBase = WikiRuleBase;\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/pluginswitcher.js": {
"title": "$:/core/modules/pluginswitcher.js",
"text": "/*\\\ntitle: $:/core/modules/pluginswitcher.js\ntype: application/javascript\nmodule-type: global\n\nManages switching plugins for themes and languages.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\noptions:\nwiki: wiki store to be used\npluginType: type of plugin to be switched\ncontrollerTitle: title of tiddler used to control switching of this resource\ndefaultPlugins: array of default plugins to be used if nominated plugin isn't found\nonSwitch: callback when plugin is switched (single parameter is array of plugin titles)\n*/\nfunction PluginSwitcher(options) {\n\tthis.wiki = options.wiki;\n\tthis.pluginType = options.pluginType;\n\tthis.controllerTitle = options.controllerTitle;\n\tthis.defaultPlugins = options.defaultPlugins || [];\n\tthis.onSwitch = options.onSwitch;\n\t// Switch to the current plugin\n\tthis.switchPlugins();\n\t// Listen for changes to the selected plugin\n\tvar self = this;\n\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,self.controllerTitle)) {\n\t\t\tself.switchPlugins();\n\t\t}\n\t});\n}\n\nPluginSwitcher.prototype.switchPlugins = function() {\n\t// Get the name of the current theme\n\tvar selectedPluginTitle = this.wiki.getTiddlerText(this.controllerTitle);\n\t// If it doesn't exist, then fallback to one of the default themes\n\tvar index = 0;\n\twhile(!this.wiki.getTiddler(selectedPluginTitle) && index < this.defaultPlugins.length) {\n\t\tselectedPluginTitle = this.defaultPlugins[index++];\n\t}\n\t// Accumulate the titles of the plugins that we need to load\n\tvar plugins = [],\n\t\tself = this,\n\t\taccumulatePlugin = function(title) {\n\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\tif(tiddler && tiddler.isPlugin() && plugins.indexOf(title) === -1) {\n\t\t\t\tplugins.push(title);\n\t\t\t\tvar pluginInfo = JSON.parse(self.wiki.getTiddlerText(title)),\n\t\t\t\t\tdependents = $tw.utils.parseStringArray(tiddler.fields.dependents || \"\");\n\t\t\t\t$tw.utils.each(dependents,function(title) {\n\t\t\t\t\taccumulatePlugin(title);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\taccumulatePlugin(selectedPluginTitle);\n\t// Read the plugin info for the incoming plugins\n\tvar changes = $tw.wiki.readPluginInfo(plugins);\n\t// Unregister any existing theme tiddlers\n\tvar unregisteredTiddlers = $tw.wiki.unregisterPluginTiddlers(this.pluginType);\n\t// Register any new theme tiddlers\n\tvar registeredTiddlers = $tw.wiki.registerPluginTiddlers(this.pluginType,plugins);\n\t// Unpack the current theme tiddlers\n\t$tw.wiki.unpackPluginTiddlers();\n\t// Call the switch handler\n\tif(this.onSwitch) {\n\t\tthis.onSwitch(plugins);\n\t}\n};\n\nexports.PluginSwitcher = PluginSwitcher;\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/saver-handler.js": {
"title": "$:/core/modules/saver-handler.js",
"text": "/*\\\ntitle: $:/core/modules/saver-handler.js\ntype: application/javascript\nmodule-type: global\n\nThe saver handler tracks changes to the store and handles saving the entire wiki via saver modules.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInstantiate the saver handler with the following options:\nwiki: wiki to be synced\ndirtyTracking: true if dirty tracking should be performed\n*/\nfunction SaverHandler(options) {\n\tvar self = this;\n\tthis.wiki = options.wiki;\n\tthis.dirtyTracking = options.dirtyTracking;\n\tthis.preloadDirty = options.preloadDirty || [];\n\tthis.pendingAutoSave = false;\n\t// Make a logger\n\tthis.logger = new $tw.utils.Logger(\"saver-handler\");\n\t// Initialise our savers\n\tif($tw.browser) {\n\t\tthis.initSavers();\n\t}\n\t// Only do dirty tracking if required\n\tif($tw.browser && this.dirtyTracking) {\n\t\t// Compile the dirty tiddler filter\n\t\tthis.filterFn = this.wiki.compileFilter(this.wiki.getTiddlerText(this.titleSyncFilter));\n\t\t// Count of changes that have not yet been saved\n\t\tvar filteredChanges = self.filterFn.call(self.wiki,function(iterator) {\n\t\t\t\t$tw.utils.each(self.preloadDirty,function(title) {\n\t\t\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\t\t\titerator(tiddler,title);\n\t\t\t\t});\n\t\t});\n\t\tthis.numChanges = filteredChanges.length;\n\t\t// Listen out for changes to tiddlers\n\t\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\t\t// Filter the changes so that we only count changes to tiddlers that we care about\n\t\t\tvar filteredChanges = self.filterFn.call(self.wiki,function(iterator) {\n\t\t\t\t$tw.utils.each(changes,function(change,title) {\n\t\t\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\t\t\titerator(tiddler,title);\n\t\t\t\t});\n\t\t\t});\n\t\t\t// Adjust the number of changes\n\t\t\tself.numChanges += filteredChanges.length;\n\t\t\tself.updateDirtyStatus();\n\t\t\t// Do any autosave if one is pending and there's no more change events\n\t\t\tif(self.pendingAutoSave && self.wiki.getSizeOfTiddlerEventQueue() === 0) {\n\t\t\t\t// Check if we're dirty\n\t\t\t\tif(self.numChanges > 0) {\n\t\t\t\t\tself.saveWiki({\n\t\t\t\t\t\tmethod: \"autosave\",\n\t\t\t\t\t\tdownloadType: \"text/plain\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tself.pendingAutoSave = false;\n\t\t\t}\n\t\t});\n\t\t// Listen for the autosave event\n\t\t$tw.rootWidget.addEventListener(\"tm-auto-save-wiki\",function(event) {\n\t\t\t// Do the autosave unless there are outstanding tiddler change events\n\t\t\tif(self.wiki.getSizeOfTiddlerEventQueue() === 0) {\n\t\t\t\t// Check if we're dirty\n\t\t\t\tif(self.numChanges > 0) {\n\t\t\t\t\tself.saveWiki({\n\t\t\t\t\t\tmethod: \"autosave\",\n\t\t\t\t\t\tdownloadType: \"text/plain\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise put ourselves in the \"pending autosave\" state and wait for the change event before we do the autosave\n\t\t\t\tself.pendingAutoSave = true;\n\t\t\t}\n\t\t});\n\t\t// Set up our beforeunload handler\n\t\t$tw.addUnloadTask(function(event) {\n\t\t\tvar confirmationMessage;\n\t\t\tif(self.isDirty()) {\n\t\t\t\tconfirmationMessage = $tw.language.getString(\"UnsavedChangesWarning\");\n\t\t\t\tevent.returnValue = confirmationMessage; // Gecko\n\t\t\t}\n\t\t\treturn confirmationMessage;\n\t\t});\n\t}\n\t// Install the save action handlers\n\tif($tw.browser) {\n\t\t$tw.rootWidget.addEventListener(\"tm-save-wiki\",function(event) {\n\t\t\tself.saveWiki({\n\t\t\t\ttemplate: event.param,\n\t\t\t\tdownloadType: \"text/plain\",\n\t\t\t\tvariables: event.paramObject\n\t\t\t});\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-download-file\",function(event) {\n\t\t\tself.saveWiki({\n\t\t\t\tmethod: \"download\",\n\t\t\t\ttemplate: event.param,\n\t\t\t\tdownloadType: \"text/plain\",\n\t\t\t\tvariables: event.paramObject\n\t\t\t});\n\t\t});\n\t}\n}\n\nSaverHandler.prototype.titleSyncFilter = \"$:/config/SaverFilter\";\nSaverHandler.prototype.titleAutoSave = \"$:/config/AutoSave\";\nSaverHandler.prototype.titleSavedNotification = \"$:/language/Notifications/Save/Done\";\n\n/*\nSelect the appropriate saver modules and set them up\n*/\nSaverHandler.prototype.initSavers = function(moduleType) {\n\tmoduleType = moduleType || \"saver\";\n\t// Instantiate the available savers\n\tthis.savers = [];\n\tvar self = this;\n\t$tw.modules.forEachModuleOfType(moduleType,function(title,module) {\n\t\tif(module.canSave(self)) {\n\t\t\tself.savers.push(module.create(self.wiki));\n\t\t}\n\t});\n\t// Sort the savers into priority order\n\tthis.savers.sort(function(a,b) {\n\t\tif(a.info.priority < b.info.priority) {\n\t\t\treturn -1;\n\t\t} else {\n\t\t\tif(a.info.priority > b.info.priority) {\n\t\t\t\treturn +1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nSave the wiki contents. Options are:\n\tmethod: \"save\", \"autosave\" or \"download\"\n\ttemplate: the tiddler containing the template to save\n\tdownloadType: the content type for the saved file\n*/\nSaverHandler.prototype.saveWiki = function(options) {\n\toptions = options || {};\n\tvar self = this,\n\t\tmethod = options.method || \"save\";\n\t// Ignore autosave if disabled\n\tif(method === \"autosave\" && this.wiki.getTiddlerText(this.titleAutoSave,\"yes\") !== \"yes\") {\n\t\treturn false;\n\t}\n\tvar\tvariables = options.variables || {},\n\t\ttemplate = options.template || \"$:/core/save/all\",\n\t\tdownloadType = options.downloadType || \"text/plain\",\n\t\ttext = this.wiki.renderTiddler(downloadType,template,options),\n\t\tcallback = function(err) {\n\t\t\tif(err) {\n\t\t\t\talert($tw.language.getString(\"Error/WhileSaving\") + \":\\n\\n\" + err);\n\t\t\t} else {\n\t\t\t\t// Clear the task queue if we're saving (rather than downloading)\n\t\t\t\tif(method !== \"download\") {\n\t\t\t\t\tself.numChanges = 0;\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t}\n\t\t\t\t$tw.notifier.display(self.titleSavedNotification);\n\t\t\t\tif(options.callback) {\n\t\t\t\t\toptions.callback();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t// Call the highest priority saver that supports this method\n\tfor(var t=this.savers.length-1; t>=0; t--) {\n\t\tvar saver = this.savers[t];\n\t\tif(saver.info.capabilities.indexOf(method) !== -1 && saver.save(text,method,callback,{variables: {filename: variables.filename}})) {\n\t\t\tthis.logger.log(\"Saving wiki with method\",method,\"through saver\",saver.info.name);\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nChecks whether the wiki is dirty (ie the window shouldn't be closed)\n*/\nSaverHandler.prototype.isDirty = function() {\n\treturn this.numChanges > 0;\n};\n\n/*\nUpdate the document body with the class \"tc-dirty\" if the wiki has unsaved/unsynced changes\n*/\nSaverHandler.prototype.updateDirtyStatus = function() {\n\tif($tw.browser) {\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",this.isDirty());\n\t}\n};\n\nexports.SaverHandler = SaverHandler;\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/savers/andtidwiki.js": {
"title": "$:/core/modules/savers/andtidwiki.js",
"text": "/*\\\ntitle: $:/core/modules/savers/andtidwiki.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the AndTidWiki Android app\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar AndTidWiki = function(wiki) {\n};\n\nAndTidWiki.prototype.save = function(text,method,callback,options) {\n\tvar filename = options && options.variables ? options.variables.filename : null;\n\tif (method === \"download\") {\n\t\t// Support download\n\t\tif (window.twi.saveDownload) {\n\t\t\ttry {\n\t\t\t\twindow.twi.saveDownload(text,filename);\n\t\t\t} catch(err) {\n\t\t\t\tif (err.message === \"Method not found\") {\n\t\t\t\t\twindow.twi.saveDownload(text);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tvar link = document.createElement(\"a\");\n\t\t\tlink.setAttribute(\"href\",\"data:text/plain,\" + encodeURIComponent(text));\n\t\t\tif (filename) {\n\t\t\t link.setAttribute(\"download\",filename);\n\t\t\t}\n\t\t\tdocument.body.appendChild(link);\n\t\t\tlink.click();\n\t\t\tdocument.body.removeChild(link);\n\t\t}\n\t} else if (window.twi.saveWiki) {\n\t\t// Direct save in Tiddloid\n\t\twindow.twi.saveWiki(text);\n\t} else {\n\t\t// Get the pathname of this document\n\t\tvar pathname = decodeURIComponent(document.location.toString().split(\"#\")[0]);\n\t\t// Strip the file://\n\t\tif(pathname.indexOf(\"file://\") === 0) {\n\t\t\tpathname = pathname.substr(7);\n\t\t}\n\t\t// Strip any query or location part\n\t\tvar p = pathname.indexOf(\"?\");\n\t\tif(p !== -1) {\n\t\t\tpathname = pathname.substr(0,p);\n\t\t}\n\t\tp = pathname.indexOf(\"#\");\n\t\tif(p !== -1) {\n\t\t\tpathname = pathname.substr(0,p);\n\t\t}\n\t\t// Save the file\n\t\twindow.twi.saveFile(pathname,text);\n\t}\n\t// Call the callback\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nAndTidWiki.prototype.info = {\n\tname: \"andtidwiki\",\n\tpriority: 1600,\n\tcapabilities: [\"save\", \"autosave\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.twi && !!window.twi.saveFile;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new AndTidWiki(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/beaker.js": {
"title": "$:/core/modules/savers/beaker.js",
"text": "/*\\\ntitle: $:/core/modules/savers/beaker.js\ntype: application/javascript\nmodule-type: saver\n\nSaves files using the Beaker browser's (https://beakerbrowser.com) Dat protocol (https://datproject.org/)\nCompatible with beaker >= V0.7.2\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet up the saver\n*/\nvar BeakerSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nBeakerSaver.prototype.save = function(text,method,callback) {\n\tvar dat = new DatArchive(\"\" + window.location),\n\t\tpathname = (\"\" + window.location.pathname).split(\"#\")[0];\n\tdat.stat(pathname).then(function(value) {\n\t\tif(value.isDirectory()) {\n\t\t\tpathname = pathname + \"/index.html\";\n\t\t}\n\t\tdat.writeFile(pathname,text,\"utf8\").then(function(value) {\n\t\t\tcallback(null);\n\t\t},function(reason) {\n\t\t\tcallback(\"Beaker Saver Write Error: \" + reason);\n\t\t});\n\t},function(reason) {\n\t\tcallback(\"Beaker Saver Stat Error: \" + reason);\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nBeakerSaver.prototype.info = {\n\tname: \"beaker\",\n\tpriority: 3000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.DatArchive && location.protocol===\"dat:\";\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new BeakerSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/download.js": {
"title": "$:/core/modules/savers/download.js",
"text": "/*\\\ntitle: $:/core/modules/savers/download.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via HTML5's download APIs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar DownloadSaver = function(wiki) {\n};\n\nDownloadSaver.prototype.save = function(text,method,callback,options) {\n\toptions = options || {};\n\t// Get the current filename\n\tvar filename = options.variables.filename;\n\tif(!filename) {\n\t\tvar p = document.location.pathname.lastIndexOf(\"/\");\n\t\tif(p !== -1) {\n\t\t\t// We decode the pathname because document.location is URL encoded by the browser\n\t\t\tfilename = decodeURIComponent(document.location.pathname.substr(p+1));\n\t\t}\n\t}\n\tif(!filename) {\n\t\tfilename = \"tiddlywiki.html\";\n\t}\n\t// Set up the link\n\tvar link = document.createElement(\"a\");\n\tif(Blob !== undefined) {\n\t\tvar blob = new Blob([text], {type: \"text/html\"});\n\t\tlink.setAttribute(\"href\", URL.createObjectURL(blob));\n\t} else {\n\t\tlink.setAttribute(\"href\",\"data:text/html,\" + encodeURIComponent(text));\n\t}\n\tlink.setAttribute(\"download\",filename);\n\tdocument.body.appendChild(link);\n\tlink.click();\n\tdocument.body.removeChild(link);\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nDownloadSaver.prototype.info = {\n\tname: \"download\",\n\tpriority: 100\n};\n\nObject.defineProperty(DownloadSaver.prototype.info, \"capabilities\", {\n\tget: function() {\n\t\tvar capabilities = [\"save\", \"download\"];\n\t\tif(($tw.wiki.getTextReference(\"$:/config/DownloadSaver/AutoSave\") || \"\").toLowerCase() === \"yes\") {\n\t\t\tcapabilities.push(\"autosave\");\n\t\t}\n\t\treturn capabilities;\n\t}\n});\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn document.createElement(\"a\").download !== undefined;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new DownloadSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/fsosaver.js": {
"title": "$:/core/modules/savers/fsosaver.js",
"text": "/*\\\ntitle: $:/core/modules/savers/fsosaver.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via MS FileSystemObject ActiveXObject\n\nNote: Since TiddlyWiki's markup contains the MOTW, the FileSystemObject normally won't be available. \nHowever, if the wiki is loaded as an .HTA file (Windows HTML Applications) then the FSO can be used.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar FSOSaver = function(wiki) {\n};\n\nFSOSaver.prototype.save = function(text,method,callback) {\n\t// Get the pathname of this document\n\tvar pathname = unescape(document.location.pathname);\n\t// Test for a Windows path of the form /x:\\blah...\n\tif(/^\\/[A-Z]\\:\\\\[^\\\\]+/i.test(pathname)) {\t// ie: ^/[a-z]:/[^/]+\n\t\t// Remove the leading slash\n\t\tpathname = pathname.substr(1);\n\t} else if(document.location.hostname !== \"\" && /^\\/\\\\[^\\\\]+\\\\[^\\\\]+/i.test(pathname)) {\t// test for \\\\server\\share\\blah... - ^/[^/]+/[^/]+\n\t\t// Remove the leading slash\n\t\tpathname = pathname.substr(1);\n\t\t// reconstruct UNC path\n\t\tpathname = \"\\\\\\\\\" + document.location.hostname + pathname;\n\t} else {\n\t\treturn false;\n\t}\n\t// Save the file (as UTF-16)\n\tvar fso = new ActiveXObject(\"Scripting.FileSystemObject\");\n\tvar file = fso.OpenTextFile(pathname,2,-1,-1);\n\tfile.Write(text);\n\tfile.Close();\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nFSOSaver.prototype.info = {\n\tname: \"FSOSaver\",\n\tpriority: 120,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\ttry {\n\t\treturn (window.location.protocol === \"file:\") && !!(new ActiveXObject(\"Scripting.FileSystemObject\"));\n\t} catch(e) { return false; }\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new FSOSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/gitea.js": {
"title": "$:/core/modules/savers/gitea.js",
"text": "/*\\\ntitle: $:/core/modules/savers/gitea.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the gitea\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GiteaSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGiteaSaver.prototype.save = function(text,method,callback) {\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/Gitea/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"Gitea\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/Gitea/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/Gitea/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/Gitea/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/Gitea/Branch\") || \"master\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/Gitea/ServerURL\") || \"https://gitea\",\n\t\theaders = {\n\t\t\t\"Accept\": \"application/json\",\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Authorization\": \"Basic \" + window.btoa(username + \":\" + password)\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !path || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/repos/\" + repo + \"/contents\" + path;\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tdata: {\n\t\t\tref: branch\n\t\t},\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar use_put = true;\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif(sha === \"\"){\n\t\t\t\t\tuse_put = false;\n\t\t\t\t}\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tmessage: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: $tw.utils.base64Encode(text),\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: endpoint + \"/repos/\" + repo + \"/branches/\" + branch,\n\t\t\t\ttype: \"GET\",\n\t\t\t\theaders: headers,\n\t\t\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\t\t\tif(xhr.status === 404) {\n\t\t\t\t\t\tcallback(\"Please ensure the branch in the Gitea repo exists\");\n\t\t\t\t\t}else{\n\t\t\t\t\t\tdata[\"branch\"] = branch;\n\t\t\t\t\t\tself.upload(uri + filename, use_put?\"PUT\":\"POST\", headers, data, callback);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\nGiteaSaver.prototype.upload = function(uri,method,headers,data,callback) {\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: method,\n\t\theaders: headers,\n\t\tdata: JSON.stringify(data),\n\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\tcallback(null);\n\t\t}\n\t});\n};\n\n/*\nInformation about this saver\n*/\nGiteaSaver.prototype.info = {\n\tname: \"Gitea\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new GiteaSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/github.js": {
"title": "$:/core/modules/savers/github.js",
"text": "/*\\\ntitle: $:/core/modules/savers/github.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the GitHub v3 REST API\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GitHubSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGitHubSaver.prototype.save = function(text,method,callback) {\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/GitHub/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"github\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/GitHub/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/GitHub/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/GitHub/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/GitHub/Branch\") || \"master\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/GitHub/ServerURL\") || \"https://api.github.com\",\n\t\theaders = {\n\t\t\t\"Accept\": \"application/vnd.github.v3+json\",\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Authorization\": \"Basic \" + window.btoa(username + \":\" + password)\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !path || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/repos/\" + repo + \"/contents\" + path;\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tdata: {\n\t\t\tref: branch\n\t\t},\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tmessage: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: $tw.utils.base64Encode(text),\n\t\t\t\tbranch: branch,\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t// Perform a PUT request to save the file\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: uri + filename,\n\t\t\t\ttype: \"PUT\",\n\t\t\t\theaders: headers,\n\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\treturn callback(err);\n\t\t\t\t\t}\n\t\t\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\t\t\tcallback(null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nGitHubSaver.prototype.info = {\n\tname: \"github\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new GitHubSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/gitlab.js": {
"title": "$:/core/modules/savers/gitlab.js",
"text": "/*\\\ntitle: $:/core/modules/savers/gitlab.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the GitLab REST API\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: true */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GitLabSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGitLabSaver.prototype.save = function(text,method,callback) {\n\t/* See https://docs.gitlab.com/ee/api/repository_files.html */\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/GitLab/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"gitlab\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/GitLab/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/GitLab/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/GitLab/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/GitLab/Branch\") || \"master\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/GitLab/ServerURL\") || \"https://gitlab.com/api/v4\",\n\t\theaders = {\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Private-Token\": password\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !path || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/projects/\" + encodeURIComponent(repo) + \"/repository/\";\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri + \"tree/?path=\" + encodeURIComponent(path.replace(/^\\/+|\\/$/g, '')) + \"&branch=\" + encodeURIComponent(branch.replace(/^\\/+|\\/$/g, '')),\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar requestType = \"POST\";\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\trequestType = \"PUT\";\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tcommit_message: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: text,\n\t\t\t\tbranch: branch,\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t// Perform a request to save the file\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: uri + \"files/\" + encodeURIComponent(path.replace(/^\\/+/, '') + filename),\n\t\t\t\ttype: requestType,\n\t\t\t\theaders: headers,\n\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\treturn callback(err);\n\t\t\t\t\t}\n\t\t\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\t\t\tcallback(null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nGitLabSaver.prototype.info = {\n\tname: \"gitlab\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new GitLabSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/manualdownload.js": {
"title": "$:/core/modules/savers/manualdownload.js",
"text": "/*\\\ntitle: $:/core/modules/savers/manualdownload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via HTML5's download APIs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Title of the tiddler containing the download message\nvar downloadInstructionsTitle = \"$:/language/Modals/Download\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar ManualDownloadSaver = function(wiki) {\n};\n\nManualDownloadSaver.prototype.save = function(text,method,callback) {\n\t$tw.modal.display(downloadInstructionsTitle,{\n\t\tdownloadLink: \"data:text/html,\" + encodeURIComponent(text)\n\t});\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nManualDownloadSaver.prototype.info = {\n\tname: \"manualdownload\",\n\tpriority: 0,\n\tcapabilities: [\"save\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new ManualDownloadSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/msdownload.js": {
"title": "$:/core/modules/savers/msdownload.js",
"text": "/*\\\ntitle: $:/core/modules/savers/msdownload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via window.navigator.msSaveBlob()\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar MsDownloadSaver = function(wiki) {\n};\n\nMsDownloadSaver.prototype.save = function(text,method,callback) {\n\t// Get the current filename\n\tvar filename = \"tiddlywiki.html\",\n\t\tp = document.location.pathname.lastIndexOf(\"/\");\n\tif(p !== -1) {\n\t\tfilename = document.location.pathname.substr(p+1);\n\t}\n\t// Set up the link\n\tvar blob = new Blob([text], {type: \"text/html\"});\n\twindow.navigator.msSaveBlob(blob,filename);\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nMsDownloadSaver.prototype.info = {\n\tname: \"msdownload\",\n\tpriority: 110,\n\tcapabilities: [\"save\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.navigator.msSaveBlob;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new MsDownloadSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/put.js": {
"title": "$:/core/modules/savers/put.js",
"text": "/*\\\ntitle: $:/core/modules/savers/put.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by performing a PUT request to the server\n\nWorks with any server which accepts a PUT request\nto the current URL, such as a WebDAV server.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRetrieve ETag if available\n*/\nvar retrieveETag = function(self) {\n\tvar headers = {\n\t\tAccept: \"*/*;charset=UTF-8\"\n\t};\n\t$tw.utils.httpRequest({\n\t\turl: self.uri(),\n\t\ttype: \"HEAD\",\n\t\theaders: headers,\n\t\tcallback: function(err,data,xhr) {\n\t\t\tif(err) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar etag = xhr.getResponseHeader(\"ETag\");\n\t\t\tif(!etag) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tself.etag = etag.replace(/^W\\//,\"\");\n\t\t}\n\t});\n};\n\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar PutSaver = function(wiki) {\n\tthis.wiki = wiki;\n\tvar self = this;\n\tvar uri = this.uri();\n\t// Async server probe. Until probe finishes, save will fail fast\n\t// See also https://github.com/Jermolene/TiddlyWiki5/issues/2276\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"OPTIONS\",\n\t\tcallback: function(err,data,xhr) {\n\t\t\t// Check DAV header http://www.webdav.org/specs/rfc2518.html#rfc.section.9.1\n\t\t\tif(!err) {\n\t\t\t\tself.serverAcceptsPuts = xhr.status === 200 && !!xhr.getResponseHeader(\"dav\");\n\t\t\t}\n\t\t}\n\t});\n\tretrieveETag(this);\n};\n\nPutSaver.prototype.uri = function() {\n\treturn document.location.toString().split(\"#\")[0];\n};\n\n// TODO: in case of edit conflict\n// Prompt: Do you want to save over this? Y/N\n// Merging would be ideal, and may be possible using future generic merge flow\nPutSaver.prototype.save = function(text,method,callback) {\n\tif(!this.serverAcceptsPuts) {\n\t\treturn false;\n\t}\n\tvar self = this;\n\tvar headers = {\n\t\t\"Content-Type\": \"text/html;charset=UTF-8\"\n\t};\n\tif(this.etag) {\n\t\theaders[\"If-Match\"] = this.etag;\n\t}\n\t$tw.utils.httpRequest({\n\t\turl: this.uri(),\n\t\ttype: \"PUT\",\n\t\theaders: headers,\n\t\tdata: text,\n\t\tcallback: function(err,data,xhr) {\n\t\t\tif(err) {\n\t\t\t\t// response is textual: \"XMLHttpRequest error code: 412\"\n\t\t\t\tvar status = Number(err.substring(err.indexOf(':') + 2, err.length))\n\t\t\t\tif(status === 412) { // edit conflict\n\t\t\t\t\tvar message = $tw.language.getString(\"Error/EditConflict\");\n\t\t\t\t\tcallback(message);\n\t\t\t\t} else {\n\t\t\t\t\tcallback(err); // fail\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tself.etag = xhr.getResponseHeader(\"ETag\");\n\t\t\t\tif(self.etag == null) {\n\t\t\t\t\tretrieveETag(self);\n\t\t\t\t}\n\t\t\t\tcallback(null); // success\n\t\t\t}\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nPutSaver.prototype.info = {\n\tname: \"put\",\n\tpriority: 2000,\n\tcapabilities: [\"save\",\"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn /^https?:/.test(location.protocol);\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new PutSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/tiddlyfox.js": {
"title": "$:/core/modules/savers/tiddlyfox.js",
"text": "/*\\\ntitle: $:/core/modules/savers/tiddlyfox.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the TiddlyFox file extension\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar TiddlyFoxSaver = function(wiki) {\n};\n\nTiddlyFoxSaver.prototype.save = function(text,method,callback) {\n\tvar messageBox = document.getElementById(\"tiddlyfox-message-box\");\n\tif(messageBox) {\n\t\t// Get the pathname of this document\n\t\tvar pathname = document.location.toString().split(\"#\")[0];\n\t\t// Replace file://localhost/ with file:///\n\t\tif(pathname.indexOf(\"file://localhost/\") === 0) {\n\t\t\tpathname = \"file://\" + pathname.substr(16);\n\t\t}\n\t\t// Windows path file:///x:/blah/blah --> x:\\blah\\blah\n\t\tif(/^file\\:\\/\\/\\/[A-Z]\\:\\//i.test(pathname)) {\n\t\t\t// Remove the leading slash and convert slashes to backslashes\n\t\t\tpathname = pathname.substr(8).replace(/\\//g,\"\\\\\");\n\t\t// Firefox Windows network path file://///server/share/blah/blah --> //server/share/blah/blah\n\t\t} else if(pathname.indexOf(\"file://///\") === 0) {\n\t\t\tpathname = \"\\\\\\\\\" + unescape(pathname.substr(10)).replace(/\\//g,\"\\\\\");\n\t\t// Mac/Unix local path file:///path/path --> /path/path\n\t\t} else if(pathname.indexOf(\"file:///\") === 0) {\n\t\t\tpathname = unescape(pathname.substr(7));\n\t\t// Mac/Unix local path file:/path/path --> /path/path\n\t\t} else if(pathname.indexOf(\"file:/\") === 0) {\n\t\t\tpathname = unescape(pathname.substr(5));\n\t\t// Otherwise Windows networth path file://server/share/path/path --> \\\\server\\share\\path\\path\n\t\t} else {\n\t\t\tpathname = \"\\\\\\\\\" + unescape(pathname.substr(7)).replace(new RegExp(\"/\",\"g\"),\"\\\\\");\n\t\t}\n\t\t// Create the message element and put it in the message box\n\t\tvar message = document.createElement(\"div\");\n\t\tmessage.setAttribute(\"data-tiddlyfox-path\",decodeURIComponent(pathname));\n\t\tmessage.setAttribute(\"data-tiddlyfox-content\",text);\n\t\tmessageBox.appendChild(message);\n\t\t// Add an event handler for when the file has been saved\n\t\tmessage.addEventListener(\"tiddlyfox-have-saved-file\",function(event) {\n\t\t\tcallback(null);\n\t\t}, false);\n\t\t// Create and dispatch the custom event to the extension\n\t\tvar event = document.createEvent(\"Events\");\n\t\tevent.initEvent(\"tiddlyfox-save-file\",true,false);\n\t\tmessage.dispatchEvent(event);\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nInformation about this saver\n*/\nTiddlyFoxSaver.prototype.info = {\n\tname: \"tiddlyfox\",\n\tpriority: 1500,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TiddlyFoxSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/tiddlyie.js": {
"title": "$:/core/modules/savers/tiddlyie.js",
"text": "/*\\\ntitle: $:/core/modules/savers/tiddlyie.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via Internet Explorer BHO extenion (TiddlyIE)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar TiddlyIESaver = function(wiki) {\n};\n\nTiddlyIESaver.prototype.save = function(text,method,callback) {\n\t// Check existence of TiddlyIE BHO extension (note: only works after document is complete)\n\tif(typeof(window.TiddlyIE) != \"undefined\") {\n\t\t// Get the pathname of this document\n\t\tvar pathname = unescape(document.location.pathname);\n\t\t// Test for a Windows path of the form /x:/blah...\n\t\tif(/^\\/[A-Z]\\:\\/[^\\/]+/i.test(pathname)) {\t// ie: ^/[a-z]:/[^/]+ (is this better?: ^/[a-z]:/[^/]+(/[^/]+)*\\.[^/]+ )\n\t\t\t// Remove the leading slash\n\t\t\tpathname = pathname.substr(1);\n\t\t\t// Convert slashes to backslashes\n\t\t\tpathname = pathname.replace(/\\//g,\"\\\\\");\n\t\t} else if(document.hostname !== \"\" && /^\\/[^\\/]+\\/[^\\/]+/i.test(pathname)) {\t// test for \\\\server\\share\\blah... - ^/[^/]+/[^/]+\n\t\t\t// Convert slashes to backslashes\n\t\t\tpathname = pathname.replace(/\\//g,\"\\\\\");\n\t\t\t// reconstruct UNC path\n\t\t\tpathname = \"\\\\\\\\\" + document.location.hostname + pathname;\n\t\t} else return false;\n\t\t// Prompt the user to save the file\n\t\twindow.TiddlyIE.save(pathname, text);\n\t\t// Callback that we succeeded\n\t\tcallback(null);\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nInformation about this saver\n*/\nTiddlyIESaver.prototype.info = {\n\tname: \"tiddlyiesaver\",\n\tpriority: 1500,\n\tcapabilities: [\"save\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn (window.location.protocol === \"file:\");\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TiddlyIESaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/twedit.js": {
"title": "$:/core/modules/savers/twedit.js",
"text": "/*\\\ntitle: $:/core/modules/savers/twedit.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the TWEdit iOS app\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar TWEditSaver = function(wiki) {\n};\n\nTWEditSaver.prototype.save = function(text,method,callback) {\n\t// Bail if we're not running under TWEdit\n\tif(typeof DeviceInfo !== \"object\") {\n\t\treturn false;\n\t}\n\t// Get the pathname of this document\n\tvar pathname = decodeURIComponent(document.location.pathname);\n\t// Strip any query or location part\n\tvar p = pathname.indexOf(\"?\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\tp = pathname.indexOf(\"#\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\t// Remove the leading \"/Documents\" from path\n\tvar prefix = \"/Documents\";\n\tif(pathname.indexOf(prefix) === 0) {\n\t\tpathname = pathname.substr(prefix.length);\n\t}\n\t// Error handler\n\tvar errorHandler = function(event) {\n\t\t// Error\n\t\tcallback($tw.language.getString(\"Error/SavingToTWEdit\") + \": \" + event.target.error.code);\n\t};\n\t// Get the file system\n\twindow.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem) {\n\t\t// Now we've got the filesystem, get the fileEntry\n\t\tfileSystem.root.getFile(pathname, {create: true}, function(fileEntry) {\n\t\t\t// Now we've got the fileEntry, create the writer\n\t\t\tfileEntry.createWriter(function(writer) {\n\t\t\t\twriter.onerror = errorHandler;\n\t\t\t\twriter.onwrite = function() {\n\t\t\t\t\tcallback(null);\n\t\t\t\t};\n\t\t\t\twriter.position = 0;\n\t\t\t\twriter.write(text);\n\t\t\t},errorHandler);\n\t\t}, errorHandler);\n\t}, errorHandler);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nTWEditSaver.prototype.info = {\n\tname: \"twedit\",\n\tpriority: 1600,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TWEditSaver(wiki);\n};\n\n/////////////////////////// Hack\n// HACK: This ensures that TWEdit recognises us as a TiddlyWiki document\nif($tw.browser) {\n\twindow.version = {title: \"TiddlyWiki\"};\n}\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/upload.js": {
"title": "$:/core/modules/savers/upload.js",
"text": "/*\\\ntitle: $:/core/modules/savers/upload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via upload to a server.\n\nDesigned to be compatible with BidiX's UploadPlugin at http://tiddlywiki.bidix.info/#UploadPlugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar UploadSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nUploadSaver.prototype.save = function(text,method,callback) {\n\t// Get the various parameters we need\n\tvar backupDir = this.wiki.getTextReference(\"$:/UploadBackupDir\") || \".\",\n\t\tusername = this.wiki.getTextReference(\"$:/UploadName\"),\n\t\tpassword = $tw.utils.getPassword(\"upload\"),\n\t\tuploadDir = this.wiki.getTextReference(\"$:/UploadDir\") || \".\",\n\t\tuploadFilename = this.wiki.getTextReference(\"$:/UploadFilename\") || \"index.html\",\n\t\turl = this.wiki.getTextReference(\"$:/UploadURL\");\n\t// Bail out if we don't have the bits we need\n\tif(!username || username.toString().trim() === \"\" || !password || password.toString().trim() === \"\") {\n\t\treturn false;\n\t}\n\t// Construct the url if not provided\n\tif(!url) {\n\t\turl = \"http://\" + username + \".tiddlyspot.com/store.cgi\";\n\t}\n\t// Assemble the header\n\tvar boundary = \"---------------------------\" + \"AaB03x\";\t\n\tvar uploadFormName = \"UploadPlugin\";\n\tvar head = [];\n\thead.push(\"--\" + boundary + \"\\r\\nContent-disposition: form-data; name=\\\"UploadPlugin\\\"\\r\\n\");\n\thead.push(\"backupDir=\" + backupDir + \";user=\" + username + \";password=\" + password + \";uploaddir=\" + uploadDir + \";;\"); \n\thead.push(\"\\r\\n\" + \"--\" + boundary);\n\thead.push(\"Content-disposition: form-data; name=\\\"userfile\\\"; filename=\\\"\" + uploadFilename + \"\\\"\");\n\thead.push(\"Content-Type: text/html;charset=UTF-8\");\n\thead.push(\"Content-Length: \" + text.length + \"\\r\\n\");\n\thead.push(\"\");\n\t// Assemble the tail and the data itself\n\tvar tail = \"\\r\\n--\" + boundary + \"--\\r\\n\",\n\t\tdata = head.join(\"\\r\\n\") + text + tail;\n\t// Do the HTTP post\n\tvar http = new XMLHttpRequest();\n\thttp.open(\"POST\",url,true,username,password);\n\thttp.setRequestHeader(\"Content-Type\",\"multipart/form-data; charset=UTF-8; boundary=\" + boundary);\n\thttp.onreadystatechange = function() {\n\t\tif(http.readyState == 4 && http.status == 200) {\n\t\t\tif(http.responseText.substr(0,4) === \"0 - \") {\n\t\t\t\tcallback(null);\n\t\t\t} else {\n\t\t\t\tcallback(http.responseText);\n\t\t\t}\n\t\t}\n\t};\n\ttry {\n\t\thttp.send(data);\n\t} catch(ex) {\n\t\treturn callback($tw.language.getString(\"Error/Caption\") + \":\" + ex);\n\t}\n\t$tw.notifier.display(\"$:/language/Notifications/Save/Starting\");\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nUploadSaver.prototype.info = {\n\tname: \"upload\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new UploadSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/server/authenticators/basic.js": {
"title": "$:/core/modules/server/authenticators/basic.js",
"text": "/*\\\ntitle: $:/core/modules/server/authenticators/basic.js\ntype: application/javascript\nmodule-type: authenticator\n\nAuthenticator for WWW basic authentication\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nif($tw.node) {\n\tvar util = require(\"util\"),\n\t\tfs = require(\"fs\"),\n\t\turl = require(\"url\"),\n\t\tpath = require(\"path\");\n}\n\nfunction BasicAuthenticator(server) {\n\tthis.server = server;\n\tthis.credentialsData = [];\n}\n\n/*\nReturns true if the authenticator is active, false if it is inactive, or a string if there is an error\n*/\nBasicAuthenticator.prototype.init = function() {\n\t// Read the credentials data\n\tthis.credentialsFilepath = this.server.get(\"credentials\");\n\tif(this.credentialsFilepath) {\n\t\tvar resolveCredentialsFilepath = path.resolve($tw.boot.wikiPath,this.credentialsFilepath);\n\t\tif(fs.existsSync(resolveCredentialsFilepath) && !fs.statSync(resolveCredentialsFilepath).isDirectory()) {\n\t\t\tvar credentialsText = fs.readFileSync(resolveCredentialsFilepath,\"utf8\"),\n\t\t\t\tcredentialsData = $tw.utils.parseCsvStringWithHeader(credentialsText);\n\t\t\tif(typeof credentialsData === \"string\") {\n\t\t\t\treturn \"Error: \" + credentialsData + \" reading credentials from '\" + resolveCredentialsFilepath + \"'\";\n\t\t\t} else {\n\t\t\t\tthis.credentialsData = credentialsData;\n\t\t\t}\n\t\t} else {\n\t\t\treturn \"Error: Unable to load user credentials from '\" + resolveCredentialsFilepath + \"'\";\n\t\t}\n\t}\n\t// Add the hardcoded username and password if specified\n\tif(this.server.get(\"username\") && this.server.get(\"password\")) {\n\t\tthis.credentialsData = this.credentialsData || [];\n\t\tthis.credentialsData.push({\n\t\t\tusername: this.server.get(\"username\"),\n\t\t\tpassword: this.server.get(\"password\")\n\t\t});\n\t}\n\treturn this.credentialsData.length > 0;\n};\n\n/*\nReturns true if the request is authenticated and assigns the \"authenticatedUsername\" state variable.\nReturns false if the request couldn't be authenticated having sent an appropriate response to the browser\n*/\nBasicAuthenticator.prototype.authenticateRequest = function(request,response,state) {\n\t// Extract the incoming username and password from the request\n\tvar header = request.headers.authorization || \"\";\n\tif(!header && state.allowAnon) {\n\t\t// If there's no header and anonymous access is allowed then we don't set authenticatedUsername\n\t\treturn true;\n\t}\n\tvar token = header.split(/\\s+/).pop() || \"\",\n\t\tauth = $tw.utils.base64Decode(token),\n\t\tparts = auth.split(/:/),\n\t\tincomingUsername = parts[0],\n\t\tincomingPassword = parts[1];\n\t// Check that at least one of the credentials matches\n\tvar matchingCredentials = this.credentialsData.find(function(credential) {\n\t\treturn credential.username === incomingUsername && credential.password === incomingPassword;\n\t});\n\tif(matchingCredentials) {\n\t\t// If so, add the authenticated username to the request state\n\t\tstate.authenticatedUsername = incomingUsername;\n\t\treturn true;\n\t} else {\n\t\t// If not, return an authentication challenge\n\t\tresponse.writeHead(401,\"Authentication required\",{\n\t\t\t\"WWW-Authenticate\": 'Basic realm=\"Please provide your username and password to login to ' + state.server.servername + '\"'\n\t\t});\n\t\tresponse.end();\n\t\treturn false;\n\t}\n};\n\nexports.AuthenticatorClass = BasicAuthenticator;\n\n})();\n",
"type": "application/javascript",
"module-type": "authenticator"
},
"$:/core/modules/server/authenticators/header.js": {
"title": "$:/core/modules/server/authenticators/header.js",
"text": "/*\\\ntitle: $:/core/modules/server/authenticators/header.js\ntype: application/javascript\nmodule-type: authenticator\n\nAuthenticator for trusted header authentication\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction HeaderAuthenticator(server) {\n\tthis.server = server;\n\tthis.header = server.get(\"authenticated-user-header\");\n}\n\n/*\nReturns true if the authenticator is active, false if it is inactive, or a string if there is an error\n*/\nHeaderAuthenticator.prototype.init = function() {\n\treturn !!this.header;\n};\n\n/*\nReturns true if the request is authenticated and assigns the \"authenticatedUsername\" state variable.\nReturns false if the request couldn't be authenticated having sent an appropriate response to the browser\n*/\nHeaderAuthenticator.prototype.authenticateRequest = function(request,response,state) {\n\t// Otherwise, authenticate as the username in the specified header\n\tvar username = request.headers[this.header];\n\tif(!username && !state.allowAnon) {\n\t\tresponse.writeHead(401,\"Authorization header required to login to '\" + state.server.servername + \"'\");\n\t\tresponse.end();\n\t\treturn false;\n\t} else {\n\t\t// authenticatedUsername will be undefined for anonymous users\n\t\tstate.authenticatedUsername = username;\n\t\treturn true;\n\t}\n};\n\nexports.AuthenticatorClass = HeaderAuthenticator;\n\n})();\n",
"type": "application/javascript",
"module-type": "authenticator"
},
"$:/core/modules/server/routes/delete-tiddler.js": {
"title": "$:/core/modules/server/routes/delete-tiddler.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/delete-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nDELETE /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"DELETE\";\n\nexports.path = /^\\/bags\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]);\n\tstate.wiki.deleteTiddler(title);\n\tresponse.writeHead(204, \"OK\", {\n\t\t\"Content-Type\": \"text/plain\"\n\t});\n\tresponse.end();\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-favicon.js": {
"title": "$:/core/modules/server/routes/get-favicon.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-favicon.js\ntype: application/javascript\nmodule-type: route\n\nGET /favicon.ico\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/favicon.ico$/;\n\nexports.handler = function(request,response,state) {\n\tresponse.writeHead(200, {\"Content-Type\": \"image/x-icon\"});\n\tvar buffer = state.wiki.getTiddlerText(\"$:/favicon.ico\",\"\");\n\tresponse.end(buffer,\"base64\");\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-file.js": {
"title": "$:/core/modules/server/routes/get-file.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-file.js\ntype: application/javascript\nmodule-type: route\n\nGET /files/:filepath\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/files\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar path = require(\"path\"),\n\t\tfs = require(\"fs\"),\n\t\tutil = require(\"util\"),\n\t\tsuppliedFilename = decodeURIComponent(state.params[0]),\n\t\tfilename = path.resolve($tw.boot.wikiPath,\"files\",suppliedFilename),\n\t\textension = path.extname(filename);\n\tfs.readFile(filename,function(err,content) {\n\t\tvar status,content,type = \"text/plain\";\n\t\tif(err) {\n\t\t\tconsole.log(\"Error accessing file \" + filename + \": \" + err.toString());\n\t\t\tstatus = 404;\n\t\t\tcontent = \"File '\" + suppliedFilename + \"' not found\";\n\t\t} else {\n\t\t\tstatus = 200;\n\t\t\tcontent = content;\n\t\t\ttype = ($tw.config.fileExtensionInfo[extension] ? $tw.config.fileExtensionInfo[extension].type : \"application/octet-stream\");\n\t\t}\n\t\tresponse.writeHead(status,{\n\t\t\t\"Content-Type\": type\n\t\t});\n\t\tresponse.end(content);\n\t});\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-index.js": {
"title": "$:/core/modules/server/routes/get-index.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-index.js\ntype: application/javascript\nmodule-type: route\n\nGET /\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar zlib = require(\"zlib\");\n\nexports.method = \"GET\";\n\nexports.path = /^\\/$/;\n\nexports.handler = function(request,response,state) {\n\tvar acceptEncoding = request.headers[\"accept-encoding\"];\n\tif(!acceptEncoding) {\n\t\tacceptEncoding = \"\";\n\t}\n\tvar text = state.wiki.renderTiddler(state.server.get(\"root-render-type\"),state.server.get(\"root-tiddler\")),\n\t\tresponseHeaders = {\n\t\t\"Content-Type\": state.server.get(\"root-serve-type\")\n\t};\n\t/*\n\tIf the gzip=yes flag for `listen` is set, check if the user agent permits\n\tcompression. If so, compress our response. Note that we use the synchronous\n\tfunctions from zlib to stay in the imperative style. The current `Server`\n\tdoesn't depend on this, and we may just as well use the async versions.\n\t*/\n\tif(state.server.enableGzip) {\n\t\tif (/\\bdeflate\\b/.test(acceptEncoding)) {\n\t\t\tresponseHeaders[\"Content-Encoding\"] = \"deflate\";\n\t\t\ttext = zlib.deflateSync(text);\n\t\t} else if (/\\bgzip\\b/.test(acceptEncoding)) {\n\t\t\tresponseHeaders[\"Content-Encoding\"] = \"gzip\";\n\t\t\ttext = zlib.gzipSync(text);\n\t\t}\n\t}\n\tresponse.writeHead(200,responseHeaders);\n\tresponse.end(text);\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-login-basic.js": {
"title": "$:/core/modules/server/routes/get-login-basic.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-login-basic.js\ntype: application/javascript\nmodule-type: route\n\nGET /login-basic -- force a Basic Authentication challenge\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/login-basic$/;\n\nexports.handler = function(request,response,state) {\n\tif(!state.authenticatedUsername) {\n\t\t// Challenge if there's no username\n\t\tresponse.writeHead(401,{\n\t\t\t\"WWW-Authenticate\": 'Basic realm=\"Please provide your username and password to login to ' + state.server.servername + '\"'\n\t\t});\n\t\tresponse.end();\t\t\n\t} else {\n\t\t// Redirect to the root wiki if login worked\n\t\tresponse.writeHead(302,{\n\t\t\tLocation: \"/\"\n\t\t});\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-status.js": {
"title": "$:/core/modules/server/routes/get-status.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-status.js\ntype: application/javascript\nmodule-type: route\n\nGET /status\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/status$/;\n\nexports.handler = function(request,response,state) {\n\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\tvar text = JSON.stringify({\n\t\tusername: state.authenticatedUsername || state.server.get(\"anon-username\") || \"\",\n\t\tanonymous: !state.authenticatedUsername,\n\t\tread_only: !state.server.isAuthorized(\"writers\",state.authenticatedUsername),\n\t\tspace: {\n\t\t\trecipe: \"default\"\n\t\t},\n\t\ttiddlywiki_version: $tw.version\n\t});\n\tresponse.end(text,\"utf8\");\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-tiddler-html.js": {
"title": "$:/core/modules/server/routes/get-tiddler-html.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddler-html.js\ntype: application/javascript\nmodule-type: route\n\nGET /:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/([^\\/]+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\t\ttiddler = state.wiki.getTiddler(title);\n\tif(tiddler) {\n\t\tvar renderType = tiddler.getFieldString(\"_render_type\"),\n\t\t\trenderTemplate = tiddler.getFieldString(\"_render_template\");\n\t\t// Tiddler fields '_render_type' and '_render_template' overwrite\n\t\t// system wide settings for render type and template\n\t\tif(state.wiki.isSystemTiddler(title)) {\n\t\t\trenderType = renderType || state.server.get(\"system-tiddler-render-type\");\n\t\t\trenderTemplate = renderTemplate || state.server.get(\"system-tiddler-render-template\");\n\t\t} else {\n\t\t\trenderType = renderType || state.server.get(\"tiddler-render-type\");\n\t\t\trenderTemplate = renderTemplate || state.server.get(\"tiddler-render-template\");\n\t\t}\n\t\tvar text = state.wiki.renderTiddler(renderType,renderTemplate,{parseAsInline: true, variables: {currentTiddler: title}});\n\t\t// Naughty not to set a content-type, but it's the easiest way to ensure the browser will see HTML pages as HTML, and accept plain text tiddlers as CSS or JS\n\t\tresponse.writeHead(200);\n\t\tresponse.end(text,\"utf8\");\n\t} else {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-tiddler.js": {
"title": "$:/core/modules/server/routes/get-tiddler.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nGET /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\t\ttiddler = state.wiki.getTiddler(title),\n\t\ttiddlerFields = {},\n\t\tknownFields = [\n\t\t\t\"bag\", \"created\", \"creator\", \"modified\", \"modifier\", \"permissions\", \"recipe\", \"revision\", \"tags\", \"text\", \"title\", \"type\", \"uri\"\n\t\t];\n\tif(tiddler) {\n\t\t$tw.utils.each(tiddler.fields,function(field,name) {\n\t\t\tvar value = tiddler.getFieldString(name);\n\t\t\tif(knownFields.indexOf(name) !== -1) {\n\t\t\t\ttiddlerFields[name] = value;\n\t\t\t} else {\n\t\t\t\ttiddlerFields.fields = tiddlerFields.fields || {};\n\t\t\t\ttiddlerFields.fields[name] = value;\n\t\t\t}\n\t\t});\n\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\ttiddlerFields.bag = \"default\";\n\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\t\tresponse.end(JSON.stringify(tiddlerFields),\"utf8\");\n\t} else {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-tiddlers-json.js": {
"title": "$:/core/modules/server/routes/get-tiddlers-json.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddlers-json.js\ntype: application/javascript\nmodule-type: route\n\nGET /recipes/default/tiddlers/tiddlers.json?filter=<filter>\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DEFAULT_FILTER = \"[all[tiddlers]!is[system]sort[title]]\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers.json$/;\n\nexports.handler = function(request,response,state) {\n\tvar filter = state.queryParameters.filter || DEFAULT_FILTER;\n\tif($tw.wiki.getTiddlerText(\"$:/config/Server/AllowAllExternalFilters\") !== \"yes\") {\n\t\tif($tw.wiki.getTiddlerText(\"$:/config/Server/ExternalFilters/\" + filter) !== \"yes\") {\n\t\t\tconsole.log(\"Blocked attempt to GET /recipes/default/tiddlers/tiddlers.json with filter: \" + filter);\n\t\t\tresponse.writeHead(403);\n\t\t\tresponse.end();\n\t\t\treturn;\n\t\t}\n\t}\n\tvar excludeFields = (state.queryParameters.exclude || \"text\").split(\",\"),\n\t\ttitles = state.wiki.filterTiddlers(filter);\n\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\tvar tiddlers = [];\n\t$tw.utils.each(titles,function(title) {\n\t\tvar tiddler = state.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tvar tiddlerFields = tiddler.getFieldStrings({exclude: excludeFields});\n\t\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\t\ttiddlers.push(tiddlerFields);\n\t\t}\n\t});\n\tvar text = JSON.stringify(tiddlers);\n\tresponse.end(text,\"utf8\");\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/put-tiddler.js": {
"title": "$:/core/modules/server/routes/put-tiddler.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/put-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nPUT /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"PUT\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\tfields = JSON.parse(state.data);\n\t// Pull up any subfields in the `fields` object\n\tif(fields.fields) {\n\t\t$tw.utils.each(fields.fields,function(field,name) {\n\t\t\tfields[name] = field;\n\t\t});\n\t\tdelete fields.fields;\n\t}\n\t// Remove any revision field\n\tif(fields.revision) {\n\t\tdelete fields.revision;\n\t}\n\tstate.wiki.addTiddler(new $tw.Tiddler(state.wiki.getCreationFields(),fields,{title: title},state.wiki.getModificationFields()));\n\tvar changeCount = state.wiki.getChangeCount(title).toString();\n\tresponse.writeHead(204, \"OK\",{\n\t\tEtag: \"\\\"default/\" + encodeURIComponent(title) + \"/\" + changeCount + \":\\\"\",\n\t\t\"Content-Type\": \"text/plain\"\n\t});\n\tresponse.end();\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/server.js": {
"title": "$:/core/modules/server/server.js",
"text": "/*\\\ntitle: $:/core/modules/server/server.js\ntype: application/javascript\nmodule-type: library\n\nServe tiddlers over http\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nif($tw.node) {\n\tvar util = require(\"util\"),\n\t\tfs = require(\"fs\"),\n\t\turl = require(\"url\"),\n\t\tpath = require(\"path\"),\n\t\tquerystring = require(\"querystring\");\n}\n\n/*\nA simple HTTP server with regexp-based routes\noptions: variables - optional hashmap of variables to set (a misnomer - they are really constant parameters)\n\t\t routes - optional array of routes to use\n\t\t wiki - reference to wiki object\n*/\nfunction Server(options) {\n\tvar self = this;\n\tthis.routes = options.routes || [];\n\tthis.authenticators = options.authenticators || [];\n\tthis.wiki = options.wiki;\n\tthis.servername = $tw.utils.transliterateToSafeASCII(this.wiki.getTiddlerText(\"$:/SiteTitle\") || \"TiddlyWiki5\");\n\t// Initialise the variables\n\tthis.variables = $tw.utils.extend({},this.defaultVariables);\n\tif(options.variables) {\n\t\tfor(var variable in options.variables) {\n\t\t\tif(options.variables[variable]) {\n\t\t\t\tthis.variables[variable] = options.variables[variable];\n\t\t\t}\n\t\t}\t\t\n\t}\n\t$tw.utils.extend({},this.defaultVariables,options.variables);\n\t// Initialise CSRF\n\tthis.csrfDisable = this.get(\"csrf-disable\") === \"yes\";\n\t// Initialize Gzip compression\n\tthis.enableGzip = this.get(\"gzip\") === \"yes\";\n\t// Initialise authorization\n\tvar authorizedUserName = (this.get(\"username\") && this.get(\"password\")) ? this.get(\"username\") : \"(anon)\";\n\tthis.authorizationPrincipals = {\n\t\treaders: (this.get(\"readers\") || authorizedUserName).split(\",\").map($tw.utils.trim),\n\t\twriters: (this.get(\"writers\") || authorizedUserName).split(\",\").map($tw.utils.trim)\n\t}\n\t// Load and initialise authenticators\n\t$tw.modules.forEachModuleOfType(\"authenticator\", function(title,authenticatorDefinition) {\n\t\t// console.log(\"Loading server route \" + title);\n\t\tself.addAuthenticator(authenticatorDefinition.AuthenticatorClass);\n\t});\n\t// Load route handlers\n\t$tw.modules.forEachModuleOfType(\"route\", function(title,routeDefinition) {\n\t\t// console.log(\"Loading server route \" + title);\n\t\tself.addRoute(routeDefinition);\n\t});\n\t// Initialise the http vs https\n\tthis.listenOptions = null;\n\tthis.protocol = \"http\";\n\tvar tlsKeyFilepath = this.get(\"tls-key\"),\n\t\ttlsCertFilepath = this.get(\"tls-cert\");\n\tif(tlsCertFilepath && tlsKeyFilepath) {\n\t\tthis.listenOptions = {\n\t\t\tkey: fs.readFileSync(path.resolve($tw.boot.wikiPath,tlsKeyFilepath),\"utf8\"),\n\t\t\tcert: fs.readFileSync(path.resolve($tw.boot.wikiPath,tlsCertFilepath),\"utf8\")\n\t\t};\n\t\tthis.protocol = \"https\";\n\t}\n\tthis.transport = require(this.protocol);\n}\n\nServer.prototype.defaultVariables = {\n\tport: \"8080\",\n\thost: \"127.0.0.1\",\n\t\"root-tiddler\": \"$:/core/save/all\",\n\t\"root-render-type\": \"text/plain\",\n\t\"root-serve-type\": \"text/html\",\n\t\"tiddler-render-type\": \"text/html\",\n\t\"tiddler-render-template\": \"$:/core/templates/server/static.tiddler.html\",\n\t\"system-tiddler-render-type\": \"text/plain\",\n\t\"system-tiddler-render-template\": \"$:/core/templates/wikified-tiddler\",\n\t\"debug-level\": \"none\",\n\t\"gzip\": \"no\"\n};\n\nServer.prototype.get = function(name) {\n\treturn this.variables[name];\n};\n\nServer.prototype.addRoute = function(route) {\n\tthis.routes.push(route);\n};\n\nServer.prototype.addAuthenticator = function(AuthenticatorClass) {\n\t// Instantiate and initialise the authenticator\n\tvar authenticator = new AuthenticatorClass(this),\n\t\tresult = authenticator.init();\n\tif(typeof result === \"string\") {\n\t\t$tw.utils.error(\"Error: \" + result);\n\t} else if(result) {\n\t\t// Only use the authenticator if it initialised successfully\n\t\tthis.authenticators.push(authenticator);\n\t}\n};\n\nServer.prototype.findMatchingRoute = function(request,state) {\n\tvar pathprefix = this.get(\"path-prefix\") || \"\";\n\tfor(var t=0; t<this.routes.length; t++) {\n\t\tvar potentialRoute = this.routes[t],\n\t\t\tpathRegExp = potentialRoute.path,\n\t\t\tpathname = state.urlInfo.pathname,\n\t\t\tmatch;\n\t\tif(pathprefix) {\n\t\t\tif(pathname.substr(0,pathprefix.length) === pathprefix) {\n\t\t\t\tpathname = pathname.substr(pathprefix.length) || \"/\";\n\t\t\t\tmatch = potentialRoute.path.exec(pathname);\n\t\t\t} else {\n\t\t\t\tmatch = false;\n\t\t\t}\n\t\t} else {\n\t\t\tmatch = potentialRoute.path.exec(pathname);\n\t\t}\n\t\tif(match && request.method === potentialRoute.method) {\n\t\t\tstate.params = [];\n\t\t\tfor(var p=1; p<match.length; p++) {\n\t\t\t\tstate.params.push(match[p]);\n\t\t\t}\n\t\t\treturn potentialRoute;\n\t\t}\n\t}\n\treturn null;\n};\n\nServer.prototype.methodMappings = {\n\t\"GET\": \"readers\",\n\t\"OPTIONS\": \"readers\",\n\t\"HEAD\": \"readers\",\n\t\"PUT\": \"writers\",\n\t\"POST\": \"writers\",\n\t\"DELETE\": \"writers\"\n};\n\n/*\nCheck whether a given user is authorized for the specified authorizationType (\"readers\" or \"writers\"). Pass null or undefined as the username to check for anonymous access\n*/\nServer.prototype.isAuthorized = function(authorizationType,username) {\n\tvar principals = this.authorizationPrincipals[authorizationType] || [];\n\treturn principals.indexOf(\"(anon)\") !== -1 || (username && (principals.indexOf(\"(authenticated)\") !== -1 || principals.indexOf(username) !== -1));\n}\n\nServer.prototype.requestHandler = function(request,response) {\n\t// Compose the state object\n\tvar self = this;\n\tvar state = {};\n\tstate.wiki = self.wiki;\n\tstate.server = self;\n\tstate.urlInfo = url.parse(request.url);\n\tstate.queryParameters = querystring.parse(state.urlInfo.query);\n\t// Get the principals authorized to access this resource\n\tvar authorizationType = this.methodMappings[request.method] || \"readers\";\n\t// Check for the CSRF header if this is a write\n\tif(!this.csrfDisable && authorizationType === \"writers\" && request.headers[\"x-requested-with\"] !== \"TiddlyWiki\") {\n\t\tresponse.writeHead(403,\"'X-Requested-With' header required to login to '\" + this.servername + \"'\");\n\t\tresponse.end();\n\t\treturn;\t\t\n\t}\n\t// Check whether anonymous access is granted\n\tstate.allowAnon = this.isAuthorized(authorizationType,null);\n\t// Authenticate with the first active authenticator\n\tif(this.authenticators.length > 0) {\n\t\tif(!this.authenticators[0].authenticateRequest(request,response,state)) {\n\t\t\t// Bail if we failed (the authenticator will have sent the response)\n\t\t\treturn;\n\t\t}\t\t\n\t}\n\t// Authorize with the authenticated username\n\tif(!this.isAuthorized(authorizationType,state.authenticatedUsername)) {\n\t\tresponse.writeHead(401,\"'\" + state.authenticatedUsername + \"' is not authorized to access '\" + this.servername + \"'\");\n\t\tresponse.end();\n\t\treturn;\n\t}\n\t// Find the route that matches this path\n\tvar route = self.findMatchingRoute(request,state);\n\t// Optionally output debug info\n\tif(self.get(\"debug-level\") !== \"none\") {\n\t\tconsole.log(\"Request path:\",JSON.stringify(state.urlInfo));\n\t\tconsole.log(\"Request headers:\",JSON.stringify(request.headers));\n\t\tconsole.log(\"authenticatedUsername:\",state.authenticatedUsername);\n\t}\n\t// Return a 404 if we didn't find a route\n\tif(!route) {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t\treturn;\n\t}\n\t// Receive the request body if necessary and hand off to the route handler\n\tif(route.bodyFormat === \"stream\" || request.method === \"GET\" || request.method === \"HEAD\") {\n\t\t// Let the route handle the request stream itself\n\t\troute.handler(request,response,state);\n\t} else if(route.bodyFormat === \"string\" || !route.bodyFormat) {\n\t\t// Set the encoding for the incoming request\n\t\trequest.setEncoding(\"utf8\");\n\t\tvar data = \"\";\n\t\trequest.on(\"data\",function(chunk) {\n\t\t\tdata += chunk.toString();\n\t\t});\n\t\trequest.on(\"end\",function() {\n\t\t\tstate.data = data;\n\t\t\troute.handler(request,response,state);\n\t\t});\n\t} else if(route.bodyFormat === \"buffer\") {\n\t\tvar data = [];\n\t\trequest.on(\"data\",function(chunk) {\n\t\t\tdata.push(chunk);\n\t\t});\n\t\trequest.on(\"end\",function() {\n\t\t\tstate.data = Buffer.concat(data);\n\t\t\troute.handler(request,response,state);\n\t\t})\n\t} else {\n\t\tresponse.writeHead(400,\"Invalid bodyFormat \" + route.bodyFormat + \" in route \" + route.method + \" \" + route.path.source);\n\t\tresponse.end();\n\t}\n};\n\n/*\nListen for requests\nport: optional port number (falls back to value of \"port\" variable)\nhost: optional host address (falls back to value of \"host\" variable)\nprefix: optional prefix (falls back to value of \"path-prefix\" variable)\n*/\nServer.prototype.listen = function(port,host,prefix) {\n\tvar self = this;\n\t// Handle defaults for port and host\n\tport = port || this.get(\"port\");\n\thost = host || this.get(\"host\");\n\tprefix = prefix || this.get(\"path-prefix\") || \"\";\n\t// Check for the port being a string and look it up as an environment variable\n\tif(parseInt(port,10).toString() !== port) {\n\t\tport = process.env[port] || 8080;\n\t}\n\t// Warn if required plugins are missing\n\tif(!$tw.wiki.getTiddler(\"$:/plugins/tiddlywiki/tiddlyweb\") || !$tw.wiki.getTiddler(\"$:/plugins/tiddlywiki/filesystem\")) {\n\t\t$tw.utils.warning(\"Warning: Plugins required for client-server operation (\\\"tiddlywiki/filesystem\\\" and \\\"tiddlywiki/tiddlyweb\\\") are missing from tiddlywiki.info file\");\n\t}\n\t// Create the server\n\tvar server;\n\tif(this.listenOptions) {\n\t\tserver = this.transport.createServer(this.listenOptions,this.requestHandler.bind(this));\n\t} else {\n\t\tserver = this.transport.createServer(this.requestHandler.bind(this));\n\t}\n\t// Display the port number after we've started listening (the port number might have been specified as zero, in which case we will get an assigned port)\n\tserver.on(\"listening\",function() {\n\t\tvar address = server.address();\n\t\t$tw.utils.log(\"Serving on \" + self.protocol + \"://\" + address.address + \":\" + address.port + prefix,\"brown/orange\");\n\t\t$tw.utils.log(\"(press ctrl-C to exit)\",\"red\");\n\t});\n\t// Listen\n\treturn server.listen(port,host);\n};\n\nexports.Server = Server;\n\n})();\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/core/modules/browser-messaging.js": {
"title": "$:/core/modules/browser-messaging.js",
"text": "/*\\\ntitle: $:/core/modules/browser-messaging.js\ntype: application/javascript\nmodule-type: startup\n\nBrowser message handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"browser-messaging\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n/*\nLoad a specified url as an iframe and call the callback when it is loaded. If the url is already loaded then the existing iframe instance is used\n*/\nfunction loadIFrame(url,callback) {\n\t// Check if iframe already exists\n\tvar iframeInfo = $tw.browserMessaging.iframeInfoMap[url];\n\tif(iframeInfo) {\n\t\t// We've already got the iframe\n\t\tcallback(null,iframeInfo);\n\t} else {\n\t\t// Create the iframe and save it in the list\n\t\tvar iframe = document.createElement(\"iframe\");\n\t\tiframeInfo = {\n\t\t\turl: url,\n\t\t\tstatus: \"loading\",\n\t\t\tdomNode: iframe\n\t\t};\n\t\t$tw.browserMessaging.iframeInfoMap[url] = iframeInfo;\n\t\tsaveIFrameInfoTiddler(iframeInfo);\n\t\t// Add the iframe to the DOM and hide it\n\t\tiframe.style.display = \"none\";\n\t\tiframe.setAttribute(\"library\",\"true\");\n\t\tdocument.body.appendChild(iframe);\n\t\t// Set up onload\n\t\tiframe.onload = function() {\n\t\t\tiframeInfo.status = \"loaded\";\n\t\t\tsaveIFrameInfoTiddler(iframeInfo);\n\t\t\tcallback(null,iframeInfo);\n\t\t};\n\t\tiframe.onerror = function() {\n\t\t\tcallback(\"Cannot load iframe\");\n\t\t};\n\t\ttry {\n\t\t\tiframe.src = url;\n\t\t} catch(ex) {\n\t\t\tcallback(ex);\n\t\t}\n\t}\n}\n\n/*\nUnload library iframe for given url\n*/\nfunction unloadIFrame(url){\n\t$tw.utils.each(document.getElementsByTagName('iframe'), function(iframe) {\n\t\tif(iframe.getAttribute(\"library\") === \"true\" &&\n\t\t iframe.getAttribute(\"src\") === url) {\n\t\t\tiframe.parentNode.removeChild(iframe);\n\t\t}\n\t});\n}\n\nfunction saveIFrameInfoTiddler(iframeInfo) {\n\t$tw.wiki.addTiddler(new $tw.Tiddler($tw.wiki.getCreationFields(),{\n\t\ttitle: \"$:/temp/ServerConnection/\" + iframeInfo.url,\n\t\ttext: iframeInfo.status,\n\t\ttags: [\"$:/tags/ServerConnection\"],\n\t\turl: iframeInfo.url\n\t},$tw.wiki.getModificationFields()));\n}\n\nexports.startup = function() {\n\t// Initialise the store of iframes we've created\n\t$tw.browserMessaging = {\n\t\tiframeInfoMap: {} // Hashmap by URL of {url:,status:\"loading/loaded\",domNode:}\n\t};\n\t// Listen for widget messages to control loading the plugin library\n\t$tw.rootWidget.addEventListener(\"tm-load-plugin-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url;\n\t\tif(url) {\n\t\t\tloadIFrame(url,function(err,iframeInfo) {\n\t\t\t\tif(err) {\n\t\t\t\t\talert($tw.language.getString(\"Error/LoadingPluginLibrary\") + \": \" + url);\n\t\t\t\t} else {\n\t\t\t\t\tiframeInfo.domNode.contentWindow.postMessage({\n\t\t\t\t\t\tverb: \"GET\",\n\t\t\t\t\t\turl: \"recipes/library/tiddlers.json\",\n\t\t\t\t\t\tcookies: {\n\t\t\t\t\t\t\ttype: \"save-info\",\n\t\t\t\t\t\t\tinfoTitlePrefix: paramObject.infoTitlePrefix || \"$:/temp/RemoteAssetInfo/\",\n\t\t\t\t\t\t\turl: url\n\t\t\t\t\t\t}\n\t\t\t\t\t},\"*\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Listen for widget messages to control unloading the plugin library\n\t$tw.rootWidget.addEventListener(\"tm-unload-plugin-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url;\n\t\t$tw.browserMessaging.iframeInfoMap[url] = undefined;\n\t\tif(url) {\n\t\t\tunloadIFrame(url);\n\t\t\t$tw.utils.each(\n\t\t\t\t$tw.wiki.filterTiddlers(\"[[$:/temp/ServerConnection/\" + url + \"]] [prefix[$:/temp/RemoteAssetInfo/\" + url + \"/]]\"),\n\t\t\t\tfunction(title) {\n\t\t\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-load-plugin-from-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url,\n\t\t\ttitle = paramObject.title;\n\t\tif(url && title) {\n\t\t\tloadIFrame(url,function(err,iframeInfo) {\n\t\t\t\tif(err) {\n\t\t\t\t\talert($tw.language.getString(\"Error/LoadingPluginLibrary\") + \": \" + url);\n\t\t\t\t} else {\n\t\t\t\t\tiframeInfo.domNode.contentWindow.postMessage({\n\t\t\t\t\t\tverb: \"GET\",\n\t\t\t\t\t\turl: \"recipes/library/tiddlers/\" + encodeURIComponent(title) + \".json\",\n\t\t\t\t\t\tcookies: {\n\t\t\t\t\t\t\ttype: \"save-tiddler\",\n\t\t\t\t\t\t\turl: url\n\t\t\t\t\t\t}\n\t\t\t\t\t},\"*\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Listen for window messages from other windows\n\twindow.addEventListener(\"message\",function listener(event){\n\t\t// console.log(\"browser-messaging: \",document.location.toString())\n\t\t// console.log(\"browser-messaging: Received message from\",event.origin);\n\t\t// console.log(\"browser-messaging: Message content\",event.data);\n\t\tswitch(event.data.verb) {\n\t\t\tcase \"GET-RESPONSE\":\n\t\t\t\tif(event.data.status.charAt(0) === \"2\") {\n\t\t\t\t\tif(event.data.cookies) {\n\t\t\t\t\t\tif(event.data.cookies.type === \"save-info\") {\n\t\t\t\t\t\t\tvar tiddlers = JSON.parse(event.data.body);\n\t\t\t\t\t\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\t\t\t\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler($tw.wiki.getCreationFields(),tiddler,{\n\t\t\t\t\t\t\t\t\ttitle: event.data.cookies.infoTitlePrefix + event.data.cookies.url + \"/\" + tiddler.title,\n\t\t\t\t\t\t\t\t\t\"original-title\": tiddler.title,\n\t\t\t\t\t\t\t\t\ttext: \"\",\n\t\t\t\t\t\t\t\t\ttype: \"text/vnd.tiddlywiki\",\n\t\t\t\t\t\t\t\t\t\"original-type\": tiddler.type,\n\t\t\t\t\t\t\t\t\t\"plugin-type\": undefined,\n\t\t\t\t\t\t\t\t\t\"original-plugin-type\": tiddler[\"plugin-type\"],\n\t\t\t\t\t\t\t\t\t\"module-type\": undefined,\n\t\t\t\t\t\t\t\t\t\"original-module-type\": tiddler[\"module-type\"],\n\t\t\t\t\t\t\t\t\ttags: [\"$:/tags/RemoteAssetInfo\"],\n\t\t\t\t\t\t\t\t\t\"original-tags\": $tw.utils.stringifyList(tiddler.tags || []),\n\t\t\t\t\t\t\t\t\t\"server-url\": event.data.cookies.url\n\t\t\t\t\t\t\t\t},$tw.wiki.getModificationFields()));\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t} else if(event.data.cookies.type === \"save-tiddler\") {\n\t\t\t\t\t\t\tvar tiddler = JSON.parse(event.data.body);\n\t\t\t\t\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler(tiddler));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t},false);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/commands.js": {
"title": "$:/core/modules/startup/commands.js",
"text": "/*\\\ntitle: $:/core/modules/startup/commands.js\ntype: application/javascript\nmodule-type: startup\n\nCommand processing\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"commands\";\nexports.platforms = [\"node\"];\nexports.after = [\"story\"];\nexports.synchronous = false;\n\nexports.startup = function(callback) {\n\t// On the server, start a commander with the command line arguments\n\tvar commander = new $tw.Commander(\n\t\t$tw.boot.argv,\n\t\tfunction(err) {\n\t\t\tif(err) {\n\t\t\t\treturn $tw.utils.error(\"Error: \" + err);\n\t\t\t}\n\t\t\tcallback();\n\t\t},\n\t\t$tw.wiki,\n\t\t{output: process.stdout, error: process.stderr}\n\t);\n\tcommander.execute();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/CSSescape.js": {
"title": "$:/core/modules/startup/CSSescape.js",
"text": "/*\\\ntitle: $:/core/modules/startup/CSSescape.js\ntype: application/javascript\nmodule-type: startup\n\nPolyfill for CSS.escape()\n\n\\*/\n(function(root,factory){\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"css-escape\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n/*! https://mths.be/cssescape v1.5.1 by @mathias | MIT license */\n// https://github.com/umdjs/umd/blob/master/returnExports.js\nexports.startup = factory(root);\n}(typeof global != 'undefined' ? global : this, function(root) {\n\n\tif (root.CSS && root.CSS.escape) {\n\t\treturn;\n\t}\n\n\t// https://drafts.csswg.org/cssom/#serialize-an-identifier\n\tvar cssEscape = function(value) {\n\t\tif (arguments.length == 0) {\n\t\t\tthrow new TypeError('`CSS.escape` requires an argument.');\n\t\t}\n\t\tvar string = String(value);\n\t\tvar length = string.length;\n\t\tvar index = -1;\n\t\tvar codeUnit;\n\t\tvar result = '';\n\t\tvar firstCodeUnit = string.charCodeAt(0);\n\t\twhile (++index < length) {\n\t\t\tcodeUnit = string.charCodeAt(index);\n\t\t\t// Note: there’s no need to special-case astral symbols, surrogate\n\t\t\t// pairs, or lone surrogates.\n\n\t\t\t// If the character is NULL (U+0000), then the REPLACEMENT CHARACTER\n\t\t\t// (U+FFFD).\n\t\t\tif (codeUnit == 0x0000) {\n\t\t\t\tresult += '\\uFFFD';\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// If the character is in the range [\\1-\\1F] (U+0001 to U+001F) or is\n\t\t\t\t// U+007F, […]\n\t\t\t\t(codeUnit >= 0x0001 && codeUnit <= 0x001F) || codeUnit == 0x007F ||\n\t\t\t\t// If the character is the first character and is in the range [0-9]\n\t\t\t\t// (U+0030 to U+0039), […]\n\t\t\t\t(index == 0 && codeUnit >= 0x0030 && codeUnit <= 0x0039) ||\n\t\t\t\t// If the character is the second character and is in the range [0-9]\n\t\t\t\t// (U+0030 to U+0039) and the first character is a `-` (U+002D), […]\n\t\t\t\t(\n\t\t\t\t\tindex == 1 &&\n\t\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 &&\n\t\t\t\t\tfirstCodeUnit == 0x002D\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\n\t\t\t\tresult += '\\\\' + codeUnit.toString(16) + ' ';\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// If the character is the first character and is a `-` (U+002D), and\n\t\t\t\t// there is no second character, […]\n\t\t\t\tindex == 0 &&\n\t\t\t\tlength == 1 &&\n\t\t\t\tcodeUnit == 0x002D\n\t\t\t) {\n\t\t\t\tresult += '\\\\' + string.charAt(index);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// If the character is not handled by one of the above rules and is\n\t\t\t// greater than or equal to U+0080, is `-` (U+002D) or `_` (U+005F), or\n\t\t\t// is in one of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to\n\t\t\t// U+005A), or [a-z] (U+0061 to U+007A), […]\n\t\t\tif (\n\t\t\t\tcodeUnit >= 0x0080 ||\n\t\t\t\tcodeUnit == 0x002D ||\n\t\t\t\tcodeUnit == 0x005F ||\n\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 ||\n\t\t\t\tcodeUnit >= 0x0041 && codeUnit <= 0x005A ||\n\t\t\t\tcodeUnit >= 0x0061 && codeUnit <= 0x007A\n\t\t\t) {\n\t\t\t\t// the character itself\n\t\t\t\tresult += string.charAt(index);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Otherwise, the escaped character.\n\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character\n\t\t\tresult += '\\\\' + string.charAt(index);\n\n\t\t}\n\t\treturn result;\n\t};\n\n\tif (!root.CSS) {\n\t\troot.CSS = {};\n\t}\n\n\troot.CSS.escape = cssEscape;\n\n}));\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/favicon.js": {
"title": "$:/core/modules/startup/favicon.js",
"text": "/*\\\ntitle: $:/core/modules/startup/favicon.js\ntype: application/javascript\nmodule-type: startup\n\nFavicon handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"favicon\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\t\t\n// Favicon tiddler\nvar FAVICON_TITLE = \"$:/favicon.ico\";\n\nexports.startup = function() {\n\t// Set up the favicon\n\tsetFavicon();\n\t// Reset the favicon when the tiddler changes\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,FAVICON_TITLE)) {\n\t\t\tsetFavicon();\n\t\t}\n\t});\n};\n\nfunction setFavicon() {\n\tvar tiddler = $tw.wiki.getTiddler(FAVICON_TITLE);\n\tif(tiddler) {\n\t\tvar faviconLink = document.getElementById(\"faviconLink\");\n\t\tfaviconLink.setAttribute(\"href\",\"data:\" + tiddler.fields.type + \";base64,\" + tiddler.fields.text);\n\t}\n}\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/info.js": {
"title": "$:/core/modules/startup/info.js",
"text": "/*\\\ntitle: $:/core/modules/startup/info.js\ntype: application/javascript\nmodule-type: startup\n\nInitialise $:/info tiddlers via $:/temp/info-plugin pseudo-plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"info\";\nexports.before = [\"startup\"];\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\nvar TITLE_INFO_PLUGIN = \"$:/temp/info-plugin\";\n\nexports.startup = function() {\n\t// Collect up the info tiddlers\n\tvar infoTiddlerFields = {};\n\t// Give each info module a chance to fill in as many info tiddlers as they want\n\t$tw.modules.forEachModuleOfType(\"info\",function(title,moduleExports) {\n\t\tif(moduleExports && moduleExports.getInfoTiddlerFields) {\n\t\t\tvar tiddlerFieldsArray = moduleExports.getInfoTiddlerFields(infoTiddlerFields);\n\t\t\t$tw.utils.each(tiddlerFieldsArray,function(fields) {\n\t\t\t\tif(fields) {\n\t\t\t\t\tinfoTiddlerFields[fields.title] = fields;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Bake the info tiddlers into a plugin. We use the non-standard plugin-type \"info\" because ordinary plugins are only registered asynchronously after being loaded dynamically\n\tvar fields = {\n\t\ttitle: TITLE_INFO_PLUGIN,\n\t\ttype: \"application/json\",\n\t\t\"plugin-type\": \"info\",\n\t\ttext: JSON.stringify({tiddlers: infoTiddlerFields},null,$tw.config.preferences.jsonSpaces)\n\t};\n\t$tw.wiki.addTiddler(new $tw.Tiddler(fields));\n\t$tw.wiki.readPluginInfo([TITLE_INFO_PLUGIN]);\n\t$tw.wiki.registerPluginTiddlers(\"info\");\n\t$tw.wiki.unpackPluginTiddlers();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/load-modules.js": {
"title": "$:/core/modules/startup/load-modules.js",
"text": "/*\\\ntitle: $:/core/modules/startup/load-modules.js\ntype: application/javascript\nmodule-type: startup\n\nLoad core modules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"load-modules\";\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Load modules\n\t$tw.modules.applyMethods(\"utils\",$tw.utils);\n\tif($tw.node) {\n\t\t$tw.modules.applyMethods(\"utils-node\",$tw.utils);\n\t}\n\t$tw.modules.applyMethods(\"global\",$tw);\n\t$tw.modules.applyMethods(\"config\",$tw.config);\n\t$tw.Tiddler.fieldModules = $tw.modules.getModulesByTypeAsHashmap(\"tiddlerfield\");\n\t$tw.modules.applyMethods(\"tiddlermethod\",$tw.Tiddler.prototype);\n\t$tw.modules.applyMethods(\"wikimethod\",$tw.Wiki.prototype);\n\t$tw.wiki.addIndexersToWiki();\n\t$tw.modules.applyMethods(\"tiddlerdeserializer\",$tw.Wiki.tiddlerDeserializerModules);\n\t$tw.macros = $tw.modules.getModulesByTypeAsHashmap(\"macro\");\n\t$tw.wiki.initParsers();\n\t$tw.Commander.initCommands();\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/password.js": {
"title": "$:/core/modules/startup/password.js",
"text": "/*\\\ntitle: $:/core/modules/startup/password.js\ntype: application/javascript\nmodule-type: startup\n\nPassword handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"password\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t$tw.rootWidget.addEventListener(\"tm-set-password\",function(event) {\n\t\t$tw.passwordPrompt.createPrompt({\n\t\t\tserviceName: $tw.language.getString(\"Encryption/PromptSetPassword\"),\n\t\t\tnoUserName: true,\n\t\t\tsubmitText: $tw.language.getString(\"Encryption/SetPassword\"),\n\t\t\tcanCancel: true,\n\t\t\trepeatPassword: true,\n\t\t\tcallback: function(data) {\n\t\t\t\tif(data) {\n\t\t\t\t\t$tw.crypto.setPassword(data.password);\n\t\t\t\t}\n\t\t\t\treturn true; // Get rid of the password prompt\n\t\t\t}\n\t\t});\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-clear-password\",function(event) {\n\t\tif($tw.browser) {\n\t\t\tif(!confirm($tw.language.getString(\"Encryption/ConfirmClearPassword\"))) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t$tw.crypto.setPassword(null);\n\t});\n\t// Ensure that $:/isEncrypted is maintained properly\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,\"$:/isEncrypted\")) {\n\t\t\t$tw.crypto.updateCryptoStateTiddler();\n\t\t}\n\t});\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/plugins.js": {
"title": "$:/core/modules/startup/plugins.js",
"text": "/*\\\ntitle: $:/core/modules/startup/plugins.js\ntype: application/javascript\nmodule-type: startup\n\nStartup logic concerned with managing plugins\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"plugins\";\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\nvar TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE = \"$:/status/RequireReloadDueToPluginChange\";\n\nvar PREFIX_CONFIG_REGISTER_PLUGIN_TYPE = \"$:/config/RegisterPluginType/\";\n\nexports.startup = function() {\n\t$tw.wiki.addTiddler({title: TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE,text: \"no\"});\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tvar changesToProcess = [],\n\t\t\trequireReloadDueToPluginChange = false;\n\t\t$tw.utils.each(Object.keys(changes),function(title) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title),\n\t\t\t\trequiresReload = $tw.wiki.doesPluginRequireReload(title);\n\t\t\tif(requiresReload) {\n\t\t\t\trequireReloadDueToPluginChange = true;\n\t\t\t} else if(tiddler) {\n\t\t\t\tvar pluginType = tiddler.fields[\"plugin-type\"];\n\t\t\t\tif($tw.wiki.getTiddlerText(PREFIX_CONFIG_REGISTER_PLUGIN_TYPE + (tiddler.fields[\"plugin-type\"] || \"\"),\"no\") === \"yes\") {\n\t\t\t\t\tchangesToProcess.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tif(requireReloadDueToPluginChange) {\n\t\t\t$tw.wiki.addTiddler({title: TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE,text: \"yes\"});\n\t\t}\n\t\t// Read or delete the plugin info of the changed tiddlers\n\t\tif(changesToProcess.length > 0) {\n\t\t\tvar changes = $tw.wiki.readPluginInfo(changesToProcess);\n\t\t\tif(changes.modifiedPlugins.length > 0 || changes.deletedPlugins.length > 0) {\n\t\t\t\t// (Re-)register any modified plugins\n\t\t\t\t$tw.wiki.registerPluginTiddlers(null,changes.modifiedPlugins);\n\t\t\t\t// Unregister any deleted plugins\n\t\t\t\t$tw.wiki.unregisterPluginTiddlers(null,changes.deletedPlugins);\n\t\t\t\t// Unpack the shadow tiddlers\n\t\t\t\t$tw.wiki.unpackPluginTiddlers();\n\t\t\t}\n\t\t}\n\t});\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/render.js": {
"title": "$:/core/modules/startup/render.js",
"text": "/*\\\ntitle: $:/core/modules/startup/render.js\ntype: application/javascript\nmodule-type: startup\n\nTitle, stylesheet and page rendering\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"render\";\nexports.platforms = [\"browser\"];\nexports.after = [\"story\"];\nexports.synchronous = true;\n\n// Default story and history lists\nvar PAGE_TITLE_TITLE = \"$:/core/wiki/title\";\nvar PAGE_STYLESHEET_TITLE = \"$:/core/ui/PageStylesheet\";\nvar PAGE_TEMPLATE_TITLE = \"$:/core/ui/PageTemplate\";\n\n// Time (in ms) that we defer refreshing changes to draft tiddlers\nvar DRAFT_TIDDLER_TIMEOUT_TITLE = \"$:/config/Drafts/TypingTimeout\";\nvar THROTTLE_REFRESH_TIMEOUT = 400;\n\nexports.startup = function() {\n\t// Set up the title\n\t$tw.titleWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_TITLE_TITLE,{document: $tw.fakeDocument, parseAsInline: true});\n\t$tw.titleContainer = $tw.fakeDocument.createElement(\"div\");\n\t$tw.titleWidgetNode.render($tw.titleContainer,null);\n\tdocument.title = $tw.titleContainer.textContent;\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.titleWidgetNode.refresh(changes,$tw.titleContainer,null)) {\n\t\t\tdocument.title = $tw.titleContainer.textContent;\n\t\t}\n\t});\n\t// Set up the styles\n\t$tw.styleWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_STYLESHEET_TITLE,{document: $tw.fakeDocument});\n\t$tw.styleContainer = $tw.fakeDocument.createElement(\"style\");\n\t$tw.styleWidgetNode.render($tw.styleContainer,null);\n\t$tw.styleElement = document.createElement(\"style\");\n\t$tw.styleElement.innerHTML = $tw.styleContainer.textContent;\n\tdocument.head.insertBefore($tw.styleElement,document.head.firstChild);\n\t$tw.wiki.addEventListener(\"change\",$tw.perf.report(\"styleRefresh\",function(changes) {\n\t\tif($tw.styleWidgetNode.refresh(changes,$tw.styleContainer,null)) {\n\t\t\t$tw.styleElement.innerHTML = $tw.styleContainer.textContent;\n\t\t}\n\t}));\n\t// Display the $:/core/ui/PageTemplate tiddler to kick off the display\n\t$tw.perf.report(\"mainRender\",function() {\n\t\t$tw.pageWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_TEMPLATE_TITLE,{document: document, parentWidget: $tw.rootWidget});\n\t\t$tw.pageContainer = document.createElement(\"div\");\n\t\t$tw.utils.addClass($tw.pageContainer,\"tc-page-container-wrapper\");\n\t\tdocument.body.insertBefore($tw.pageContainer,document.body.firstChild);\n\t\t$tw.pageWidgetNode.render($tw.pageContainer,null);\n \t\t$tw.hooks.invokeHook(\"th-page-refreshed\");\n\t})();\n\t// Remove any splash screen elements\n\tvar removeList = document.querySelectorAll(\".tc-remove-when-wiki-loaded\");\n\t$tw.utils.each(removeList,function(removeItem) {\n\t\tif(removeItem.parentNode) {\n\t\t\tremoveItem.parentNode.removeChild(removeItem);\n\t\t}\n\t});\n\t// Prepare refresh mechanism\n\tvar deferredChanges = Object.create(null),\n\t\ttimerId;\n\tfunction refresh() {\n\t\t// Process the refresh\n\t\t$tw.hooks.invokeHook(\"th-page-refreshing\");\n\t\t$tw.pageWidgetNode.refresh(deferredChanges);\n\t\tdeferredChanges = Object.create(null);\n\t\t$tw.hooks.invokeHook(\"th-page-refreshed\");\n\t}\n\t// Add the change event handler\n\t$tw.wiki.addEventListener(\"change\",$tw.perf.report(\"mainRefresh\",function(changes) {\n\t\t// Check if only tiddlers that are throttled have changed\n\t\tvar onlyThrottledTiddlersHaveChanged = true;\n\t\tfor(var title in changes) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\tif(!tiddler || !(tiddler.hasField(\"draft.of\") || tiddler.hasField(\"throttle.refresh\"))) {\n\t\t\t\tonlyThrottledTiddlersHaveChanged = false;\n\t\t\t}\n\t\t}\n\t\t// Defer the change if only drafts have changed\n\t\tif(timerId) {\n\t\t\tclearTimeout(timerId);\n\t\t}\n\t\ttimerId = null;\n\t\tif(onlyThrottledTiddlersHaveChanged) {\n\t\t\tvar timeout = parseInt($tw.wiki.getTiddlerText(DRAFT_TIDDLER_TIMEOUT_TITLE,\"\"),10);\n\t\t\tif(isNaN(timeout)) {\n\t\t\t\ttimeout = THROTTLE_REFRESH_TIMEOUT;\n\t\t\t}\n\t\t\ttimerId = setTimeout(refresh,timeout);\n\t\t\t$tw.utils.extend(deferredChanges,changes);\n\t\t} else {\n\t\t\t$tw.utils.extend(deferredChanges,changes);\n\t\t\trefresh();\n\t\t}\n\t}));\n\t// Fix up the link between the root widget and the page container\n\t$tw.rootWidget.domNodes = [$tw.pageContainer];\n\t$tw.rootWidget.children = [$tw.pageWidgetNode];\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/rootwidget.js": {
"title": "$:/core/modules/startup/rootwidget.js",
"text": "/*\\\ntitle: $:/core/modules/startup/rootwidget.js\ntype: application/javascript\nmodule-type: startup\n\nSetup the root widget and the core root widget handlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"rootwidget\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.before = [\"story\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Install the modal message mechanism\n\t$tw.modal = new $tw.utils.Modal($tw.wiki);\n\t$tw.rootWidget.addEventListener(\"tm-modal\",function(event) {\n\t\t$tw.modal.display(event.param,{variables: event.paramObject, event: event});\n\t});\n\t// Install the notification mechanism\n\t$tw.notifier = new $tw.utils.Notifier($tw.wiki);\n\t$tw.rootWidget.addEventListener(\"tm-notify\",function(event) {\n\t\t$tw.notifier.display(event.param,{variables: event.paramObject});\n\t});\n\t// Install the copy-to-clipboard mechanism\n\t$tw.rootWidget.addEventListener(\"tm-copy-to-clipboard\",function(event) {\n\t\t$tw.utils.copyToClipboard(event.param);\n\t});\n\t// Install the tm-focus-selector message\n\t$tw.rootWidget.addEventListener(\"tm-focus-selector\",function(event) {\n\t\tvar selector = event.param || \"\",\n\t\t\telement;\n\t\ttry {\n\t\t\telement = document.querySelector(selector);\n\t\t} catch(e) {\n\t\t\tconsole.log(\"Error in selector: \",selector)\n\t\t}\n\t\tif(element && element.focus) {\n\t\t\telement.focus(event.paramObject);\n\t\t}\n\t});\n\t// Install the scroller\n\t$tw.pageScroller = new $tw.utils.PageScroller();\n\t$tw.rootWidget.addEventListener(\"tm-scroll\",function(event) {\n\t\t$tw.pageScroller.handleEvent(event);\n\t});\n\tvar fullscreen = $tw.utils.getFullScreenApis();\n\tif(fullscreen) {\n\t\t$tw.rootWidget.addEventListener(\"tm-full-screen\",function(event) {\n\t\t\tvar fullScreenDocument = event.event ? event.event.target.ownerDocument : document;\n\t\t\tif(event.param === \"enter\") {\n\t\t\t\tfullScreenDocument.documentElement[fullscreen._requestFullscreen](Element.ALLOW_KEYBOARD_INPUT);\n\t\t\t} else if(event.param === \"exit\") {\n\t\t\t\tfullScreenDocument[fullscreen._exitFullscreen]();\n\t\t\t} else {\n\t\t\t\tif(fullScreenDocument[fullscreen._fullscreenElement]) {\n\t\t\t\t\tfullScreenDocument[fullscreen._exitFullscreen]();\n\t\t\t\t} else {\n\t\t\t\t\tfullScreenDocument.documentElement[fullscreen._requestFullscreen](Element.ALLOW_KEYBOARD_INPUT);\n\t\t\t\t}\t\t\t\t\n\t\t\t}\n\t\t});\n\t}\n\t// If we're being viewed on a data: URI then give instructions for how to save\n\tif(document.location.protocol === \"data:\") {\n\t\t$tw.rootWidget.dispatchEvent({\n\t\t\ttype: \"tm-modal\",\n\t\t\tparam: \"$:/language/Modals/SaveInstructions\"\n\t\t});\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup.js": {
"title": "$:/core/modules/startup.js",
"text": "/*\\\ntitle: $:/core/modules/startup.js\ntype: application/javascript\nmodule-type: startup\n\nMiscellaneous startup logic for both the client and server.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"startup\";\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\n// Set to `true` to enable performance instrumentation\nvar PERFORMANCE_INSTRUMENTATION_CONFIG_TITLE = \"$:/config/Performance/Instrumentation\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.startup = function() {\n\tvar modules,n,m,f;\n\t// Minimal browser detection\n\tif($tw.browser) {\n\t\t$tw.browser.isIE = (/msie|trident/i.test(navigator.userAgent));\n\t\t$tw.browser.isFirefox = !!document.mozFullScreenEnabled;\n\t}\n\t// Platform detection\n\t$tw.platform = {};\n\tif($tw.browser) {\n\t\t$tw.platform.isMac = /Mac/.test(navigator.platform);\n\t\t$tw.platform.isWindows = /win/i.test(navigator.platform);\n\t\t$tw.platform.isLinux = /Linux/i.test(navigator.platform);\n\t} else {\n\t\tswitch(require(\"os\").platform()) {\n\t\t\tcase \"darwin\":\n\t\t\t\t$tw.platform.isMac = true;\n\t\t\t\tbreak;\n\t\t\tcase \"win32\":\n\t\t\t\t$tw.platform.isWindows = true;\n\t\t\t\tbreak;\n\t\t\tcase \"freebsd\":\n\t\t\t\t$tw.platform.isLinux = true;\n\t\t\t\tbreak;\n\t\t\tcase \"linux\":\n\t\t\t\t$tw.platform.isLinux = true;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t// Initialise version\n\t$tw.version = $tw.utils.extractVersionInfo();\n\t// Set up the performance framework\n\t$tw.perf = new $tw.Performance($tw.wiki.getTiddlerText(PERFORMANCE_INSTRUMENTATION_CONFIG_TITLE,\"no\") === \"yes\");\n\t// Create a root widget for attaching event handlers. By using it as the parentWidget for another widget tree, one can reuse the event handlers\n\t$tw.rootWidget = new widget.widget({\n\t\ttype: \"widget\",\n\t\tchildren: []\n\t},{\n\t\twiki: $tw.wiki,\n\t\tdocument: $tw.browser ? document : $tw.fakeDocument\n\t});\n\t// Execute any startup actions\n\tvar executeStartupTiddlers = function(tag) {\n\t\t$tw.utils.each($tw.wiki.filterTiddlers(\"[all[shadows+tiddlers]tag[\" + tag + \"]!has[draft.of]]\"),function(title) {\n\t\t\t$tw.rootWidget.invokeActionString($tw.wiki.getTiddlerText(title),$tw.rootWidget);\n\t\t});\n\t};\n\texecuteStartupTiddlers(\"$:/tags/StartupAction\");\n\tif($tw.browser) {\n\t\texecuteStartupTiddlers(\"$:/tags/StartupAction/Browser\");\t\t\n\t}\n\tif($tw.node) {\n\t\texecuteStartupTiddlers(\"$:/tags/StartupAction/Node\");\t\t\n\t}\n\t// Kick off the language manager and switcher\n\t$tw.language = new $tw.Language();\n\t$tw.languageSwitcher = new $tw.PluginSwitcher({\n\t\twiki: $tw.wiki,\n\t\tpluginType: \"language\",\n\t\tcontrollerTitle: \"$:/language\",\n\t\tdefaultPlugins: [\n\t\t\t\"$:/languages/en-GB\"\n\t\t],\n\t\tonSwitch: function(plugins) {\n\t\t\tif($tw.browser) {\n\t\t\t\tvar pluginTiddler = $tw.wiki.getTiddler(plugins[0]);\n\t\t\t\tif(pluginTiddler) {\n\t\t\t\t\tdocument.documentElement.setAttribute(\"dir\",pluginTiddler.getFieldString(\"text-direction\") || \"auto\");\n\t\t\t\t} else {\n\t\t\t\t\tdocument.documentElement.removeAttribute(\"dir\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\t// Kick off the theme manager\n\t$tw.themeManager = new $tw.PluginSwitcher({\n\t\twiki: $tw.wiki,\n\t\tpluginType: \"theme\",\n\t\tcontrollerTitle: \"$:/theme\",\n\t\tdefaultPlugins: [\n\t\t\t\"$:/themes/tiddlywiki/snowwhite\",\n\t\t\t\"$:/themes/tiddlywiki/vanilla\"\n\t\t]\n\t});\n\t// Kick off the keyboard manager\n\t$tw.keyboardManager = new $tw.KeyboardManager();\n\t// Listen for shortcuts\n\tif($tw.browser) {\n\t\t$tw.utils.addEventListeners(document,[{\n\t\t\tname: \"keydown\",\n\t\t\thandlerObject: $tw.keyboardManager,\n\t\t\thandlerMethod: \"handleKeydownEvent\"\n\t\t}]);\n\t}\n\t// Clear outstanding tiddler store change events to avoid an unnecessary refresh cycle at startup\n\t$tw.wiki.clearTiddlerEventQueue();\n\t// Find a working syncadaptor\n\t$tw.syncadaptor = undefined;\n\t$tw.modules.forEachModuleOfType(\"syncadaptor\",function(title,module) {\n\t\tif(!$tw.syncadaptor && module.adaptorClass) {\n\t\t\t$tw.syncadaptor = new module.adaptorClass({wiki: $tw.wiki});\n\t\t}\n\t});\n\t// Set up the syncer object if we've got a syncadaptor\n\tif($tw.syncadaptor) {\n\t\t$tw.syncer = new $tw.Syncer({wiki: $tw.wiki, syncadaptor: $tw.syncadaptor});\n\t}\n\t// Setup the saver handler\n\t$tw.saverHandler = new $tw.SaverHandler({\n\t\twiki: $tw.wiki,\n\t\tdirtyTracking: !$tw.syncadaptor,\n\t\tpreloadDirty: $tw.boot.preloadDirty || []\n\t});\n\t// Host-specific startup\n\tif($tw.browser) {\n\t\t// Install the popup manager\n\t\t$tw.popup = new $tw.utils.Popup();\n\t\t// Install the animator\n\t\t$tw.anim = new $tw.utils.Animator();\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/story.js": {
"title": "$:/core/modules/startup/story.js",
"text": "/*\\\ntitle: $:/core/modules/startup/story.js\ntype: application/javascript\nmodule-type: startup\n\nLoad core modules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"story\";\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n// Default story and history lists\nvar DEFAULT_STORY_TITLE = \"$:/StoryList\";\nvar DEFAULT_HISTORY_TITLE = \"$:/HistoryList\";\n\n// Default tiddlers\nvar DEFAULT_TIDDLERS_TITLE = \"$:/DefaultTiddlers\";\n\n// Config\nvar CONFIG_UPDATE_ADDRESS_BAR = \"$:/config/Navigation/UpdateAddressBar\"; // Can be \"no\", \"permalink\", \"permaview\"\nvar CONFIG_UPDATE_HISTORY = \"$:/config/Navigation/UpdateHistory\"; // Can be \"yes\" or \"no\"\nvar CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD = \"$:/config/Navigation/Permalinkview/CopyToClipboard\"; // Can be \"yes\" (default) or \"no\"\nvar CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR = \"$:/config/Navigation/Permalinkview/UpdateAddressBar\"; // Can be \"yes\" (default) or \"no\"\n\n\n// Links to help, if there is no param\nvar HELP_OPEN_EXTERNAL_WINDOW = \"http://tiddlywiki.com/#WidgetMessage%3A%20tm-open-external-window\";\n\nexports.startup = function() {\n\t// Open startup tiddlers\n\topenStartupTiddlers({\n\t\tdisableHistory: $tw.boot.disableStartupNavigation\n\t});\n\tif($tw.browser) {\n\t\t// Set up location hash update\n\t\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\t\tif($tw.utils.hop(changes,DEFAULT_STORY_TITLE) || $tw.utils.hop(changes,DEFAULT_HISTORY_TITLE)) {\n\t\t\t\tupdateLocationHash({\n\t\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_UPDATE_ADDRESS_BAR,\"permaview\").trim(),\n\t\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim()\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t\t// Listen for changes to the browser location hash\n\t\twindow.addEventListener(\"hashchange\",function() {\n\t\t\tvar hash = $tw.utils.getLocationHash();\n\t\t\tif(hash !== $tw.locationHash) {\n\t\t\t\t$tw.locationHash = hash;\n\t\t\t\topenStartupTiddlers({defaultToCurrentStory: true});\n\t\t\t}\n\t\t},false);\n\t\t// Listen for the tm-browser-refresh message\n\t\t$tw.rootWidget.addEventListener(\"tm-browser-refresh\",function(event) {\n\t\t\twindow.location.reload(true);\n\t\t});\n\t\t// Listen for tm-open-external-window message\n\t\t$tw.rootWidget.addEventListener(\"tm-open-external-window\",function(event) {\n\t\t\tvar paramObject = event.paramObject || {},\n\t\t\t\tstrUrl = event.param || HELP_OPEN_EXTERNAL_WINDOW,\n\t\t\t\tstrWindowName = paramObject.windowName,\n\t\t\t\tstrWindowFeatures = paramObject.windowFeatures;\n\t\t\twindow.open(strUrl, strWindowName, strWindowFeatures);\n\t\t});\n\t\t// Listen for the tm-print message\n\t\t$tw.rootWidget.addEventListener(\"tm-print\",function(event) {\n\t\t\t(event.event.view || window).print();\n\t\t});\n\t\t// Listen for the tm-home message\n\t\t$tw.rootWidget.addEventListener(\"tm-home\",function(event) {\n\t\t\twindow.location.hash = \"\";\n\t\t\tvar storyFilter = $tw.wiki.getTiddlerText(DEFAULT_TIDDLERS_TITLE),\n\t\t\t\tstoryList = $tw.wiki.filterTiddlers(storyFilter);\n\t\t\t//invoke any hooks that might change the default story list\n\t\t\tstoryList = $tw.hooks.invokeHook(\"th-opening-default-tiddlers-list\",storyList);\n\t\t\t$tw.wiki.addTiddler({title: DEFAULT_STORY_TITLE, text: \"\", list: storyList},$tw.wiki.getModificationFields());\n\t\t\tif(storyList[0]) {\n\t\t\t\t$tw.wiki.addToHistory(storyList[0]);\n\t\t\t}\n\t\t});\n\t\t// Listen for the tm-permalink message\n\t\t$tw.rootWidget.addEventListener(\"tm-permalink\",function(event) {\n\t\t\tupdateLocationHash({\n\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR,\"yes\").trim() === \"yes\" ? \"permalink\" : \"none\",\n\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim(),\n\t\t\t\ttargetTiddler: event.param || event.tiddlerTitle,\n\t\t\t\tcopyToClipboard: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD,\"yes\").trim() === \"yes\" ? \"permalink\" : \"none\"\n\t\t\t});\n\t\t});\n\t\t// Listen for the tm-permaview message\n\t\t$tw.rootWidget.addEventListener(\"tm-permaview\",function(event) {\n\t\t\tupdateLocationHash({\n\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR,\"yes\").trim() === \"yes\" ? \"permaview\" : \"none\",\n\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim(),\n\t\t\t\ttargetTiddler: event.param || event.tiddlerTitle,\n\t\t\t\tcopyToClipboard: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD,\"yes\").trim() === \"yes\" ? \"permaview\" : \"none\"\n\t\t\t});\t\t\t\t\n\t\t});\n\t}\n};\n\n/*\nProcess the location hash to open the specified tiddlers. Options:\ndisableHistory: if true $:/History is NOT updated\ndefaultToCurrentStory: If true, the current story is retained as the default, instead of opening the default tiddlers\n*/\nfunction openStartupTiddlers(options) {\n\toptions = options || {};\n\t// Work out the target tiddler and the story filter. \"null\" means \"unspecified\"\n\tvar target = null,\n\t\tstoryFilter = null;\n\tif($tw.locationHash.length > 1) {\n\t\tvar hash = $tw.locationHash.substr(1),\n\t\t\tsplit = hash.indexOf(\":\");\n\t\tif(split === -1) {\n\t\t\ttarget = decodeURIComponent(hash.trim());\n\t\t} else {\n\t\t\ttarget = decodeURIComponent(hash.substr(0,split).trim());\n\t\t\tstoryFilter = decodeURIComponent(hash.substr(split + 1).trim());\n\t\t}\n\t}\n\t// If the story wasn't specified use the current tiddlers or a blank story\n\tif(storyFilter === null) {\n\t\tif(options.defaultToCurrentStory) {\n\t\t\tvar currStoryList = $tw.wiki.getTiddlerList(DEFAULT_STORY_TITLE);\n\t\t\tstoryFilter = $tw.utils.stringifyList(currStoryList);\n\t\t} else {\n\t\t\tif(target && target !== \"\") {\n\t\t\t\tstoryFilter = \"\";\n\t\t\t} else {\n\t\t\t\tstoryFilter = $tw.wiki.getTiddlerText(DEFAULT_TIDDLERS_TITLE);\n\t\t\t}\n\t\t}\n\t}\n\t// Process the story filter to get the story list\n\tvar storyList = $tw.wiki.filterTiddlers(storyFilter);\n\t// Invoke any hooks that want to change the default story list\n\tstoryList = $tw.hooks.invokeHook(\"th-opening-default-tiddlers-list\",storyList);\n\t// If the target tiddler isn't included then splice it in at the top\n\tif(target && storyList.indexOf(target) === -1) {\n\t\tstoryList.unshift(target);\n\t}\n\t// Save the story list\n\t$tw.wiki.addTiddler({title: DEFAULT_STORY_TITLE, text: \"\", list: storyList},$tw.wiki.getModificationFields());\n\t// Update history\n\tif(!options.disableHistory) {\n\t\t// If a target tiddler was specified add it to the history stack\n\t\tif(target && target !== \"\") {\n\t\t\t// The target tiddler doesn't need double square brackets, but we'll silently remove them if they're present\n\t\t\tif(target.indexOf(\"[[\") === 0 && target.substr(-2) === \"]]\") {\n\t\t\t\ttarget = target.substr(2,target.length - 4);\n\t\t\t}\n\t\t\t$tw.wiki.addToHistory(target);\n\t\t} else if(storyList.length > 0) {\n\t\t\t$tw.wiki.addToHistory(storyList[0]);\n\t\t}\t\t\n\t}\n}\n\n/*\noptions: See below\noptions.updateAddressBar: \"permalink\", \"permaview\" or \"no\" (defaults to \"permaview\")\noptions.updateHistory: \"yes\" or \"no\" (defaults to \"no\")\noptions.copyToClipboard: \"permalink\", \"permaview\" or \"no\" (defaults to \"no\")\noptions.targetTiddler: optional title of target tiddler for permalink\n*/\nfunction updateLocationHash(options) {\n\t// Get the story and the history stack\n\tvar storyList = $tw.wiki.getTiddlerList(DEFAULT_STORY_TITLE),\n\t\thistoryList = $tw.wiki.getTiddlerData(DEFAULT_HISTORY_TITLE,[]),\n\t\ttargetTiddler = \"\";\n\tif(options.targetTiddler) {\n\t\ttargetTiddler = options.targetTiddler;\n\t} else {\n\t\t// The target tiddler is the one at the top of the stack\n\t\tif(historyList.length > 0) {\n\t\t\ttargetTiddler = historyList[historyList.length-1].title;\n\t\t}\n\t\t// Blank the target tiddler if it isn't present in the story\n\t\tif(storyList.indexOf(targetTiddler) === -1) {\n\t\t\ttargetTiddler = \"\";\n\t\t}\n\t}\n\t// Assemble the location hash\n\tswitch(options.updateAddressBar) {\n\t\tcase \"permalink\":\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler);\n\t\t\tbreak;\n\t\tcase \"permaview\":\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler) + \":\" + encodeURIComponent($tw.utils.stringifyList(storyList));\n\t\t\tbreak;\n\t}\n\t// Copy URL to the clipboard\n\tswitch(options.copyToClipboard) {\n\t\tcase \"permalink\":\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getLocationPath() + \"#\" + encodeURIComponent(targetTiddler));\n\t\t\tbreak;\n\t\tcase \"permaview\":\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getLocationPath() + \"#\" + encodeURIComponent(targetTiddler) + \":\" + encodeURIComponent($tw.utils.stringifyList(storyList)));\n\t\t\tbreak;\n\t}\n\t// Only change the location hash if we must, thus avoiding unnecessary onhashchange events\n\tif($tw.utils.getLocationHash() !== $tw.locationHash) {\n\t\tif(options.updateHistory === \"yes\") {\n\t\t\t// Assign the location hash so that history is updated\n\t\t\twindow.location.hash = $tw.locationHash;\n\t\t} else {\n\t\t\t// We use replace so that browser history isn't affected\n\t\t\twindow.location.replace(window.location.toString().split(\"#\")[0] + $tw.locationHash);\n\t\t}\n\t}\n}\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/startup/windows.js": {
"title": "$:/core/modules/startup/windows.js",
"text": "/*\\\ntitle: $:/core/modules/startup/windows.js\ntype: application/javascript\nmodule-type: startup\n\nSetup root widget handlers for the messages concerned with opening external browser windows\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"windows\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n// Global to keep track of open windows (hashmap by title)\nvar windows = {};\n\nexports.startup = function() {\n\t// Handle open window message\n\t$tw.rootWidget.addEventListener(\"tm-open-window\",function(event) {\n\t\t// Get the parameters\n\t\tvar refreshHandler,\n\t\t\ttitle = event.param || event.tiddlerTitle,\n\t\t\tparamObject = event.paramObject || {},\n\t\t\twindowTitle = paramObject.windowTitle || title,\n\t\t\ttemplate = paramObject.template || \"$:/core/templates/single.tiddler.window\",\n\t\t\twidth = paramObject.width || \"700\",\n\t\t\theight = paramObject.height || \"600\",\n\t\t\tvariables = $tw.utils.extend({},paramObject,{currentTiddler: title});\n\t\t// Open the window\n\t\tvar srcWindow,\n\t\t srcDocument;\n\t\t// In case that popup blockers deny opening a new window\n\t\ttry {\n\t\t\tsrcWindow = window.open(\"\",\"external-\" + title,\"scrollbars,width=\" + width + \",height=\" + height),\n\t\t\tsrcDocument = srcWindow.document;\n\t\t}\n\t\tcatch(e) {\n\t\t\treturn;\n\t\t}\n\t\twindows[title] = srcWindow;\n\t\t// Check for reopening the same window\n\t\tif(srcWindow.haveInitialisedWindow) {\n\t\t\treturn;\n\t\t}\n\t\t// Initialise the document\n\t\tsrcDocument.write(\"<html><head></head><body class='tc-body tc-single-tiddler-window'></body></html>\");\n\t\tsrcDocument.close();\n\t\tsrcDocument.title = windowTitle;\n\t\tsrcWindow.addEventListener(\"beforeunload\",function(event) {\n\t\t\tdelete windows[title];\n\t\t\t$tw.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t},false);\n\t\t// Set up the styles\n\t\tvar styleWidgetNode = $tw.wiki.makeTranscludeWidget(\"$:/core/ui/PageStylesheet\",{\n\t\t\t\tdocument: $tw.fakeDocument,\n\t\t\t\tvariables: variables,\n\t\t\t\timportPageMacros: true}),\n\t\t\tstyleContainer = $tw.fakeDocument.createElement(\"style\");\n\t\tstyleWidgetNode.render(styleContainer,null);\n\t\tvar styleElement = srcDocument.createElement(\"style\");\n\t\tstyleElement.innerHTML = styleContainer.textContent;\n\t\tsrcDocument.head.insertBefore(styleElement,srcDocument.head.firstChild);\n\t\t// Render the text of the tiddler\n\t\tvar parser = $tw.wiki.parseTiddler(template),\n\t\t\twidgetNode = $tw.wiki.makeWidget(parser,{document: srcDocument, parentWidget: $tw.rootWidget, variables: variables});\n\t\twidgetNode.render(srcDocument.body,srcDocument.body.firstChild);\n\t\t// Function to handle refreshes\n\t\trefreshHandler = function(changes) {\n\t\t\tif(styleWidgetNode.refresh(changes,styleContainer,null)) {\n\t\t\t\tstyleElement.innerHTML = styleContainer.textContent;\n\t\t\t}\n\t\t\twidgetNode.refresh(changes);\n\t\t};\n\t\t$tw.wiki.addEventListener(\"change\",refreshHandler);\n\t\t// Listen for keyboard shortcuts\n\t\t$tw.utils.addEventListeners(srcDocument,[{\n\t\t\tname: \"keydown\",\n\t\t\thandlerObject: $tw.keyboardManager,\n\t\t\thandlerMethod: \"handleKeydownEvent\"\n\t\t},{\n\t\t\tname: \"click\",\n\t\t\thandlerObject: $tw.popup,\n\t\t\thandlerMethod: \"handleEvent\"\n\t\t}]);\n\t\tsrcWindow.haveInitialisedWindow = true;\n\t});\n\t// Close open windows when unloading main window\n\t$tw.addUnloadTask(function() {\n\t\t$tw.utils.each(windows,function(win) {\n\t\t\twin.close();\n\t\t});\n\t});\n\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/core/modules/story.js": {
"title": "$:/core/modules/story.js",
"text": "/*\\\ntitle: $:/core/modules/story.js\ntype: application/javascript\nmodule-type: global\n\nLightweight object for managing interactions with the story and history lists.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nConstruct Story object with options:\nwiki: reference to wiki object to use to resolve tiddler titles\nstoryTitle: title of story list tiddler\nhistoryTitle: title of history list tiddler\n*/\nfunction Story(options) {\n\toptions = options || {};\n\tthis.wiki = options.wiki || $tw.wiki;\n\tthis.storyTitle = options.storyTitle || \"$:/StoryList\";\n\tthis.historyTitle = options.historyTitle || \"$:/HistoryList\";\n};\n\nStory.prototype.navigateTiddler = function(navigateTo,navigateFromTitle,navigateFromClientRect) {\n\tthis.addToStory(navigateTo,navigateFromTitle);\n\tthis.addToHistory(navigateTo,navigateFromClientRect);\n};\n\nStory.prototype.getStoryList = function() {\n\treturn this.wiki.getTiddlerList(this.storyTitle) || [];\n};\n\nStory.prototype.addToStory = function(navigateTo,navigateFromTitle,options) {\n\toptions = options || {};\n\tvar storyList = this.getStoryList();\n\t// See if the tiddler is already there\n\tvar slot = storyList.indexOf(navigateTo);\n\t// Quit if it already exists in the story river\n\tif(slot >= 0) {\n\t\treturn;\n\t}\n\t// First we try to find the position of the story element we navigated from\n\tvar fromIndex = storyList.indexOf(navigateFromTitle);\n\tif(fromIndex >= 0) {\n\t\t// The tiddler is added from inside the river\n\t\t// Determine where to insert the tiddler; Fallback is \"below\"\n\t\tswitch(options.openLinkFromInsideRiver) {\n\t\t\tcase \"top\":\n\t\t\t\tslot = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"bottom\":\n\t\t\t\tslot = storyList.length;\n\t\t\t\tbreak;\n\t\t\tcase \"above\":\n\t\t\t\tslot = fromIndex;\n\t\t\t\tbreak;\n\t\t\tcase \"below\": // Intentional fall-through\n\t\t\tdefault:\n\t\t\t\tslot = fromIndex + 1;\n\t\t\t\tbreak;\n\t\t}\n\t} else {\n\t\t// The tiddler is opened from outside the river. Determine where to insert the tiddler; default is \"top\"\n\t\tif(options.openLinkFromOutsideRiver === \"bottom\") {\n\t\t\t// Insert at bottom\n\t\t\tslot = storyList.length;\n\t\t} else {\n\t\t\t// Insert at top\n\t\t\tslot = 0;\n\t\t}\n\t}\n\t// Add the tiddler\n\tstoryList.splice(slot,0,navigateTo);\n\t// Save the story\n\tthis.saveStoryList(storyList);\n};\n\nStory.prototype.saveStoryList = function(storyList) {\n\tvar storyTiddler = this.wiki.getTiddler(this.storyTitle);\n\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\tthis.wiki.getCreationFields(),\n\t\t{title: this.storyTitle},\n\t\tstoryTiddler,\n\t\t{list: storyList},\n\t\tthis.wiki.getModificationFields()\n\t));\n};\n\nStory.prototype.addToHistory = function(navigateTo,navigateFromClientRect) {\n\tvar titles = $tw.utils.isArray(navigateTo) ? navigateTo : [navigateTo];\n\t// Add a new record to the top of the history stack\n\tvar historyList = this.wiki.getTiddlerData(this.historyTitle,[]);\n\t$tw.utils.each(titles,function(title) {\n\t\thistoryList.push({title: title, fromPageRect: navigateFromClientRect});\n\t});\n\tthis.wiki.setTiddlerData(this.historyTitle,historyList,{\"current-tiddler\": titles[titles.length-1]});\n};\n\nStory.prototype.storyCloseTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyCloseAllTiddlers = function() {\n// TBD\n};\n\nStory.prototype.storyCloseOtherTiddlers = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyEditTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyDeleteTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storySaveTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyCancelTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyNewTiddler = function(targetTitle) {\n// TBD\n};\n\nexports.Story = Story;\n\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/storyviews/classic.js": {
"title": "$:/core/modules/storyviews/classic.js",
"text": "/*\\\ntitle: $:/core/modules/storyviews/classic.js\ntype: application/javascript\nmodule-type: storyview\n\nViews the story as a linear sequence\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar easing = \"cubic-bezier(0.645, 0.045, 0.355, 1)\"; // From http://easings.net/#easeInOutCubic\n\nvar ClassicStoryView = function(listWidget) {\n\tthis.listWidget = listWidget;\n};\n\nClassicStoryView.prototype.navigateTo = function(historyInfo) {\n\tvar duration = $tw.utils.getAnimationDuration()\n\tvar listElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\tif(duration) {\n\t\t// Scroll the node into view\n\t\tthis.listWidget.dispatchEvent({type: \"tm-scroll\", target: targetElement});\t\n\t} else {\n\t\ttargetElement.scrollIntoView();\n\t}\n};\n\nClassicStoryView.prototype.insert = function(widget) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tif(duration) {\n\t\tvar targetElement = widget.findFirstDomNode();\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(targetElement instanceof Element)) {\n\t\t\treturn;\n\t\t}\n\t\t// Get the current height of the tiddler\n\t\tvar computedStyle = window.getComputedStyle(targetElement),\n\t\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t\t// Reset the margin once the transition is over\n\t\tsetTimeout(function() {\n\t\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t\t{transition: \"none\"},\n\t\t\t\t{marginBottom: \"\"}\n\t\t\t]);\n\t\t},duration);\n\t\t// Set up the initial position of the element\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t\t{opacity: \"0.0\"}\n\t\t]);\n\t\t$tw.utils.forceLayout(targetElement);\n\t\t// Transition to the final position\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t\t{opacity: \"1.0\"}\n\t]);\n\t}\n};\n\nClassicStoryView.prototype.remove = function(widget) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tif(duration) {\n\t\tvar targetElement = widget.findFirstDomNode(),\n\t\t\tremoveElement = function() {\n\t\t\t\twidget.removeChildDomNodes();\n\t\t\t};\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(targetElement instanceof Element)) {\n\t\t\tremoveElement();\n\t\t\treturn;\n\t\t}\n\t\t// Get the current height of the tiddler\n\t\tvar currWidth = targetElement.offsetWidth,\n\t\t\tcomputedStyle = window.getComputedStyle(targetElement),\n\t\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t\t// Remove the dom nodes of the widget at the end of the transition\n\t\tsetTimeout(removeElement,duration);\n\t\t// Animate the closure\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{transform: \"translateX(0px)\"},\n\t\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t\t{opacity: \"1.0\"}\n\t\t]);\n\t\t$tw.utils.forceLayout(targetElement);\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t\t{transform: \"translateX(-\" + currWidth + \"px)\"},\n\t\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t\t{opacity: \"0.0\"}\n\t\t]);\n\t} else {\n\t\twidget.removeChildDomNodes();\n\t}\n};\n\nexports.classic = ClassicStoryView;\n\n})();",
"type": "application/javascript",
"module-type": "storyview"
},
"$:/core/modules/storyviews/pop.js": {
"title": "$:/core/modules/storyviews/pop.js",
"text": "/*\\\ntitle: $:/core/modules/storyviews/pop.js\ntype: application/javascript\nmodule-type: storyview\n\nAnimates list insertions and removals\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar PopStoryView = function(listWidget) {\n\tthis.listWidget = listWidget;\n};\n\nPopStoryView.prototype.navigateTo = function(historyInfo) {\n\tvar listElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Scroll the node into view\n\tthis.listWidget.dispatchEvent({type: \"tm-scroll\", target: targetElement});\n};\n\nPopStoryView.prototype.insert = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Reset once the transition is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{transform: \"none\"}\n\t\t]);\n\t\t$tw.utils.setStyle(widget.document.body,[\n\t\t\t{\"overflow-x\": \"\"}\n\t\t]);\n\t},duration);\n\t// Prevent the page from overscrolling due to the zoom factor\n\t$tw.utils.setStyle(widget.document.body,[\n\t\t{\"overflow-x\": \"hidden\"}\n\t]);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{transform: \"scale(2)\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t// Transition to the final position\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{transform: \"scale(1)\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n};\n\nPopStoryView.prototype.remove = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\tremoveElement = function() {\n\t\t\tif(targetElement && targetElement.parentNode) {\n\t\t\t\twidget.removeChildDomNodes();\n\t\t\t}\n\t\t};\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Remove the element at the end of the transition\n\tsetTimeout(removeElement,duration);\n\t// Animate the closure\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{transform: \"scale(1)\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{transform: \"scale(0.1)\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n};\n\nexports.pop = PopStoryView;\n\n})();\n",
"type": "application/javascript",
"module-type": "storyview"
},
"$:/core/modules/storyviews/zoomin.js": {
"title": "$:/core/modules/storyviews/zoomin.js",
"text": "/*\\\ntitle: $:/core/modules/storyviews/zoomin.js\ntype: application/javascript\nmodule-type: storyview\n\nZooms between individual tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar easing = \"cubic-bezier(0.645, 0.045, 0.355, 1)\"; // From http://easings.net/#easeInOutCubic\n\nvar ZoominListView = function(listWidget) {\n\tvar self = this;\n\tthis.listWidget = listWidget;\n\t// Get the index of the tiddler that is at the top of the history\n\tvar history = this.listWidget.wiki.getTiddlerDataCached(this.listWidget.historyTitle,[]),\n\t\ttargetTiddler;\n\tif(history.length > 0) {\n\t\ttargetTiddler = history[history.length-1].title;\n\t}\n\t// Make all the tiddlers position absolute, and hide all but the top (or first) one\n\t$tw.utils.each(this.listWidget.children,function(itemWidget,index) {\n\t\tvar domNode = itemWidget.findFirstDomNode();\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(domNode instanceof Element)) {\n\t\t\treturn;\n\t\t}\n\t\tif((targetTiddler && targetTiddler !== itemWidget.parseTreeNode.itemTitle) || (!targetTiddler && index)) {\n\t\t\tdomNode.style.display = \"none\";\n\t\t} else {\n\t\t\tself.currentTiddlerDomNode = domNode;\n\t\t}\n\t\t$tw.utils.addClass(domNode,\"tc-storyview-zoomin-tiddler\");\n\t});\n};\n\nZoominListView.prototype.navigateTo = function(historyInfo) {\n\tvar duration = $tw.utils.getAnimationDuration(),\n\t\tlistElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Make the new tiddler be position absolute and visible so that we can measure it\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"block\"},\n\t\t{transformOrigin: \"0 0\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{transition: \"none\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n\t// Get the position of the source node, or use the centre of the window as the source position\n\tvar sourceBounds = historyInfo.fromPageRect || {\n\t\t\tleft: window.innerWidth/2 - 2,\n\t\t\ttop: window.innerHeight/2 - 2,\n\t\t\twidth: window.innerWidth/8,\n\t\t\theight: window.innerHeight/8\n\t\t};\n\t// Try to find the title node in the target tiddler\n\tvar titleDomNode = findTitleDomNode(listItemWidget) || listItemWidget.findFirstDomNode(),\n\t\tzoomBounds = titleDomNode.getBoundingClientRect();\n\t// Compute the transform for the target tiddler to make the title lie over the source rectange\n\tvar targetBounds = targetElement.getBoundingClientRect(),\n\t\tscale = sourceBounds.width / zoomBounds.width,\n\t\tx = sourceBounds.left - targetBounds.left - (zoomBounds.left - targetBounds.left) * scale,\n\t\ty = sourceBounds.top - targetBounds.top - (zoomBounds.top - targetBounds.top) * scale;\n\t// Transform the target tiddler to its starting position\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transform: \"translateX(\" + x + \"px) translateY(\" + y + \"px) scale(\" + scale + \")\"}\n\t]);\n\t// Force layout\n\t$tw.utils.forceLayout(targetElement);\n\t// Apply the ending transitions with a timeout to ensure that the previously applied transformations are applied first\n\tvar self = this,\n\t\tprevCurrentTiddler = this.currentTiddlerDomNode;\n\tthis.currentTiddlerDomNode = targetElement;\n\t// Transform the target tiddler to its natural size\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t{opacity: \"1.0\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{zIndex: \"500\"},\n\t]);\n\t// Transform the previous tiddler out of the way and then hide it\n\tif(prevCurrentTiddler && prevCurrentTiddler !== targetElement) {\n\t\tscale = zoomBounds.width / sourceBounds.width;\n\t\tx = zoomBounds.left - targetBounds.left - (sourceBounds.left - targetBounds.left) * scale;\n\t\ty = zoomBounds.top - targetBounds.top - (sourceBounds.top - targetBounds.top) * scale;\n\t\t$tw.utils.setStyle(prevCurrentTiddler,[\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t\t{opacity: \"0.0\"},\n\t\t\t{transformOrigin: \"0 0\"},\n\t\t\t{transform: \"translateX(\" + x + \"px) translateY(\" + y + \"px) scale(\" + scale + \")\"},\n\t\t\t{zIndex: \"0\"}\n\t\t]);\n\t\t// Hide the tiddler when the transition has finished\n\t\tsetTimeout(function() {\n\t\t\tif(self.currentTiddlerDomNode !== prevCurrentTiddler) {\n\t\t\t\tprevCurrentTiddler.style.display = \"none\";\n\t\t\t}\n\t\t},duration);\n\t}\n\t// Scroll the target into view\n//\t$tw.pageScroller.scrollIntoView(targetElement);\n};\n\n/*\nFind the first child DOM node of a widget that has the class \"tc-title\"\n*/\nfunction findTitleDomNode(widget,targetClass) {\n\ttargetClass = targetClass || \"tc-title\";\n\tvar domNode = widget.findFirstDomNode();\n\tif(domNode && domNode.querySelector) {\n\t\treturn domNode.querySelector(\".\" + targetClass);\n\t}\n\treturn null;\n}\n\nZoominListView.prototype.insert = function(widget) {\n\tvar targetElement = widget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Make the newly inserted node position absolute and hidden\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"none\"}\n\t]);\n};\n\nZoominListView.prototype.remove = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\tremoveElement = function() {\n\t\t\twidget.removeChildDomNodes();\n\t\t};\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Abandon if hidden\n\tif(targetElement.style.display != \"block\" ) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Set up the tiddler that is being closed\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"block\"},\n\t\t{transformOrigin: \"50% 50%\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{transition: \"none\"},\n\t\t{zIndex: \"0\"}\n\t]);\n\t// We'll move back to the previous or next element in the story\n\tvar toWidget = widget.previousSibling();\n\tif(!toWidget) {\n\t\ttoWidget = widget.nextSibling();\n\t}\n\tvar toWidgetDomNode = toWidget && toWidget.findFirstDomNode();\n\t// Set up the tiddler we're moving back in\n\tif(toWidgetDomNode) {\n\t\t$tw.utils.addClass(toWidgetDomNode,\"tc-storyview-zoomin-tiddler\");\n\t\t$tw.utils.setStyle(toWidgetDomNode,[\n\t\t\t{display: \"block\"},\n\t\t\t{transformOrigin: \"50% 50%\"},\n\t\t\t{transform: \"translateX(0px) translateY(0px) scale(10)\"},\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t\t{opacity: \"0\"},\n\t\t\t{zIndex: \"500\"}\n\t\t]);\n\t\tthis.currentTiddlerDomNode = toWidgetDomNode;\n\t}\n\t// Animate them both\n\t// Force layout\n\t$tw.utils.forceLayout(this.listWidget.parentDomNode);\n\t// First, the tiddler we're closing\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transformOrigin: \"50% 50%\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(0.1)\"},\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t{opacity: \"0\"},\n\t\t{zIndex: \"0\"}\n\t]);\n\tsetTimeout(removeElement,duration);\n\t// Now the tiddler we're going back to\n\tif(toWidgetDomNode) {\n\t\t$tw.utils.setStyle(toWidgetDomNode,[\n\t\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t\t{opacity: \"1\"}\n\t\t]);\n\t}\n\treturn true; // Indicate that we'll delete the DOM node\n};\n\nexports.zoomin = ZoominListView;\n\n})();\n",
"type": "application/javascript",
"module-type": "storyview"
},
"$:/core/modules/syncer.js": {
"title": "$:/core/modules/syncer.js",
"text": "/*\\\ntitle: $:/core/modules/syncer.js\ntype: application/javascript\nmodule-type: global\n\nThe syncer tracks changes to the store and synchronises them to a remote data store represented as a \"sync adaptor\"\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nDefaults\n*/\nSyncer.prototype.titleIsLoggedIn = \"$:/status/IsLoggedIn\";\nSyncer.prototype.titleIsAnonymous = \"$:/status/IsAnonymous\";\nSyncer.prototype.titleIsReadOnly = \"$:/status/IsReadOnly\";\nSyncer.prototype.titleUserName = \"$:/status/UserName\";\nSyncer.prototype.titleSyncFilter = \"$:/config/SyncFilter\";\nSyncer.prototype.titleSyncPollingInterval = \"$:/config/SyncPollingInterval\";\nSyncer.prototype.titleSyncDisableLazyLoading = \"$:/config/SyncDisableLazyLoading\";\nSyncer.prototype.titleSavedNotification = \"$:/language/Notifications/Save/Done\";\nSyncer.prototype.titleSyncThrottleInterval = \"$:/config/SyncThrottleInterval\";\nSyncer.prototype.taskTimerInterval = 1 * 1000; // Interval for sync timer\nSyncer.prototype.throttleInterval = 1 * 1000; // Defer saving tiddlers if they've changed in the last 1s...\nSyncer.prototype.errorRetryInterval = 5 * 1000; // Interval to retry after an error\nSyncer.prototype.fallbackInterval = 10 * 1000; // Unless the task is older than 10s\nSyncer.prototype.pollTimerInterval = 60 * 1000; // Interval for polling for changes from the adaptor\n\n/*\nInstantiate the syncer with the following options:\nsyncadaptor: reference to syncadaptor to be used\nwiki: wiki to be synced\n*/\nfunction Syncer(options) {\n\tvar self = this;\n\tthis.wiki = options.wiki;\n\t// Save parameters\n\tthis.syncadaptor = options.syncadaptor;\n\tthis.disableUI = !!options.disableUI;\n\tthis.titleIsLoggedIn = options.titleIsLoggedIn || this.titleIsLoggedIn;\n\tthis.titleUserName = options.titleUserName || this.titleUserName;\n\tthis.titleSyncFilter = options.titleSyncFilter || this.titleSyncFilter;\n\tthis.titleSavedNotification = options.titleSavedNotification || this.titleSavedNotification;\n\tthis.taskTimerInterval = options.taskTimerInterval || this.taskTimerInterval;\n\tthis.throttleInterval = options.throttleInterval || parseInt(this.wiki.getTiddlerText(this.titleSyncThrottleInterval,\"\"),10) || this.throttleInterval;\n\tthis.errorRetryInterval = options.errorRetryInterval || this.errorRetryInterval;\n\tthis.fallbackInterval = options.fallbackInterval || this.fallbackInterval;\n\tthis.pollTimerInterval = options.pollTimerInterval || parseInt(this.wiki.getTiddlerText(this.titleSyncPollingInterval,\"\"),10) || this.pollTimerInterval;\n\tthis.logging = \"logging\" in options ? options.logging : true;\n\t// Make a logger\n\tthis.logger = new $tw.utils.Logger(\"syncer\" + ($tw.browser ? \"-browser\" : \"\") + ($tw.node ? \"-server\" : \"\") + (this.syncadaptor.name ? (\"-\" + this.syncadaptor.name) : \"\"),{\n\t\tcolour: \"cyan\",\n\t\tenable: this.logging,\n\t\tsaveHistory: true\n\t});\n\t// Make another logger for connection errors\n\tthis.loggerConnection = new $tw.utils.Logger(\"syncer\" + ($tw.browser ? \"-browser\" : \"\") + ($tw.node ? \"-server\" : \"\") + (this.syncadaptor.name ? (\"-\" + this.syncadaptor.name) : \"\") + \"-connection\",{\n\t\tcolour: \"cyan\",\n\t\tenable: this.logging\n\t});\n\t// Ask the syncadaptor to use the main logger\n\tif(this.syncadaptor.setLoggerSaveBuffer) {\n\t\tthis.syncadaptor.setLoggerSaveBuffer(this.logger);\n\t}\n\t// Compile the dirty tiddler filter\n\tthis.filterFn = this.wiki.compileFilter(this.wiki.getTiddlerText(this.titleSyncFilter));\n\t// Record information for known tiddlers\n\tthis.readTiddlerInfo();\n\tthis.titlesToBeLoaded = {}; // Hashmap of titles of tiddlers that need loading from the server\n\tthis.titlesHaveBeenLazyLoaded = {}; // Hashmap of titles of tiddlers that have already been lazily loaded from the server\n\t// Timers\n\tthis.taskTimerId = null; // Timer for task dispatch\n\tthis.pollTimerId = null; // Timer for polling server\n\t// Number of outstanding requests\n\tthis.numTasksInProgress = 0;\n\t// Listen out for changes to tiddlers\n\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\t// Filter the changes to just include ones that are being synced\n\t\tvar filteredChanges = self.getSyncedTiddlers(function(callback) {\n\t\t\t$tw.utils.each(changes,function(change,title) {\n\t\t\t\tvar tiddler = self.wiki.tiddlerExists(title) && self.wiki.getTiddler(title);\n\t\t\t\tcallback(tiddler,title);\n\t\t\t});\n\t\t});\n\t\tif(filteredChanges.length > 0) {\n\t\t\tself.processTaskQueue();\n\t\t} else {\n\t\t\t// Look for deletions of tiddlers we're already syncing\t\n\t\t\tvar outstandingDeletion = false\n\t\t\t$tw.utils.each(changes,function(change,title,object) {\n\t\t\t\tif(change.deleted && $tw.utils.hop(self.tiddlerInfo,title)) {\n\t\t\t\t\toutstandingDeletion = true;\n\t\t\t\t}\n\t\t\t});\n\t\t\tif(outstandingDeletion) {\n\t\t\t\tself.processTaskQueue();\n\t\t\t}\n\t\t}\n\t});\n\t// Browser event handlers\n\tif($tw.browser && !this.disableUI) {\n\t\t// Set up our beforeunload handler\n\t\t$tw.addUnloadTask(function(event) {\n\t\t\tvar confirmationMessage;\n\t\t\tif(self.isDirty()) {\n\t\t\t\tconfirmationMessage = $tw.language.getString(\"UnsavedChangesWarning\");\n\t\t\t\tevent.returnValue = confirmationMessage; // Gecko\n\t\t\t}\n\t\t\treturn confirmationMessage;\n\t\t});\n\t\t// Listen out for login/logout/refresh events in the browser\n\t\t$tw.rootWidget.addEventListener(\"tm-login\",function() {\n\t\t\tself.handleLoginEvent();\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-logout\",function() {\n\t\t\tself.handleLogoutEvent();\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-server-refresh\",function() {\n\t\t\tself.handleRefreshEvent();\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-copy-syncer-logs-to-clipboard\",function() {\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getSystemInfo() + \"\\n\\nLog:\\n\" + self.logger.getBuffer());\n\t\t});\n\t}\n\t// Listen out for lazyLoad events\n\tif(!this.disableUI && $tw.wiki.getTiddlerText(this.titleSyncDisableLazyLoading) !== \"yes\") {\n\t\tthis.wiki.addEventListener(\"lazyLoad\",function(title) {\n\t\t\tself.handleLazyLoadEvent(title);\n\t\t});\t\t\n\t}\n\t// Get the login status\n\tthis.getStatus(function(err,isLoggedIn) {\n\t\t// Do a sync from the server\n\t\tself.syncFromServer();\n\t});\n}\n\n/*\nShow a generic network error alert\n*/\nSyncer.prototype.displayError = function(msg,err) {\n\tif(err === ($tw.language.getString(\"Error/XMLHttpRequest\") + \": 0\")) {\n\t\tthis.loggerConnection.alert($tw.language.getString(\"Error/NetworkErrorAlert\"));\n\t\tthis.logger.log(msg + \":\",err);\n\t} else {\n\t\tthis.logger.alert(msg + \":\",err);\n\t}\n};\n\n/*\nReturn an array of the tiddler titles that are subjected to syncing\n*/\nSyncer.prototype.getSyncedTiddlers = function(source) {\n\treturn this.filterFn.call(this.wiki,source);\n};\n\n/*\nReturn an array of the tiddler titles that are subjected to syncing\n*/\nSyncer.prototype.getTiddlerRevision = function(title) {\n\tif(this.syncadaptor && this.syncadaptor.getTiddlerRevision) {\n\t\treturn this.syncadaptor.getTiddlerRevision(title);\n\t} else {\n\t\treturn this.wiki.getTiddler(title).fields.revision;\t\n\t} \n};\n\n/*\nRead (or re-read) the latest tiddler info from the store\n*/\nSyncer.prototype.readTiddlerInfo = function() {\n\t// Hashmap by title of {revision:,changeCount:,adaptorInfo:}\n\t// \"revision\" is the revision of the tiddler last seen on the server, and \"changecount\" is the corresponding local changecount\n\tthis.tiddlerInfo = {};\n\t// Record information for known tiddlers\n\tvar self = this,\n\t\ttiddlers = this.getSyncedTiddlers();\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.wiki.tiddlerExists(title) && self.wiki.getTiddler(title);\n\t\tself.tiddlerInfo[title] = {\n\t\t\trevision: self.getTiddlerRevision(title),\n\t\t\tadaptorInfo: self.syncadaptor && self.syncadaptor.getTiddlerInfo(tiddler),\n\t\t\tchangeCount: self.wiki.getChangeCount(title)\n\t\t};\n\t});\n};\n\n/*\nChecks whether the wiki is dirty (ie the window shouldn't be closed)\n*/\nSyncer.prototype.isDirty = function() {\n\tthis.logger.log(\"Checking dirty status\");\n\t// Check tiddlers that are in the store and included in the filter function\n\tvar titles = this.getSyncedTiddlers();\n\tfor(var index=0; index<titles.length; index++) {\n\t\tvar title = titles[index],\n\t\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\tif(this.wiki.tiddlerExists(title)) {\n\t\t\tif(tiddlerInfo) {\n\t\t\t\t// If the tiddler is known on the server and has been modified locally then it needs to be saved to the server\n\t\t\t\tif($tw.wiki.getChangeCount(title) > tiddlerInfo.changeCount) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// If the tiddler isn't known on the server then it needs to be saved to the server\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\t// Check tiddlers that are known from the server but not currently in the store\n\ttitles = Object.keys(this.tiddlerInfo);\n\tfor(index=0; index<titles.length; index++) {\n\t\tif(!this.wiki.tiddlerExists(titles[index])) {\n\t\t\t// There must be a pending delete\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nUpdate the document body with the class \"tc-dirty\" if the wiki has unsaved/unsynced changes\n*/\nSyncer.prototype.updateDirtyStatus = function() {\n\tif($tw.browser && !this.disableUI) {\n\t\tvar dirty = this.isDirty();\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",dirty);\n\t\tif(!dirty) {\n\t\t\tthis.loggerConnection.clearAlerts();\n\t\t}\n\t}\n};\n\n/*\nSave an incoming tiddler in the store, and updates the associated tiddlerInfo\n*/\nSyncer.prototype.storeTiddler = function(tiddlerFields) {\n\t// Save the tiddler\n\tvar tiddler = new $tw.Tiddler(tiddlerFields);\n\tthis.wiki.addTiddler(tiddler);\n\t// Save the tiddler revision and changeCount details\n\tthis.tiddlerInfo[tiddlerFields.title] = {\n\t\trevision: this.getTiddlerRevision(tiddlerFields.title),\n\t\tadaptorInfo: this.syncadaptor.getTiddlerInfo(tiddler),\n\t\tchangeCount: this.wiki.getChangeCount(tiddlerFields.title)\n\t};\n};\n\nSyncer.prototype.getStatus = function(callback) {\n\tvar self = this;\n\t// Check if the adaptor supports getStatus()\n\tif(this.syncadaptor && this.syncadaptor.getStatus) {\n\t\t// Mark us as not logged in\n\t\tthis.wiki.addTiddler({title: this.titleIsLoggedIn,text: \"no\"});\n\t\t// Get login status\n\t\tthis.syncadaptor.getStatus(function(err,isLoggedIn,username,isReadOnly,isAnonymous) {\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert(err);\n\t\t\t} else {\n\t\t\t\t// Set the various status tiddlers\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsReadOnly,text: isReadOnly ? \"yes\" : \"no\"});\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsAnonymous,text: isAnonymous ? \"yes\" : \"no\"});\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsLoggedIn,text: isLoggedIn ? \"yes\" : \"no\"});\n\t\t\t\tif(isLoggedIn) {\n\t\t\t\t\tself.wiki.addTiddler({title: self.titleUserName,text: username || \"\"});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Invoke the callback\n\t\t\tif(callback) {\n\t\t\t\tcallback(err,isLoggedIn,username);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tcallback(null,true,\"UNAUTHENTICATED\");\n\t}\n};\n\n/*\nSynchronise from the server by reading the skinny tiddler list and queuing up loads for any tiddlers that we don't already have up to date\n*/\nSyncer.prototype.syncFromServer = function() {\n\tvar self = this,\n\t\tcancelNextSync = function() {\n\t\t\tif(self.pollTimerId) {\n\t\t\t\tclearTimeout(self.pollTimerId);\n\t\t\t\tself.pollTimerId = null;\n\t\t\t}\n\t\t},\n\t\ttriggerNextSync = function() {\n\t\t\tself.pollTimerId = setTimeout(function() {\n\t\t\t\tself.pollTimerId = null;\n\t\t\t\tself.syncFromServer.call(self);\n\t\t\t},self.pollTimerInterval);\n\t\t};\n\tif(this.syncadaptor && this.syncadaptor.getUpdatedTiddlers) {\n\t\tthis.logger.log(\"Retrieving updated tiddler list\");\n\t\tcancelNextSync();\n\t\tthis.syncadaptor.getUpdatedTiddlers(self,function(err,updates) {\n\t\t\ttriggerNextSync();\n\t\t\tif(err) {\n\t\t\t\tself.displayError($tw.language.getString(\"Error/RetrievingSkinny\"),err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif(updates) {\n\t\t\t\t$tw.utils.each(updates.modifications,function(title) {\n\t\t\t\t\tself.titlesToBeLoaded[title] = true;\n\t\t\t\t});\n\t\t\t\t$tw.utils.each(updates.deletions,function(title) {\n\t\t\t\t\tdelete self.tiddlerInfo[title];\n\t\t\t\t\tself.logger.log(\"Deleting tiddler missing from server:\",title);\n\t\t\t\t\tself.wiki.deleteTiddler(title);\n\t\t\t\t});\n\t\t\t\tif(updates.modifications.length > 0 || updates.deletions.length > 0) {\n\t\t\t\t\tself.processTaskQueue();\n\t\t\t\t}\t\t\t\t\n\t\t\t}\n\t\t});\n\t} else if(this.syncadaptor && this.syncadaptor.getSkinnyTiddlers) {\n\t\tthis.logger.log(\"Retrieving skinny tiddler list\");\n\t\tcancelNextSync();\n\t\tthis.syncadaptor.getSkinnyTiddlers(function(err,tiddlers) {\n\t\t\ttriggerNextSync();\n\t\t\t// Check for errors\n\t\t\tif(err) {\n\t\t\t\tself.displayError($tw.language.getString(\"Error/RetrievingSkinny\"),err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Keep track of which tiddlers we already know about have been reported this time\n\t\t\tvar previousTitles = Object.keys(self.tiddlerInfo);\n\t\t\t// Process each incoming tiddler\n\t\t\tfor(var t=0; t<tiddlers.length; t++) {\n\t\t\t\t// Get the incoming tiddler fields, and the existing tiddler\n\t\t\t\tvar tiddlerFields = tiddlers[t],\n\t\t\t\t\tincomingRevision = tiddlerFields.revision + \"\",\n\t\t\t\t\ttiddler = self.wiki.tiddlerExists(tiddlerFields.title) && self.wiki.getTiddler(tiddlerFields.title),\n\t\t\t\t\ttiddlerInfo = self.tiddlerInfo[tiddlerFields.title],\n\t\t\t\t\tcurrRevision = tiddlerInfo ? tiddlerInfo.revision : null,\n\t\t\t\t\tindexInPreviousTitles = previousTitles.indexOf(tiddlerFields.title);\n\t\t\t\tif(indexInPreviousTitles !== -1) {\n\t\t\t\t\tpreviousTitles.splice(indexInPreviousTitles,1);\n\t\t\t\t}\n\t\t\t\t// Ignore the incoming tiddler if it's the same as the revision we've already got\n\t\t\t\tif(currRevision !== incomingRevision) {\n\t\t\t\t\t// Only load the skinny version if we don't already have a fat version of the tiddler\n\t\t\t\t\tif(!tiddler || tiddler.fields.text === undefined) {\n\t\t\t\t\t\tself.storeTiddler(tiddlerFields);\n\t\t\t\t\t}\n\t\t\t\t\t// Do a full load of this tiddler\n\t\t\t\t\tself.titlesToBeLoaded[tiddlerFields.title] = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Delete any tiddlers that were previously reported but missing this time\n\t\t\t$tw.utils.each(previousTitles,function(title) {\n\t\t\t\tdelete self.tiddlerInfo[title];\n\t\t\t\tself.logger.log(\"Deleting tiddler missing from server:\",title);\n\t\t\t\tself.wiki.deleteTiddler(title);\n\t\t\t});\n\t\t\tself.processTaskQueue();\n\t\t});\n\t}\n};\n\n/*\nForce load a tiddler from the server\n*/\nSyncer.prototype.enqueueLoadTiddler = function(title) {\n\tthis.titlesToBeLoaded[title] = true;\n\tthis.processTaskQueue();\n};\n\n/*\nLazily load a skinny tiddler if we can\n*/\nSyncer.prototype.handleLazyLoadEvent = function(title) {\n\t// Ignore if the syncadaptor doesn't handle it\n\tif(!this.syncadaptor.supportsLazyLoading) {\n\t\treturn;\n\t}\n\t// Don't lazy load the same tiddler twice\n\tif(!this.titlesHaveBeenLazyLoaded[title]) {\n\t\t// Don't lazy load if the tiddler isn't included in the sync filter\n\t\tif(this.getSyncedTiddlers().indexOf(title) !== -1) {\n\t\t\t// Mark the tiddler as needing loading, and having already been lazily loaded\n\t\t\tthis.titlesToBeLoaded[title] = true;\n\t\t\tthis.titlesHaveBeenLazyLoaded[title] = true;\n\t\t}\n\t}\n};\n\n/*\nDispay a password prompt and allow the user to login\n*/\nSyncer.prototype.handleLoginEvent = function() {\n\tvar self = this;\n\tthis.getStatus(function(err,isLoggedIn,username) {\n\t\tif(!err && !isLoggedIn) {\n\t\t\t$tw.passwordPrompt.createPrompt({\n\t\t\t\tserviceName: $tw.language.getString(\"LoginToTiddlySpace\"),\n\t\t\t\tcallback: function(data) {\n\t\t\t\t\tself.login(data.username,data.password,function(err,isLoggedIn) {\n\t\t\t\t\t\tself.syncFromServer();\n\t\t\t\t\t});\n\t\t\t\t\treturn true; // Get rid of the password prompt\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n};\n\n/*\nAttempt to login to TiddlyWeb.\n\tusername: username\n\tpassword: password\n\tcallback: invoked with arguments (err,isLoggedIn)\n*/\nSyncer.prototype.login = function(username,password,callback) {\n\tthis.logger.log(\"Attempting to login as\",username);\n\tvar self = this;\n\tif(this.syncadaptor.login) {\n\t\tthis.syncadaptor.login(username,password,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tself.getStatus(function(err,isLoggedIn,username) {\n\t\t\t\tif(callback) {\n\t\t\t\t\tcallback(err,isLoggedIn);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t} else {\n\t\tcallback(null,true);\n\t}\n};\n\n/*\nAttempt to log out of TiddlyWeb\n*/\nSyncer.prototype.handleLogoutEvent = function() {\n\tthis.logger.log(\"Attempting to logout\");\n\tvar self = this;\n\tif(this.syncadaptor.logout) {\n\t\tthis.syncadaptor.logout(function(err) {\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert(err);\n\t\t\t} else {\n\t\t\t\tself.getStatus();\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nImmediately refresh from the server\n*/\nSyncer.prototype.handleRefreshEvent = function() {\n\tthis.syncFromServer();\n};\n\n/*\nProcess the next task\n*/\nSyncer.prototype.processTaskQueue = function() {\n\tvar self = this;\n\t// Only process a task if the sync adaptor is fully initialised and we're not already performing\n\t// a task. If we are already performing a task then we'll dispatch the next one when it completes\n\tif((!this.syncadaptor.isReady || this.syncadaptor.isReady()) && this.numTasksInProgress === 0) {\n\t\t// Choose the next task to perform\n\t\tvar task = this.chooseNextTask();\n\t\t// Perform the task if we had one\n\t\tif(typeof task === \"object\" && task !== null) {\n\t\t\tthis.numTasksInProgress += 1;\n\t\t\ttask.run(function(err) {\n\t\t\t\tself.numTasksInProgress -= 1;\n\t\t\t\tif(err) {\n\t\t\t\t\tself.displayError(\"Sync error while processing \" + task.type + \" of '\" + task.title + \"'\",err);\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t\tself.triggerTimeout(self.errorRetryInterval);\n\t\t\t\t} else {\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t\t// Process the next task\n\t\t\t\t\tself.processTaskQueue.call(self);\t\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t// No task is ready so update the status\n\t\t\tthis.updateDirtyStatus();\n\t\t\t// And trigger a timeout if there is a pending task\n\t\t\tif(task === true) {\n\t\t\t\tthis.triggerTimeout();\t\t\t\t\n\t\t\t}\n\t\t}\n\t} else {\n\t\tthis.updateDirtyStatus();\t\t\n\t}\n};\n\nSyncer.prototype.triggerTimeout = function(interval) {\n\tvar self = this;\n\tif(!this.taskTimerId) {\n\t\tthis.taskTimerId = setTimeout(function() {\n\t\t\tself.taskTimerId = null;\n\t\t\tself.processTaskQueue.call(self);\n\t\t},interval || self.taskTimerInterval);\n\t}\n};\n\n/*\nChoose the next sync task. We prioritise saves, then deletes, then loads from the server\n\nReturns either a task object, null if there's no upcoming tasks, or the boolean true if there are pending tasks that aren't yet due\n*/\nSyncer.prototype.chooseNextTask = function() {\n\tvar thresholdLastSaved = (new Date()) - this.throttleInterval,\n\t\thavePending = null;\n\t// First we look for tiddlers that have been modified locally and need saving back to the server\n\tvar titles = this.getSyncedTiddlers();\n\tfor(var index=0; index<titles.length; index++) {\n\t\tvar title = titles[index],\n\t\t\ttiddler = this.wiki.tiddlerExists(title) && this.wiki.getTiddler(title),\n\t\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\tif(tiddler) {\n\t\t\t// If the tiddler is not known on the server, or has been modified locally no more recently than the threshold then it needs to be saved to the server\n\t\t\tvar hasChanged = !tiddlerInfo || $tw.wiki.getChangeCount(title) > tiddlerInfo.changeCount,\n\t\t\t\tisReadyToSave = !tiddlerInfo || !tiddlerInfo.timestampLastSaved || tiddlerInfo.timestampLastSaved < thresholdLastSaved;\n\t\t\tif(hasChanged) {\n\t\t\t\tif(isReadyToSave) {\n\t\t\t\t\treturn new SaveTiddlerTask(this,title); \t\t\t\t\t\n\t\t\t\t} else {\n\t\t\t\t\thavePending = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Second, we check tiddlers that are known from the server but not currently in the store, and so need deleting on the server\n\ttitles = Object.keys(this.tiddlerInfo);\n\tfor(index=0; index<titles.length; index++) {\n\t\ttitle = titles[index];\n\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\ttiddler = this.wiki.tiddlerExists(title) && this.wiki.getTiddler(title);\n\t\tif(!tiddler) {\n\t\t\treturn new DeleteTiddlerTask(this,title);\n\t\t}\n\t}\n\t// Check for tiddlers that need loading\n\ttitle = Object.keys(this.titlesToBeLoaded)[0];\n\tif(title) {\n\t\tdelete this.titlesToBeLoaded[title];\n\t\treturn new LoadTiddlerTask(this,title);\n\t}\n\t// No tasks are ready\n\treturn havePending;\n};\n\nfunction SaveTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"save\";\n}\n\nSaveTiddlerTask.prototype.run = function(callback) {\n\tvar self = this,\n\t\tchangeCount = this.syncer.wiki.getChangeCount(this.title),\n\t\ttiddler = this.syncer.wiki.tiddlerExists(this.title) && this.syncer.wiki.getTiddler(this.title);\n\tthis.syncer.logger.log(\"Dispatching 'save' task:\",this.title);\n\tif(tiddler) {\n\t\tthis.syncer.syncadaptor.saveTiddler(tiddler,function(err,adaptorInfo,revision) {\n\t\t\t// If there's an error, exit without changing any internal state\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\t// Adjust the info stored about this tiddler\n\t\t\tself.syncer.tiddlerInfo[self.title] = {\n\t\t\t\tchangeCount: changeCount,\n\t\t\t\tadaptorInfo: adaptorInfo,\n\t\t\t\trevision: revision,\n\t\t\t\ttimestampLastSaved: new Date()\n\t\t\t};\n\t\t\t// Invoke the callback\n\t\t\tcallback(null);\n\t\t});\n\t} else {\n\t\tthis.syncer.logger.log(\" Not Dispatching 'save' task:\",this.title,\"tiddler does not exist\");\n\t\t$tw.utils.nextTick(callback(null));\n\t}\n};\n\nfunction DeleteTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"delete\";\n}\n\nDeleteTiddlerTask.prototype.run = function(callback) {\n\tvar self = this;\n\tthis.syncer.logger.log(\"Dispatching 'delete' task:\",this.title);\n\tthis.syncer.syncadaptor.deleteTiddler(this.title,function(err) {\n\t\t// If there's an error, exit without changing any internal state\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\t// Remove the info stored about this tiddler\n\t\tdelete self.syncer.tiddlerInfo[self.title];\n\t\t// Invoke the callback\n\t\tcallback(null);\n\t},{\n\t\ttiddlerInfo: self.syncer.tiddlerInfo[this.title]\n\t});\n};\n\nfunction LoadTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"load\";\n}\n\nLoadTiddlerTask.prototype.run = function(callback) {\n\tvar self = this;\n\tthis.syncer.logger.log(\"Dispatching 'load' task:\",this.title);\n\tthis.syncer.syncadaptor.loadTiddler(this.title,function(err,tiddlerFields) {\n\t\t// If there's an error, exit without changing any internal state\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\t// Update the info stored about this tiddler\n\t\tif(tiddlerFields) {\n\t\t\tself.syncer.storeTiddler(tiddlerFields);\n\t\t}\n\t\t// Invoke the callback\n\t\tcallback(null);\n\t});\n};\n\nexports.Syncer = Syncer;\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/tiddler.js": {
"title": "$:/core/modules/tiddler.js",
"text": "/*\\\ntitle: $:/core/modules/tiddler.js\ntype: application/javascript\nmodule-type: tiddlermethod\n\nExtension methods for the $tw.Tiddler object (constructor and methods required at boot time are in boot/boot.js)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.hasTag = function(tag) {\n\treturn this.fields.tags && this.fields.tags.indexOf(tag) !== -1;\n};\n\nexports.isPlugin = function() {\n\treturn this.fields.type === \"application/json\" && this.hasField(\"plugin-type\");\n};\n\nexports.isDraft = function() {\n\treturn this.hasField(\"draft.of\");\n};\n\nexports.getFieldString = function(field) {\n\tvar value = this.fields[field];\n\t// Check for a missing field\n\tif(value === undefined || value === null) {\n\t\treturn \"\";\n\t}\n\t// Parse the field with the associated module (if any)\n\tvar fieldModule = $tw.Tiddler.fieldModules[field];\n\tif(fieldModule && fieldModule.stringify) {\n\t\treturn fieldModule.stringify.call(this,value);\n\t} else {\n\t\treturn value.toString();\n\t}\n};\n\n/*\nGet the value of a field as a list\n*/\nexports.getFieldList = function(field) {\n\tvar value = this.fields[field];\n\t// Check for a missing field\n\tif(value === undefined || value === null) {\n\t\treturn [];\n\t}\n\treturn $tw.utils.parseStringArray(value);\n};\n\n/*\nGet all the fields as a hashmap of strings. Options:\n\texclude: an array of field names to exclude\n*/\nexports.getFieldStrings = function(options) {\n\toptions = options || {};\n\tvar exclude = options.exclude || [];\n\tvar fields = {};\n\tfor(var field in this.fields) {\n\t\tif($tw.utils.hop(this.fields,field)) {\n\t\t\tif(exclude.indexOf(field) === -1) {\n\t\t\t\tfields[field] = this.getFieldString(field);\n\t\t\t}\n\t\t}\n\t}\n\treturn fields;\n};\n\n/*\nGet all the fields as a name:value block. Options:\n\texclude: an array of field names to exclude\n*/\nexports.getFieldStringBlock = function(options) {\n\toptions = options || {};\n\tvar exclude = options.exclude || [],\n\t\tfields = Object.keys(this.fields).sort(),\n\t\tresult = [];\n\tfor(var t=0; t<fields.length; t++) {\n\t\tvar field = fields[t];\n\t\tif(exclude.indexOf(field) === -1) {\n\t\t\tresult.push(field + \": \" + this.getFieldString(field));\n\t\t}\n\t}\n\treturn result.join(\"\\n\");\n};\n\nexports.getFieldDay = function(field) {\n\tif(this.cache && this.cache.day && $tw.utils.hop(this.cache.day,field) ) {\n\t\treturn this.cache.day[field];\n\t}\n\tvar day = \"\";\n\tif(this.fields[field]) {\n\t\tday = (new Date($tw.utils.parseDate(this.fields[field]))).setHours(0,0,0,0);\n\t}\n\tthis.cache.day = this.cache.day || {};\n\tthis.cache.day[field] = day;\n\treturn day;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "tiddlermethod"
},
"$:/core/modules/upgraders/plugins.js": {
"title": "$:/core/modules/upgraders/plugins.js",
"text": "/*\\\ntitle: $:/core/modules/upgraders/plugins.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that checks that plugins are newer than any already installed version\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar UPGRADE_LIBRARY_TITLE = \"$:/UpgradeLibrary\";\n\nvar BLOCKED_PLUGINS = {\n\t\"$:/themes/tiddlywiki/stickytitles\": {\n\t\tversions: [\"*\"]\n\t},\n\t\"$:/plugins/tiddlywiki/fullscreen\": {\n\t\tversions: [\"*\"]\n\t}\n};\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {},\n\t\tupgradeLibrary,\n\t\tgetLibraryTiddler = function(title) {\n\t\t\tif(!upgradeLibrary) {\n\t\t\t\tupgradeLibrary = wiki.getTiddlerData(UPGRADE_LIBRARY_TITLE,{});\n\t\t\t\tupgradeLibrary.tiddlers = upgradeLibrary.tiddlers || {};\n\t\t\t}\n\t\t\treturn upgradeLibrary.tiddlers[title];\n\t\t};\n\n\t// Go through all the incoming tiddlers\n\t$tw.utils.each(titles,function(title) {\n\t\tvar incomingTiddler = tiddlers[title];\n\t\t// Check if we're dealing with a plugin\n\t\tif(incomingTiddler && incomingTiddler[\"plugin-type\"]) {\n\t\t\t// Check whether the plugin contains JS modules\n\t\t\tvar requiresReload = $tw.wiki.doesPluginInfoRequireReload(JSON.parse(incomingTiddler.text)) ? ($tw.wiki.getTiddlerText(\"$:/language/ControlPanel/Plugins/PluginWillRequireReload\") + \" \") : \"\";\n\t\t\tmessages[title] = requiresReload;\n\t\t\tif(incomingTiddler.version) {\n\t\t\t\t// Upgrade the incoming plugin if it is in the upgrade library\n\t\t\t\tvar libraryTiddler = getLibraryTiddler(title);\n\t\t\t\tif(libraryTiddler && libraryTiddler[\"plugin-type\"] && libraryTiddler.version) {\n\t\t\t\t\ttiddlers[title] = libraryTiddler;\n\t\t\t\t\tmessages[title] = requiresReload + $tw.language.getString(\"Import/Upgrader/Plugins/Upgraded\",{variables: {incoming: incomingTiddler.version, upgraded: libraryTiddler.version}});\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t// Suppress the incoming plugin if it is older than the currently installed one\n\t\t\t\tvar existingTiddler = wiki.getTiddler(title);\n\t\t\t\tif(existingTiddler && existingTiddler.hasField(\"plugin-type\") && existingTiddler.hasField(\"version\")) {\n\t\t\t\t\t// Reject the incoming plugin by blanking all its fields\n\t\t\t\t\tif($tw.utils.checkVersions(existingTiddler.fields.version,incomingTiddler.version)) {\n\t\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\t\tmessages[title] = requiresReload + $tw.language.getString(\"Import/Upgrader/Plugins/Suppressed/Version\",{variables: {incoming: incomingTiddler.version, existing: existingTiddler.fields.version}});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Check whether the plugin is on the blocked list\n\t\t\tvar blockInfo = BLOCKED_PLUGINS[title];\n\t\t\tif(blockInfo) {\n\t\t\t\tif(blockInfo.versions.indexOf(\"*\") !== -1 || (incomingTiddler.version && blockInfo.versions.indexOf(incomingTiddler.version) !== -1)) {\n\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/Plugins/Suppressed/Incompatible\");\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn messages;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "upgrader"
},
"$:/core/modules/upgraders/system.js": {
"title": "$:/core/modules/upgraders/system.js",
"text": "/*\\\ntitle: $:/core/modules/upgraders/system.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that suppresses certain system tiddlers that shouldn't be imported\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DONT_IMPORT_LIST = [\"$:/StoryList\",\"$:/HistoryList\"],\n\tDONT_IMPORT_PREFIX_LIST = [\"$:/temp/\",\"$:/state/\",\"$:/Import\"],\n\tWARN_IMPORT_PREFIX_LIST = [\"$:/core/modules/\"];\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {},\n\t\tshowAlert = false;\n\t// Check for tiddlers on our list\n\t$tw.utils.each(titles,function(title) {\n\t\tif(DONT_IMPORT_LIST.indexOf(title) !== -1) {\n\t\t\ttiddlers[title] = Object.create(null);\n\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/System/Suppressed\");\n\t\t} else {\n\t\t\tfor(var t=0; t<DONT_IMPORT_PREFIX_LIST.length; t++) {\n\t\t\t\tvar prefix = DONT_IMPORT_PREFIX_LIST[t];\n\t\t\t\tif(title.substr(0,prefix.length) === prefix) {\n\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/State/Suppressed\");\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor(var t=0; t<WARN_IMPORT_PREFIX_LIST.length; t++) {\n\t\t\t\tvar prefix = WARN_IMPORT_PREFIX_LIST[t];\n\t\t\t\tif(title.substr(0,prefix.length) === prefix && wiki.isShadowTiddler(title)) {\n\t\t\t\t\tshowAlert = true;\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/System/Warning\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\tif(showAlert) {\n\t\tvar logger = new $tw.utils.Logger(\"import\");\n\t\tlogger.alert($tw.language.getString(\"Import/Upgrader/System/Alert\"));\n\t}\n\treturn messages;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "upgrader"
},
"$:/core/modules/upgraders/themetweaks.js": {
"title": "$:/core/modules/upgraders/themetweaks.js",
"text": "/*\\\ntitle: $:/core/modules/upgraders/themetweaks.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that handles the change in theme tweak storage introduced in 5.0.14-beta.\n\nPreviously, theme tweaks were stored in two data tiddlers:\n\n* $:/themes/tiddlywiki/vanilla/metrics\n* $:/themes/tiddlywiki/vanilla/settings\n\nNow, each tweak is stored in its own separate tiddler.\n\nThis upgrader copies any values from the old format to the new. The old data tiddlers are not deleted in case they have been used to store additional indexes.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar MAPPINGS = {\n\t\"$:/themes/tiddlywiki/vanilla/metrics\": {\n\t\t\"fontsize\": \"$:/themes/tiddlywiki/vanilla/metrics/fontsize\",\n\t\t\"lineheight\": \"$:/themes/tiddlywiki/vanilla/metrics/lineheight\",\n\t\t\"storyleft\": \"$:/themes/tiddlywiki/vanilla/metrics/storyleft\",\n\t\t\"storytop\": \"$:/themes/tiddlywiki/vanilla/metrics/storytop\",\n\t\t\"storyright\": \"$:/themes/tiddlywiki/vanilla/metrics/storyright\",\n\t\t\"storywidth\": \"$:/themes/tiddlywiki/vanilla/metrics/storywidth\",\n\t\t\"tiddlerwidth\": \"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\"\n\t},\n\t\"$:/themes/tiddlywiki/vanilla/settings\": {\n\t\t\"fontfamily\": \"$:/themes/tiddlywiki/vanilla/settings/fontfamily\"\n\t}\n};\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {};\n\t// Check for tiddlers on our list\n\t$tw.utils.each(titles,function(title) {\n\t\tvar mapping = MAPPINGS[title];\n\t\tif(mapping) {\n\t\t\tvar tiddler = new $tw.Tiddler(tiddlers[title]),\n\t\t\t\ttiddlerData = wiki.getTiddlerDataCached(tiddler,{});\n\t\t\tfor(var index in mapping) {\n\t\t\t\tvar mappedTitle = mapping[index];\n\t\t\t\tif(!tiddlers[mappedTitle] || tiddlers[mappedTitle].title !== mappedTitle) {\n\t\t\t\t\ttiddlers[mappedTitle] = {\n\t\t\t\t\t\ttitle: mappedTitle,\n\t\t\t\t\t\ttext: tiddlerData[index]\n\t\t\t\t\t};\n\t\t\t\t\tmessages[mappedTitle] = $tw.language.getString(\"Import/Upgrader/ThemeTweaks/Created\",{variables: {\n\t\t\t\t\t\tfrom: title + \"##\" + index\n\t\t\t\t\t}});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn messages;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "upgrader"
},
"$:/core/modules/utils/base64-utf8/base64-utf8.module.js": {
"text": "(function(){// From https://gist.github.com/Nijikokun/5192472\n//\n// UTF8 Module\n//\n// Cleaner and modularized utf-8 encoding and decoding library for javascript.\n//\n// copyright: MIT\n// author: Nijiko Yonskai, @nijikokun, nijikokun@gmail.com\n!function(r,e,o,t){void 0!==o.module&&o.module.exports?o.module.exports=e.apply(o):void 0!==o.define&&\"function\"===o.define&&o.define.amd?define(\"utf8\",[],e):o.utf8=e.apply(o)}(0,function(){return{encode:function(r){if(\"string\"!=typeof r)return r;r=r.replace(/\\r\\n/g,\"\\n\");for(var e,o=\"\",t=0;t<r.length;t++)(e=r.charCodeAt(t))<128?o+=String.fromCharCode(e):e>127&&e<2048?(o+=String.fromCharCode(e>>6|192),o+=String.fromCharCode(63&e|128)):(o+=String.fromCharCode(e>>12|224),o+=String.fromCharCode(e>>6&63|128),o+=String.fromCharCode(63&e|128));return o},decode:function(r){if(\"string\"!=typeof r)return r;for(var e=\"\",o=0,t=0;o<r.length;)(t=r.charCodeAt(o))<128?(e+=String.fromCharCode(t),o++):t>191&&t<224?(e+=String.fromCharCode((31&t)<<6|63&r.charCodeAt(o+1)),o+=2):(e+=String.fromCharCode((15&t)<<12|(63&r.charCodeAt(o+1))<<6|63&r.charCodeAt(o+2)),o+=3);return e}}},this),function(r,e,o,t){if(void 0!==o.module&&o.module.exports){if(t&&o.require)for(var n=0;n<t.length;n++)o[t[n]]=o.require(t[n]);o.module.exports=e.apply(o)}else void 0!==o.define&&\"function\"===o.define&&o.define.amd?define(\"base64\",t||[],e):o.base64=e.apply(o)}(0,function(r){var e=r||this.utf8,o=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";return{encode:function(r){if(void 0===e)throw{error:\"MissingMethod\",message:\"UTF8 Module is missing.\"};if(\"string\"!=typeof r)return r;r=e.encode(r);for(var t,n,i,d,f,a,h,c=\"\",u=0;u<r.length;)d=(t=r.charCodeAt(u++))>>2,f=(3&t)<<4|(n=r.charCodeAt(u++))>>4,a=(15&n)<<2|(i=r.charCodeAt(u++))>>6,h=63&i,isNaN(n)?a=h=64:isNaN(i)&&(h=64),c+=o.charAt(d)+o.charAt(f)+o.charAt(a)+o.charAt(h);return c},decode:function(r){if(void 0===e)throw{error:\"MissingMethod\",message:\"UTF8 Module is missing.\"};if(\"string\"!=typeof r)return r;r=r.replace(/[^A-Za-z0-9\\+\\/\\=]/g,\"\");for(var t,n,i,d,f,a,h=\"\",c=0;c<r.length;)t=o.indexOf(r.charAt(c++))<<2|(d=o.indexOf(r.charAt(c++)))>>4,n=(15&d)<<4|(f=o.indexOf(r.charAt(c++)))>>2,i=(3&f)<<6|(a=o.indexOf(r.charAt(c++))),h+=String.fromCharCode(t),64!=f&&(h+=String.fromCharCode(n)),64!=a&&(h+=String.fromCharCode(i));return e.decode(h)}}},this,[\"utf8\"]);}).call(exports);",
"type": "application/javascript",
"title": "$:/core/modules/utils/base64-utf8/base64-utf8.module.js",
"module-type": "library"
},
"$:/core/modules/utils/crypto.js": {
"title": "$:/core/modules/utils/crypto.js",
"text": "/*\\\ntitle: $:/core/modules/utils/crypto.js\ntype: application/javascript\nmodule-type: utils\n\nUtility functions related to crypto.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nLook for an encrypted store area in the text of a TiddlyWiki file\n*/\nexports.extractEncryptedStoreArea = function(text) {\n\tvar encryptedStoreAreaStartMarker = \"<pre id=\\\"encryptedStoreArea\\\" type=\\\"text/plain\\\" style=\\\"display:none;\\\">\",\n\t\tencryptedStoreAreaStart = text.indexOf(encryptedStoreAreaStartMarker);\n\tif(encryptedStoreAreaStart !== -1) {\n\t\tvar encryptedStoreAreaEnd = text.indexOf(\"</pre>\",encryptedStoreAreaStart);\n\t\tif(encryptedStoreAreaEnd !== -1) {\n\t\t\treturn $tw.utils.htmlDecode(text.substring(encryptedStoreAreaStart + encryptedStoreAreaStartMarker.length,encryptedStoreAreaEnd-1));\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nAttempt to extract the tiddlers from an encrypted store area using the current password. If the password is not provided then the password in the password store will be used\n*/\nexports.decryptStoreArea = function(encryptedStoreArea,password) {\n\tvar decryptedText = $tw.crypto.decrypt(encryptedStoreArea,password);\n\tif(decryptedText) {\n\t\tvar json = JSON.parse(decryptedText),\n\t\t\ttiddlers = [];\n\t\tfor(var title in json) {\n\t\t\tif(title !== \"$:/isEncrypted\") {\n\t\t\t\ttiddlers.push(json[title]);\n\t\t\t}\n\t\t}\n\t\treturn tiddlers;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n\n/*\nAttempt to extract the tiddlers from an encrypted store area using the current password. If that fails, the user is prompted for a password.\nencryptedStoreArea: text of the TiddlyWiki encrypted store area\ncallback: function(tiddlers) called with the array of decrypted tiddlers\n\nThe following configuration settings are supported:\n\n$tw.config.usePasswordVault: causes any password entered by the user to also be put into the system password vault\n*/\nexports.decryptStoreAreaInteractive = function(encryptedStoreArea,callback,options) {\n\t// Try to decrypt with the current password\n\tvar tiddlers = $tw.utils.decryptStoreArea(encryptedStoreArea);\n\tif(tiddlers) {\n\t\tcallback(tiddlers);\n\t} else {\n\t\t// Prompt for a new password and keep trying\n\t\t$tw.passwordPrompt.createPrompt({\n\t\t\tserviceName: \"Enter a password to decrypt the imported TiddlyWiki\",\n\t\t\tnoUserName: true,\n\t\t\tcanCancel: true,\n\t\t\tsubmitText: \"Decrypt\",\n\t\t\tcallback: function(data) {\n\t\t\t\t// Exit if the user cancelled\n\t\t\t\tif(!data) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\t// Attempt to decrypt the tiddlers\n\t\t\t\tvar tiddlers = $tw.utils.decryptStoreArea(encryptedStoreArea,data.password);\n\t\t\t\tif(tiddlers) {\n\t\t\t\t\tif($tw.config.usePasswordVault) {\n\t\t\t\t\t\t$tw.crypto.setPassword(data.password);\n\t\t\t\t\t}\n\t\t\t\t\tcallback(tiddlers);\n\t\t\t\t\t// Exit and remove the password prompt\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\t// We didn't decrypt everything, so continue to prompt for password\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/csv.js": {
"title": "$:/core/modules/utils/csv.js",
"text": "/*\\\ntitle: $:/core/modules/utils/csv.js\ntype: application/javascript\nmodule-type: utils\n\nA barebones CSV parser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParse a CSV string with a header row and return an array of hashmaps.\n*/\nexports.parseCsvStringWithHeader = function(text,options) {\n\toptions = options || {};\n\tvar separator = options.separator || \",\",\n\t\trows = text.split(/\\r?\\n/mg).map(function(row) {\n\t\t\treturn $tw.utils.trim(row);\n\t\t}).filter(function(row) {\n\t\t\treturn row !== \"\";\n\t\t});\n\tif(rows.length < 1) {\n\t\treturn \"Missing header row\";\n\t}\n\tvar headings = rows[0].split(separator),\n\t\tresults = [];\n\tfor(var row=1; row<rows.length; row++) {\n\t\tvar columns = rows[row].split(separator),\n\t\t\tcolumnResult = Object.create(null);\n\t\tif(columns.length !== headings.length) {\n\t\t\treturn \"Malformed CSV row '\" + rows[row] + \"'\";\n\t\t}\n\t\tfor(var column=0; column<columns.length; column++) {\n\t\t\tvar columnName = headings[column];\n\t\t\tcolumnResult[columnName] = $tw.utils.trim(columns[column] || \"\");\n\t\t}\n\t\tresults.push(columnResult);\t\t\t\n\t}\n\treturn results;\n}\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/diff-match-patch/diff_match_patch.js": {
"text": "(function(){function diff_match_patch(){this.Diff_Timeout=1;this.Diff_EditCost=4;this.Match_Threshold=.5;this.Match_Distance=1E3;this.Patch_DeleteThreshold=.5;this.Patch_Margin=4;this.Match_MaxBits=32}var DIFF_DELETE=-1,DIFF_INSERT=1,DIFF_EQUAL=0;\ndiff_match_patch.prototype.diff_main=function(a,b,c,d){\"undefined\"==typeof d&&(d=0>=this.Diff_Timeout?Number.MAX_VALUE:(new Date).getTime()+1E3*this.Diff_Timeout);if(null==a||null==b)throw Error(\"Null input. (diff_main)\");if(a==b)return a?[[DIFF_EQUAL,a]]:[];\"undefined\"==typeof c&&(c=!0);var e=c,f=this.diff_commonPrefix(a,b);c=a.substring(0,f);a=a.substring(f);b=b.substring(f);f=this.diff_commonSuffix(a,b);var g=a.substring(a.length-f);a=a.substring(0,a.length-f);b=b.substring(0,b.length-f);a=this.diff_compute_(a,\nb,e,d);c&&a.unshift([DIFF_EQUAL,c]);g&&a.push([DIFF_EQUAL,g]);this.diff_cleanupMerge(a);return a};\ndiff_match_patch.prototype.diff_compute_=function(a,b,c,d){if(!a)return[[DIFF_INSERT,b]];if(!b)return[[DIFF_DELETE,a]];var e=a.length>b.length?a:b,f=a.length>b.length?b:a,g=e.indexOf(f);return-1!=g?(c=[[DIFF_INSERT,e.substring(0,g)],[DIFF_EQUAL,f],[DIFF_INSERT,e.substring(g+f.length)]],a.length>b.length&&(c[0][0]=c[2][0]=DIFF_DELETE),c):1==f.length?[[DIFF_DELETE,a],[DIFF_INSERT,b]]:(e=this.diff_halfMatch_(a,b))?(b=e[1],f=e[3],a=e[4],e=this.diff_main(e[0],e[2],c,d),c=this.diff_main(b,f,c,d),e.concat([[DIFF_EQUAL,\na]],c)):c&&100<a.length&&100<b.length?this.diff_lineMode_(a,b,d):this.diff_bisect_(a,b,d)};\ndiff_match_patch.prototype.diff_lineMode_=function(a,b,c){var d=this.diff_linesToChars_(a,b);a=d.chars1;b=d.chars2;d=d.lineArray;a=this.diff_main(a,b,!1,c);this.diff_charsToLines_(a,d);this.diff_cleanupSemantic(a);a.push([DIFF_EQUAL,\"\"]);for(var e=d=b=0,f=\"\",g=\"\";b<a.length;){switch(a[b][0]){case DIFF_INSERT:e++;g+=a[b][1];break;case DIFF_DELETE:d++;f+=a[b][1];break;case DIFF_EQUAL:if(1<=d&&1<=e){a.splice(b-d-e,d+e);b=b-d-e;d=this.diff_main(f,g,!1,c);for(e=d.length-1;0<=e;e--)a.splice(b,0,d[e]);b+=\nd.length}d=e=0;g=f=\"\"}b++}a.pop();return a};\ndiff_match_patch.prototype.diff_bisect_=function(a,b,c){for(var d=a.length,e=b.length,f=Math.ceil((d+e)/2),g=2*f,h=Array(g),l=Array(g),k=0;k<g;k++)h[k]=-1,l[k]=-1;h[f+1]=0;l[f+1]=0;k=d-e;for(var m=0!=k%2,p=0,x=0,w=0,q=0,t=0;t<f&&!((new Date).getTime()>c);t++){for(var v=-t+p;v<=t-x;v+=2){var n=f+v;var r=v==-t||v!=t&&h[n-1]<h[n+1]?h[n+1]:h[n-1]+1;for(var y=r-v;r<d&&y<e&&a.charAt(r)==b.charAt(y);)r++,y++;h[n]=r;if(r>d)x+=2;else if(y>e)p+=2;else if(m&&(n=f+k-v,0<=n&&n<g&&-1!=l[n])){var u=d-l[n];if(r>=\nu)return this.diff_bisectSplit_(a,b,r,y,c)}}for(v=-t+w;v<=t-q;v+=2){n=f+v;u=v==-t||v!=t&&l[n-1]<l[n+1]?l[n+1]:l[n-1]+1;for(r=u-v;u<d&&r<e&&a.charAt(d-u-1)==b.charAt(e-r-1);)u++,r++;l[n]=u;if(u>d)q+=2;else if(r>e)w+=2;else if(!m&&(n=f+k-v,0<=n&&n<g&&-1!=h[n]&&(r=h[n],y=f+r-n,u=d-u,r>=u)))return this.diff_bisectSplit_(a,b,r,y,c)}}return[[DIFF_DELETE,a],[DIFF_INSERT,b]]};\ndiff_match_patch.prototype.diff_bisectSplit_=function(a,b,c,d,e){var f=a.substring(0,c),g=b.substring(0,d);a=a.substring(c);b=b.substring(d);f=this.diff_main(f,g,!1,e);e=this.diff_main(a,b,!1,e);return f.concat(e)};\ndiff_match_patch.prototype.diff_linesToChars_=function(a,b){function c(a){for(var b=\"\",c=0,f=-1,g=d.length;f<a.length-1;){f=a.indexOf(\"\\n\",c);-1==f&&(f=a.length-1);var h=a.substring(c,f+1);c=f+1;(e.hasOwnProperty?e.hasOwnProperty(h):void 0!==e[h])?b+=String.fromCharCode(e[h]):(b+=String.fromCharCode(g),e[h]=g,d[g++]=h)}return b}var d=[],e={};d[0]=\"\";var f=c(a),g=c(b);return{chars1:f,chars2:g,lineArray:d}};\ndiff_match_patch.prototype.diff_charsToLines_=function(a,b){for(var c=0;c<a.length;c++){for(var d=a[c][1],e=[],f=0;f<d.length;f++)e[f]=b[d.charCodeAt(f)];a[c][1]=e.join(\"\")}};diff_match_patch.prototype.diff_commonPrefix=function(a,b){if(!a||!b||a.charAt(0)!=b.charAt(0))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(f,e)==b.substring(f,e)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e};\ndiff_match_patch.prototype.diff_commonSuffix=function(a,b){if(!a||!b||a.charAt(a.length-1)!=b.charAt(b.length-1))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(a.length-e,a.length-f)==b.substring(b.length-e,b.length-f)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e};\ndiff_match_patch.prototype.diff_commonOverlap_=function(a,b){var c=a.length,d=b.length;if(0==c||0==d)return 0;c>d?a=a.substring(c-d):c<d&&(b=b.substring(0,c));c=Math.min(c,d);if(a==b)return c;d=0;for(var e=1;;){var f=a.substring(c-e);f=b.indexOf(f);if(-1==f)return d;e+=f;if(0==f||a.substring(c-e)==b.substring(0,e))d=e,e++}};\ndiff_match_patch.prototype.diff_halfMatch_=function(a,b){function c(a,b,c){for(var d=a.substring(c,c+Math.floor(a.length/4)),e=-1,g=\"\",h,k,l,m;-1!=(e=b.indexOf(d,e+1));){var p=f.diff_commonPrefix(a.substring(c),b.substring(e)),u=f.diff_commonSuffix(a.substring(0,c),b.substring(0,e));g.length<u+p&&(g=b.substring(e-u,e)+b.substring(e,e+p),h=a.substring(0,c-u),k=a.substring(c+p),l=b.substring(0,e-u),m=b.substring(e+p))}return 2*g.length>=a.length?[h,k,l,m,g]:null}if(0>=this.Diff_Timeout)return null;\nvar d=a.length>b.length?a:b,e=a.length>b.length?b:a;if(4>d.length||2*e.length<d.length)return null;var f=this,g=c(d,e,Math.ceil(d.length/4));d=c(d,e,Math.ceil(d.length/2));if(g||d)g=d?g?g[4].length>d[4].length?g:d:d:g;else return null;if(a.length>b.length){d=g[0];e=g[1];var h=g[2];var l=g[3]}else h=g[0],l=g[1],d=g[2],e=g[3];return[d,e,h,l,g[4]]};\ndiff_match_patch.prototype.diff_cleanupSemantic=function(a){for(var b=!1,c=[],d=0,e=null,f=0,g=0,h=0,l=0,k=0;f<a.length;)a[f][0]==DIFF_EQUAL?(c[d++]=f,g=l,h=k,k=l=0,e=a[f][1]):(a[f][0]==DIFF_INSERT?l+=a[f][1].length:k+=a[f][1].length,e&&e.length<=Math.max(g,h)&&e.length<=Math.max(l,k)&&(a.splice(c[d-1],0,[DIFF_DELETE,e]),a[c[d-1]+1][0]=DIFF_INSERT,d--,d--,f=0<d?c[d-1]:-1,k=l=h=g=0,e=null,b=!0)),f++;b&&this.diff_cleanupMerge(a);this.diff_cleanupSemanticLossless(a);for(f=1;f<a.length;){if(a[f-1][0]==\nDIFF_DELETE&&a[f][0]==DIFF_INSERT){b=a[f-1][1];c=a[f][1];d=this.diff_commonOverlap_(b,c);e=this.diff_commonOverlap_(c,b);if(d>=e){if(d>=b.length/2||d>=c.length/2)a.splice(f,0,[DIFF_EQUAL,c.substring(0,d)]),a[f-1][1]=b.substring(0,b.length-d),a[f+1][1]=c.substring(d),f++}else if(e>=b.length/2||e>=c.length/2)a.splice(f,0,[DIFF_EQUAL,b.substring(0,e)]),a[f-1][0]=DIFF_INSERT,a[f-1][1]=c.substring(0,c.length-e),a[f+1][0]=DIFF_DELETE,a[f+1][1]=b.substring(e),f++;f++}f++}};\ndiff_match_patch.prototype.diff_cleanupSemanticLossless=function(a){function b(a,b){if(!a||!b)return 6;var c=a.charAt(a.length-1),d=b.charAt(0),e=c.match(diff_match_patch.nonAlphaNumericRegex_),f=d.match(diff_match_patch.nonAlphaNumericRegex_),g=e&&c.match(diff_match_patch.whitespaceRegex_),h=f&&d.match(diff_match_patch.whitespaceRegex_);c=g&&c.match(diff_match_patch.linebreakRegex_);d=h&&d.match(diff_match_patch.linebreakRegex_);var k=c&&a.match(diff_match_patch.blanklineEndRegex_),l=d&&b.match(diff_match_patch.blanklineStartRegex_);\nreturn k||l?5:c||d?4:e&&!g&&h?3:g||h?2:e||f?1:0}for(var c=1;c<a.length-1;){if(a[c-1][0]==DIFF_EQUAL&&a[c+1][0]==DIFF_EQUAL){var d=a[c-1][1],e=a[c][1],f=a[c+1][1],g=this.diff_commonSuffix(d,e);if(g){var h=e.substring(e.length-g);d=d.substring(0,d.length-g);e=h+e.substring(0,e.length-g);f=h+f}g=d;h=e;for(var l=f,k=b(d,e)+b(e,f);e.charAt(0)===f.charAt(0);){d+=e.charAt(0);e=e.substring(1)+f.charAt(0);f=f.substring(1);var m=b(d,e)+b(e,f);m>=k&&(k=m,g=d,h=e,l=f)}a[c-1][1]!=g&&(g?a[c-1][1]=g:(a.splice(c-\n1,1),c--),a[c][1]=h,l?a[c+1][1]=l:(a.splice(c+1,1),c--))}c++}};diff_match_patch.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/;diff_match_patch.whitespaceRegex_=/\\s/;diff_match_patch.linebreakRegex_=/[\\r\\n]/;diff_match_patch.blanklineEndRegex_=/\\n\\r?\\n$/;diff_match_patch.blanklineStartRegex_=/^\\r?\\n\\r?\\n/;\ndiff_match_patch.prototype.diff_cleanupEfficiency=function(a){for(var b=!1,c=[],d=0,e=null,f=0,g=!1,h=!1,l=!1,k=!1;f<a.length;)a[f][0]==DIFF_EQUAL?(a[f][1].length<this.Diff_EditCost&&(l||k)?(c[d++]=f,g=l,h=k,e=a[f][1]):(d=0,e=null),l=k=!1):(a[f][0]==DIFF_DELETE?k=!0:l=!0,e&&(g&&h&&l&&k||e.length<this.Diff_EditCost/2&&3==g+h+l+k)&&(a.splice(c[d-1],0,[DIFF_DELETE,e]),a[c[d-1]+1][0]=DIFF_INSERT,d--,e=null,g&&h?(l=k=!0,d=0):(d--,f=0<d?c[d-1]:-1,l=k=!1),b=!0)),f++;b&&this.diff_cleanupMerge(a)};\ndiff_match_patch.prototype.diff_cleanupMerge=function(a){a.push([DIFF_EQUAL,\"\"]);for(var b=0,c=0,d=0,e=\"\",f=\"\",g;b<a.length;)switch(a[b][0]){case DIFF_INSERT:d++;f+=a[b][1];b++;break;case DIFF_DELETE:c++;e+=a[b][1];b++;break;case DIFF_EQUAL:1<c+d?(0!==c&&0!==d&&(g=this.diff_commonPrefix(f,e),0!==g&&(0<b-c-d&&a[b-c-d-1][0]==DIFF_EQUAL?a[b-c-d-1][1]+=f.substring(0,g):(a.splice(0,0,[DIFF_EQUAL,f.substring(0,g)]),b++),f=f.substring(g),e=e.substring(g)),g=this.diff_commonSuffix(f,e),0!==g&&(a[b][1]=f.substring(f.length-\ng)+a[b][1],f=f.substring(0,f.length-g),e=e.substring(0,e.length-g))),0===c?a.splice(b-d,c+d,[DIFF_INSERT,f]):0===d?a.splice(b-c,c+d,[DIFF_DELETE,e]):a.splice(b-c-d,c+d,[DIFF_DELETE,e],[DIFF_INSERT,f]),b=b-c-d+(c?1:0)+(d?1:0)+1):0!==b&&a[b-1][0]==DIFF_EQUAL?(a[b-1][1]+=a[b][1],a.splice(b,1)):b++,c=d=0,f=e=\"\"}\"\"===a[a.length-1][1]&&a.pop();c=!1;for(b=1;b<a.length-1;)a[b-1][0]==DIFF_EQUAL&&a[b+1][0]==DIFF_EQUAL&&(a[b][1].substring(a[b][1].length-a[b-1][1].length)==a[b-1][1]?(a[b][1]=a[b-1][1]+a[b][1].substring(0,\na[b][1].length-a[b-1][1].length),a[b+1][1]=a[b-1][1]+a[b+1][1],a.splice(b-1,1),c=!0):a[b][1].substring(0,a[b+1][1].length)==a[b+1][1]&&(a[b-1][1]+=a[b+1][1],a[b][1]=a[b][1].substring(a[b+1][1].length)+a[b+1][1],a.splice(b+1,1),c=!0)),b++;c&&this.diff_cleanupMerge(a)};\ndiff_match_patch.prototype.diff_xIndex=function(a,b){var c=0,d=0,e=0,f=0,g;for(g=0;g<a.length;g++){a[g][0]!==DIFF_INSERT&&(c+=a[g][1].length);a[g][0]!==DIFF_DELETE&&(d+=a[g][1].length);if(c>b)break;e=c;f=d}return a.length!=g&&a[g][0]===DIFF_DELETE?f:f+(b-e)};\ndiff_match_patch.prototype.diff_prettyHtml=function(a){for(var b=[],c=/&/g,d=/</g,e=/>/g,f=/\\n/g,g=0;g<a.length;g++){var h=a[g][0],l=a[g][1].replace(c,\"&\").replace(d,\"<\").replace(e,\">\").replace(f,\"¶<br>\");switch(h){case DIFF_INSERT:b[g]='<ins style=\"background:#e6ffe6;\">'+l+\"</ins>\";break;case DIFF_DELETE:b[g]='<del style=\"background:#ffe6e6;\">'+l+\"</del>\";break;case DIFF_EQUAL:b[g]=\"<span>\"+l+\"</span>\"}}return b.join(\"\")};\ndiff_match_patch.prototype.diff_text1=function(a){for(var b=[],c=0;c<a.length;c++)a[c][0]!==DIFF_INSERT&&(b[c]=a[c][1]);return b.join(\"\")};diff_match_patch.prototype.diff_text2=function(a){for(var b=[],c=0;c<a.length;c++)a[c][0]!==DIFF_DELETE&&(b[c]=a[c][1]);return b.join(\"\")};\ndiff_match_patch.prototype.diff_levenshtein=function(a){for(var b=0,c=0,d=0,e=0;e<a.length;e++){var f=a[e][1];switch(a[e][0]){case DIFF_INSERT:c+=f.length;break;case DIFF_DELETE:d+=f.length;break;case DIFF_EQUAL:b+=Math.max(c,d),d=c=0}}return b+=Math.max(c,d)};\ndiff_match_patch.prototype.diff_toDelta=function(a){for(var b=[],c=0;c<a.length;c++)switch(a[c][0]){case DIFF_INSERT:b[c]=\"+\"+encodeURI(a[c][1]);break;case DIFF_DELETE:b[c]=\"-\"+a[c][1].length;break;case DIFF_EQUAL:b[c]=\"=\"+a[c][1].length}return b.join(\"\\t\").replace(/%20/g,\" \")};\ndiff_match_patch.prototype.diff_fromDelta=function(a,b){for(var c=[],d=0,e=0,f=b.split(/\\t/g),g=0;g<f.length;g++){var h=f[g].substring(1);switch(f[g].charAt(0)){case \"+\":try{c[d++]=[DIFF_INSERT,decodeURI(h)]}catch(k){throw Error(\"Illegal escape in diff_fromDelta: \"+h);}break;case \"-\":case \"=\":var l=parseInt(h,10);if(isNaN(l)||0>l)throw Error(\"Invalid number in diff_fromDelta: \"+h);h=a.substring(e,e+=l);\"=\"==f[g].charAt(0)?c[d++]=[DIFF_EQUAL,h]:c[d++]=[DIFF_DELETE,h];break;default:if(f[g])throw Error(\"Invalid diff operation in diff_fromDelta: \"+\nf[g]);}}if(e!=a.length)throw Error(\"Delta length (\"+e+\") does not equal source text length (\"+a.length+\").\");return c};diff_match_patch.prototype.match_main=function(a,b,c){if(null==a||null==b||null==c)throw Error(\"Null input. (match_main)\");c=Math.max(0,Math.min(c,a.length));return a==b?0:a.length?a.substring(c,c+b.length)==b?c:this.match_bitap_(a,b,c):-1};\ndiff_match_patch.prototype.match_bitap_=function(a,b,c){function d(a,d){var e=a/b.length,g=Math.abs(c-d);return f.Match_Distance?e+g/f.Match_Distance:g?1:e}if(b.length>this.Match_MaxBits)throw Error(\"Pattern too long for this browser.\");var e=this.match_alphabet_(b),f=this,g=this.Match_Threshold,h=a.indexOf(b,c);-1!=h&&(g=Math.min(d(0,h),g),h=a.lastIndexOf(b,c+b.length),-1!=h&&(g=Math.min(d(0,h),g)));var l=1<<b.length-1;h=-1;for(var k,m,p=b.length+a.length,x,w=0;w<b.length;w++){k=0;for(m=p;k<m;)d(w,\nc+m)<=g?k=m:p=m,m=Math.floor((p-k)/2+k);p=m;k=Math.max(1,c-m+1);var q=Math.min(c+m,a.length)+b.length;m=Array(q+2);for(m[q+1]=(1<<w)-1;q>=k;q--){var t=e[a.charAt(q-1)];m[q]=0===w?(m[q+1]<<1|1)&t:(m[q+1]<<1|1)&t|(x[q+1]|x[q])<<1|1|x[q+1];if(m[q]&l&&(t=d(w,q-1),t<=g))if(g=t,h=q-1,h>c)k=Math.max(1,2*c-h);else break}if(d(w+1,c)>g)break;x=m}return h};\ndiff_match_patch.prototype.match_alphabet_=function(a){for(var b={},c=0;c<a.length;c++)b[a.charAt(c)]=0;for(c=0;c<a.length;c++)b[a.charAt(c)]|=1<<a.length-c-1;return b};\ndiff_match_patch.prototype.patch_addContext_=function(a,b){if(0!=b.length){for(var c=b.substring(a.start2,a.start2+a.length1),d=0;b.indexOf(c)!=b.lastIndexOf(c)&&c.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)d+=this.Patch_Margin,c=b.substring(a.start2-d,a.start2+a.length1+d);d+=this.Patch_Margin;(c=b.substring(a.start2-d,a.start2))&&a.diffs.unshift([DIFF_EQUAL,c]);(d=b.substring(a.start2+a.length1,a.start2+a.length1+d))&&a.diffs.push([DIFF_EQUAL,d]);a.start1-=c.length;a.start2-=\nc.length;a.length1+=c.length+d.length;a.length2+=c.length+d.length}};\ndiff_match_patch.prototype.patch_make=function(a,b,c){if(\"string\"==typeof a&&\"string\"==typeof b&&\"undefined\"==typeof c){var d=a;b=this.diff_main(d,b,!0);2<b.length&&(this.diff_cleanupSemantic(b),this.diff_cleanupEfficiency(b))}else if(a&&\"object\"==typeof a&&\"undefined\"==typeof b&&\"undefined\"==typeof c)b=a,d=this.diff_text1(b);else if(\"string\"==typeof a&&b&&\"object\"==typeof b&&\"undefined\"==typeof c)d=a;else if(\"string\"==typeof a&&\"string\"==typeof b&&c&&\"object\"==typeof c)d=a,b=c;else throw Error(\"Unknown call format to patch_make.\");\nif(0===b.length)return[];c=[];a=new diff_match_patch.patch_obj;for(var e=0,f=0,g=0,h=d,l=0;l<b.length;l++){var k=b[l][0],m=b[l][1];e||k===DIFF_EQUAL||(a.start1=f,a.start2=g);switch(k){case DIFF_INSERT:a.diffs[e++]=b[l];a.length2+=m.length;d=d.substring(0,g)+m+d.substring(g);break;case DIFF_DELETE:a.length1+=m.length;a.diffs[e++]=b[l];d=d.substring(0,g)+d.substring(g+m.length);break;case DIFF_EQUAL:m.length<=2*this.Patch_Margin&&e&&b.length!=l+1?(a.diffs[e++]=b[l],a.length1+=m.length,a.length2+=m.length):\nm.length>=2*this.Patch_Margin&&e&&(this.patch_addContext_(a,h),c.push(a),a=new diff_match_patch.patch_obj,e=0,h=d,f=g)}k!==DIFF_INSERT&&(f+=m.length);k!==DIFF_DELETE&&(g+=m.length)}e&&(this.patch_addContext_(a,h),c.push(a));return c};\ndiff_match_patch.prototype.patch_deepCopy=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c],e=new diff_match_patch.patch_obj;e.diffs=[];for(var f=0;f<d.diffs.length;f++)e.diffs[f]=d.diffs[f].slice();e.start1=d.start1;e.start2=d.start2;e.length1=d.length1;e.length2=d.length2;b[c]=e}return b};\ndiff_match_patch.prototype.patch_apply=function(a,b){if(0==a.length)return[b,[]];a=this.patch_deepCopy(a);var c=this.patch_addPadding(a);b=c+b+c;this.patch_splitMax(a);for(var d=0,e=[],f=0;f<a.length;f++){var g=a[f].start2+d,h=this.diff_text1(a[f].diffs),l=-1;if(h.length>this.Match_MaxBits){var k=this.match_main(b,h.substring(0,this.Match_MaxBits),g);-1!=k&&(l=this.match_main(b,h.substring(h.length-this.Match_MaxBits),g+h.length-this.Match_MaxBits),-1==l||k>=l)&&(k=-1)}else k=this.match_main(b,h,\ng);if(-1==k)e[f]=!1,d-=a[f].length2-a[f].length1;else if(e[f]=!0,d=k-g,g=-1==l?b.substring(k,k+h.length):b.substring(k,l+this.Match_MaxBits),h==g)b=b.substring(0,k)+this.diff_text2(a[f].diffs)+b.substring(k+h.length);else if(g=this.diff_main(h,g,!1),h.length>this.Match_MaxBits&&this.diff_levenshtein(g)/h.length>this.Patch_DeleteThreshold)e[f]=!1;else{this.diff_cleanupSemanticLossless(g);h=0;var m;for(l=0;l<a[f].diffs.length;l++){var p=a[f].diffs[l];p[0]!==DIFF_EQUAL&&(m=this.diff_xIndex(g,h));p[0]===\nDIFF_INSERT?b=b.substring(0,k+m)+p[1]+b.substring(k+m):p[0]===DIFF_DELETE&&(b=b.substring(0,k+m)+b.substring(k+this.diff_xIndex(g,h+p[1].length)));p[0]!==DIFF_DELETE&&(h+=p[1].length)}}}b=b.substring(c.length,b.length-c.length);return[b,e]};\ndiff_match_patch.prototype.patch_addPadding=function(a){for(var b=this.Patch_Margin,c=\"\",d=1;d<=b;d++)c+=String.fromCharCode(d);for(d=0;d<a.length;d++)a[d].start1+=b,a[d].start2+=b;d=a[0];var e=d.diffs;if(0==e.length||e[0][0]!=DIFF_EQUAL)e.unshift([DIFF_EQUAL,c]),d.start1-=b,d.start2-=b,d.length1+=b,d.length2+=b;else if(b>e[0][1].length){var f=b-e[0][1].length;e[0][1]=c.substring(e[0][1].length)+e[0][1];d.start1-=f;d.start2-=f;d.length1+=f;d.length2+=f}d=a[a.length-1];e=d.diffs;0==e.length||e[e.length-\n1][0]!=DIFF_EQUAL?(e.push([DIFF_EQUAL,c]),d.length1+=b,d.length2+=b):b>e[e.length-1][1].length&&(f=b-e[e.length-1][1].length,e[e.length-1][1]+=c.substring(0,f),d.length1+=f,d.length2+=f);return c};\ndiff_match_patch.prototype.patch_splitMax=function(a){for(var b=this.Match_MaxBits,c=0;c<a.length;c++)if(!(a[c].length1<=b)){var d=a[c];a.splice(c--,1);for(var e=d.start1,f=d.start2,g=\"\";0!==d.diffs.length;){var h=new diff_match_patch.patch_obj,l=!0;h.start1=e-g.length;h.start2=f-g.length;\"\"!==g&&(h.length1=h.length2=g.length,h.diffs.push([DIFF_EQUAL,g]));for(;0!==d.diffs.length&&h.length1<b-this.Patch_Margin;){g=d.diffs[0][0];var k=d.diffs[0][1];g===DIFF_INSERT?(h.length2+=k.length,f+=k.length,h.diffs.push(d.diffs.shift()),\nl=!1):g===DIFF_DELETE&&1==h.diffs.length&&h.diffs[0][0]==DIFF_EQUAL&&k.length>2*b?(h.length1+=k.length,e+=k.length,l=!1,h.diffs.push([g,k]),d.diffs.shift()):(k=k.substring(0,b-h.length1-this.Patch_Margin),h.length1+=k.length,e+=k.length,g===DIFF_EQUAL?(h.length2+=k.length,f+=k.length):l=!1,h.diffs.push([g,k]),k==d.diffs[0][1]?d.diffs.shift():d.diffs[0][1]=d.diffs[0][1].substring(k.length))}g=this.diff_text2(h.diffs);g=g.substring(g.length-this.Patch_Margin);k=this.diff_text1(d.diffs).substring(0,\nthis.Patch_Margin);\"\"!==k&&(h.length1+=k.length,h.length2+=k.length,0!==h.diffs.length&&h.diffs[h.diffs.length-1][0]===DIFF_EQUAL?h.diffs[h.diffs.length-1][1]+=k:h.diffs.push([DIFF_EQUAL,k]));l||a.splice(++c,0,h)}}};diff_match_patch.prototype.patch_toText=function(a){for(var b=[],c=0;c<a.length;c++)b[c]=a[c];return b.join(\"\")};\ndiff_match_patch.prototype.patch_fromText=function(a){var b=[];if(!a)return b;a=a.split(\"\\n\");for(var c=0,d=/^@@ -(\\d+),?(\\d*) \\+(\\d+),?(\\d*) @@$/;c<a.length;){var e=a[c].match(d);if(!e)throw Error(\"Invalid patch string: \"+a[c]);var f=new diff_match_patch.patch_obj;b.push(f);f.start1=parseInt(e[1],10);\"\"===e[2]?(f.start1--,f.length1=1):\"0\"==e[2]?f.length1=0:(f.start1--,f.length1=parseInt(e[2],10));f.start2=parseInt(e[3],10);\"\"===e[4]?(f.start2--,f.length2=1):\"0\"==e[4]?f.length2=0:(f.start2--,f.length2=\nparseInt(e[4],10));for(c++;c<a.length;){e=a[c].charAt(0);try{var g=decodeURI(a[c].substring(1))}catch(h){throw Error(\"Illegal escape in patch_fromText: \"+g);}if(\"-\"==e)f.diffs.push([DIFF_DELETE,g]);else if(\"+\"==e)f.diffs.push([DIFF_INSERT,g]);else if(\" \"==e)f.diffs.push([DIFF_EQUAL,g]);else if(\"@\"==e)break;else if(\"\"!==e)throw Error('Invalid patch mode \"'+e+'\" in: '+g);c++}}return b};diff_match_patch.patch_obj=function(){this.diffs=[];this.start2=this.start1=null;this.length2=this.length1=0};\ndiff_match_patch.patch_obj.prototype.toString=function(){for(var a=[\"@@ -\"+(0===this.length1?this.start1+\",0\":1==this.length1?this.start1+1:this.start1+1+\",\"+this.length1)+\" +\"+(0===this.length2?this.start2+\",0\":1==this.length2?this.start2+1:this.start2+1+\",\"+this.length2)+\" @@\\n\"],b,c=0;c<this.diffs.length;c++){switch(this.diffs[c][0]){case DIFF_INSERT:b=\"+\";break;case DIFF_DELETE:b=\"-\";break;case DIFF_EQUAL:b=\" \"}a[c+1]=b+encodeURI(this.diffs[c][1])+\"\\n\"}return a.join(\"\").replace(/%20/g,\" \")};\nthis.diff_match_patch=diff_match_patch;this.DIFF_DELETE=DIFF_DELETE;this.DIFF_INSERT=DIFF_INSERT;this.DIFF_EQUAL=DIFF_EQUAL;\n}).call(exports);",
"type": "application/javascript",
"title": "$:/core/modules/utils/diff-match-patch/diff_match_patch.js",
"module-type": "library"
},
"$:/core/modules/utils/dom/animations/slide.js": {
"title": "$:/core/modules/utils/dom/animations/slide.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/animations/slide.js\ntype: application/javascript\nmodule-type: animation\n\nA simple slide animation that varies the height of the element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction slideOpen(domNode,options) {\n\toptions = options || {};\n\tvar duration = options.duration || $tw.utils.getAnimationDuration();\n\t// Get the current height of the domNode\n\tvar computedStyle = window.getComputedStyle(domNode),\n\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\tcurrPaddingBottom = parseInt(computedStyle.paddingBottom,10),\n\t\tcurrPaddingTop = parseInt(computedStyle.paddingTop,10),\n\t\tcurrHeight = domNode.offsetHeight;\n\t// Reset the margin once the transition is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(domNode,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: \"\"},\n\t\t\t{marginTop: \"\"},\n\t\t\t{paddingBottom: \"\"},\n\t\t\t{paddingTop: \"\"},\n\t\t\t{height: \"auto\"},\n\t\t\t{opacity: \"\"}\n\t\t]);\n\t\tif(options.callback) {\n\t\t\toptions.callback();\n\t\t}\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"none\"},\n\t\t{marginTop: \"0px\"},\n\t\t{marginBottom: \"0px\"},\n\t\t{paddingTop: \"0px\"},\n\t\t{paddingBottom: \"0px\"},\n\t\t{height: \"0px\"},\n\t\t{opacity: \"0\"}\n\t]);\n\t$tw.utils.forceLayout(domNode);\n\t// Transition to the final position\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"margin-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"height \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t{marginTop: currMarginTop + \"px\"},\n\t\t{paddingBottom: currPaddingBottom + \"px\"},\n\t\t{paddingTop: currPaddingTop + \"px\"},\n\t\t{height: currHeight + \"px\"},\n\t\t{opacity: \"1\"}\n\t]);\n}\n\nfunction slideClosed(domNode,options) {\n\toptions = options || {};\n\tvar duration = options.duration || $tw.utils.getAnimationDuration(),\n\t\tcurrHeight = domNode.offsetHeight;\n\t// Clear the properties we've set when the animation is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(domNode,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: \"\"},\n\t\t\t{marginTop: \"\"},\n\t\t\t{paddingBottom: \"\"},\n\t\t\t{paddingTop: \"\"},\n\t\t\t{height: \"auto\"},\n\t\t\t{opacity: \"\"}\n\t\t]);\n\t\tif(options.callback) {\n\t\t\toptions.callback();\n\t\t}\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(domNode,[\n\t\t{height: currHeight + \"px\"},\n\t\t{opacity: \"1\"}\n\t]);\n\t$tw.utils.forceLayout(domNode);\n\t// Transition to the final position\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"margin-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"height \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{marginTop: \"0px\"},\n\t\t{marginBottom: \"0px\"},\n\t\t{paddingTop: \"0px\"},\n\t\t{paddingBottom: \"0px\"},\n\t\t{height: \"0px\"},\n\t\t{opacity: \"0\"}\n\t]);\n}\n\nexports.slide = {\n\topen: slideOpen,\n\tclose: slideClosed\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "animation"
},
"$:/core/modules/utils/dom/animator.js": {
"title": "$:/core/modules/utils/dom/animator.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/animator.js\ntype: application/javascript\nmodule-type: utils\n\nOrchestrates animations and transitions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction Animator() {\n\t// Get the registered animation modules\n\tthis.animations = {};\n\t$tw.modules.applyMethods(\"animation\",this.animations);\n}\n\nAnimator.prototype.perform = function(type,domNode,options) {\n\toptions = options || {};\n\t// Find an animation that can handle this type\n\tvar chosenAnimation;\n\t$tw.utils.each(this.animations,function(animation,name) {\n\t\tif($tw.utils.hop(animation,type)) {\n\t\t\tchosenAnimation = animation[type];\n\t\t}\n\t});\n\tif(!chosenAnimation) {\n\t\tchosenAnimation = function(domNode,options) {\n\t\t\tif(options.callback) {\n\t\t\t\toptions.callback();\n\t\t\t}\n\t\t};\n\t}\n\t// Call the animation\n\tchosenAnimation(domNode,options);\n};\n\nexports.Animator = Animator;\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom/browser.js": {
"title": "$:/core/modules/utils/dom/browser.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/browser.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser feature detection\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet style properties of an element\n\telement: dom node\n\tstyles: ordered array of {name: value} pairs\n*/\nexports.setStyle = function(element,styles) {\n\tif(element.nodeType === 1) { // Element.ELEMENT_NODE\n\t\tfor(var t=0; t<styles.length; t++) {\n\t\t\tfor(var styleName in styles[t]) {\n\t\t\t\telement.style[$tw.utils.convertStyleNameToPropertyName(styleName)] = styles[t][styleName];\n\t\t\t}\n\t\t}\n\t}\n};\n\n/*\nConverts a standard CSS property name into the local browser-specific equivalent. For example:\n\t\"background-color\" --> \"backgroundColor\"\n\t\"transition\" --> \"webkitTransition\"\n*/\n\nvar styleNameCache = {}; // We'll cache the style name conversions\n\nexports.convertStyleNameToPropertyName = function(styleName) {\n\t// Return from the cache if we can\n\tif(styleNameCache[styleName]) {\n\t\treturn styleNameCache[styleName];\n\t}\n\t// Convert it by first removing any hyphens\n\tvar propertyName = $tw.utils.unHyphenateCss(styleName);\n\t// Then check if it needs a prefix\n\tif($tw.browser && document.body.style[propertyName] === undefined) {\n\t\tvar prefixes = [\"O\",\"MS\",\"Moz\",\"webkit\"];\n\t\tfor(var t=0; t<prefixes.length; t++) {\n\t\t\tvar prefixedName = prefixes[t] + propertyName.substr(0,1).toUpperCase() + propertyName.substr(1);\n\t\t\tif(document.body.style[prefixedName] !== undefined) {\n\t\t\t\tpropertyName = prefixedName;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\t// Put it in the cache too\n\tstyleNameCache[styleName] = propertyName;\n\treturn propertyName;\n};\n\n/*\nConverts a JS format CSS property name back into the dashed form used in CSS declarations. For example:\n\t\"backgroundColor\" --> \"background-color\"\n\t\"webkitTransform\" --> \"-webkit-transform\"\n*/\nexports.convertPropertyNameToStyleName = function(propertyName) {\n\t// Rehyphenate the name\n\tvar styleName = $tw.utils.hyphenateCss(propertyName);\n\t// If there's a webkit prefix, add a dash (other browsers have uppercase prefixes, and so get the dash automatically)\n\tif(styleName.indexOf(\"webkit\") === 0) {\n\t\tstyleName = \"-\" + styleName;\n\t} else if(styleName.indexOf(\"-m-s\") === 0) {\n\t\tstyleName = \"-ms\" + styleName.substr(4);\n\t}\n\treturn styleName;\n};\n\n/*\nRound trip a stylename to a property name and back again. For example:\n\t\"transform\" --> \"webkitTransform\" --> \"-webkit-transform\"\n*/\nexports.roundTripPropertyName = function(propertyName) {\n\treturn $tw.utils.convertPropertyNameToStyleName($tw.utils.convertStyleNameToPropertyName(propertyName));\n};\n\n/*\nConverts a standard event name into the local browser specific equivalent. For example:\n\t\"animationEnd\" --> \"webkitAnimationEnd\"\n*/\n\nvar eventNameCache = {}; // We'll cache the conversions\n\nvar eventNameMappings = {\n\t\"transitionEnd\": {\n\t\tcorrespondingCssProperty: \"transition\",\n\t\tmappings: {\n\t\t\ttransition: \"transitionend\",\n\t\t\tOTransition: \"oTransitionEnd\",\n\t\t\tMSTransition: \"msTransitionEnd\",\n\t\t\tMozTransition: \"transitionend\",\n\t\t\twebkitTransition: \"webkitTransitionEnd\"\n\t\t}\n\t},\n\t\"animationEnd\": {\n\t\tcorrespondingCssProperty: \"animation\",\n\t\tmappings: {\n\t\t\tanimation: \"animationend\",\n\t\t\tOAnimation: \"oAnimationEnd\",\n\t\t\tMSAnimation: \"msAnimationEnd\",\n\t\t\tMozAnimation: \"animationend\",\n\t\t\twebkitAnimation: \"webkitAnimationEnd\"\n\t\t}\n\t}\n};\n\nexports.convertEventName = function(eventName) {\n\tif(eventNameCache[eventName]) {\n\t\treturn eventNameCache[eventName];\n\t}\n\tvar newEventName = eventName,\n\t\tmappings = eventNameMappings[eventName];\n\tif(mappings) {\n\t\tvar convertedProperty = $tw.utils.convertStyleNameToPropertyName(mappings.correspondingCssProperty);\n\t\tif(mappings.mappings[convertedProperty]) {\n\t\t\tnewEventName = mappings.mappings[convertedProperty];\n\t\t}\n\t}\n\t// Put it in the cache too\n\teventNameCache[eventName] = newEventName;\n\treturn newEventName;\n};\n\n/*\nReturn the names of the fullscreen APIs\n*/\nexports.getFullScreenApis = function() {\n\tvar d = document,\n\t\tdb = d.body,\n\t\tresult = {\n\t\t\"_requestFullscreen\": db.webkitRequestFullscreen !== undefined ? \"webkitRequestFullscreen\" :\n\t\t\t\t\t\t\tdb.mozRequestFullScreen !== undefined ? \"mozRequestFullScreen\" :\n\t\t\t\t\t\t\tdb.msRequestFullscreen !== undefined ? \"msRequestFullscreen\" :\n\t\t\t\t\t\t\tdb.requestFullscreen !== undefined ? \"requestFullscreen\" : \"\",\n\t\t\"_exitFullscreen\": d.webkitExitFullscreen !== undefined ? \"webkitExitFullscreen\" :\n\t\t\t\t\t\t\td.mozCancelFullScreen !== undefined ? \"mozCancelFullScreen\" :\n\t\t\t\t\t\t\td.msExitFullscreen !== undefined ? \"msExitFullscreen\" :\n\t\t\t\t\t\t\td.exitFullscreen !== undefined ? \"exitFullscreen\" : \"\",\n\t\t\"_fullscreenElement\": d.webkitFullscreenElement !== undefined ? \"webkitFullscreenElement\" :\n\t\t\t\t\t\t\td.mozFullScreenElement !== undefined ? \"mozFullScreenElement\" :\n\t\t\t\t\t\t\td.msFullscreenElement !== undefined ? \"msFullscreenElement\" :\n\t\t\t\t\t\t\td.fullscreenElement !== undefined ? \"fullscreenElement\" : \"\",\n\t\t\"_fullscreenChange\": d.webkitFullscreenElement !== undefined ? \"webkitfullscreenchange\" :\n\t\t\t\t\t\t\td.mozFullScreenElement !== undefined ? \"mozfullscreenchange\" :\n\t\t\t\t\t\t\td.msFullscreenElement !== undefined ? \"MSFullscreenChange\" :\n\t\t\t\t\t\t\td.fullscreenElement !== undefined ? \"fullscreenchange\" : \"\"\n\t};\n\tif(!result._requestFullscreen || !result._exitFullscreen || !result._fullscreenElement || !result._fullscreenChange) {\n\t\treturn null;\n\t} else {\n\t\treturn result;\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom/csscolorparser.js": {
"title": "$:/core/modules/utils/dom/csscolorparser.js",
"text": "// (c) Dean McNamee <dean@gmail.com>, 2012.\n//\n// https://github.com/deanm/css-color-parser-js\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n// IN THE SOFTWARE.\n\n// http://www.w3.org/TR/css3-color/\nvar kCSSColorTable = {\n \"transparent\": [0,0,0,0], \"aliceblue\": [240,248,255,1],\n \"antiquewhite\": [250,235,215,1], \"aqua\": [0,255,255,1],\n \"aquamarine\": [127,255,212,1], \"azure\": [240,255,255,1],\n \"beige\": [245,245,220,1], \"bisque\": [255,228,196,1],\n \"black\": [0,0,0,1], \"blanchedalmond\": [255,235,205,1],\n \"blue\": [0,0,255,1], \"blueviolet\": [138,43,226,1],\n \"brown\": [165,42,42,1], \"burlywood\": [222,184,135,1],\n \"cadetblue\": [95,158,160,1], \"chartreuse\": [127,255,0,1],\n \"chocolate\": [210,105,30,1], \"coral\": [255,127,80,1],\n \"cornflowerblue\": [100,149,237,1], \"cornsilk\": [255,248,220,1],\n \"crimson\": [220,20,60,1], \"cyan\": [0,255,255,1],\n \"darkblue\": [0,0,139,1], \"darkcyan\": [0,139,139,1],\n \"darkgoldenrod\": [184,134,11,1], \"darkgray\": [169,169,169,1],\n \"darkgreen\": [0,100,0,1], \"darkgrey\": [169,169,169,1],\n \"darkkhaki\": [189,183,107,1], \"darkmagenta\": [139,0,139,1],\n \"darkolivegreen\": [85,107,47,1], \"darkorange\": [255,140,0,1],\n \"darkorchid\": [153,50,204,1], \"darkred\": [139,0,0,1],\n \"darksalmon\": [233,150,122,1], \"darkseagreen\": [143,188,143,1],\n \"darkslateblue\": [72,61,139,1], \"darkslategray\": [47,79,79,1],\n \"darkslategrey\": [47,79,79,1], \"darkturquoise\": [0,206,209,1],\n \"darkviolet\": [148,0,211,1], \"deeppink\": [255,20,147,1],\n \"deepskyblue\": [0,191,255,1], \"dimgray\": [105,105,105,1],\n \"dimgrey\": [105,105,105,1], \"dodgerblue\": [30,144,255,1],\n \"firebrick\": [178,34,34,1], \"floralwhite\": [255,250,240,1],\n \"forestgreen\": [34,139,34,1], \"fuchsia\": [255,0,255,1],\n \"gainsboro\": [220,220,220,1], \"ghostwhite\": [248,248,255,1],\n \"gold\": [255,215,0,1], \"goldenrod\": [218,165,32,1],\n \"gray\": [128,128,128,1], \"green\": [0,128,0,1],\n \"greenyellow\": [173,255,47,1], \"grey\": [128,128,128,1],\n \"honeydew\": [240,255,240,1], \"hotpink\": [255,105,180,1],\n \"indianred\": [205,92,92,1], \"indigo\": [75,0,130,1],\n \"ivory\": [255,255,240,1], \"khaki\": [240,230,140,1],\n \"lavender\": [230,230,250,1], \"lavenderblush\": [255,240,245,1],\n \"lawngreen\": [124,252,0,1], \"lemonchiffon\": [255,250,205,1],\n \"lightblue\": [173,216,230,1], \"lightcoral\": [240,128,128,1],\n \"lightcyan\": [224,255,255,1], \"lightgoldenrodyellow\": [250,250,210,1],\n \"lightgray\": [211,211,211,1], \"lightgreen\": [144,238,144,1],\n \"lightgrey\": [211,211,211,1], \"lightpink\": [255,182,193,1],\n \"lightsalmon\": [255,160,122,1], \"lightseagreen\": [32,178,170,1],\n \"lightskyblue\": [135,206,250,1], \"lightslategray\": [119,136,153,1],\n \"lightslategrey\": [119,136,153,1], \"lightsteelblue\": [176,196,222,1],\n \"lightyellow\": [255,255,224,1], \"lime\": [0,255,0,1],\n \"limegreen\": [50,205,50,1], \"linen\": [250,240,230,1],\n \"magenta\": [255,0,255,1], \"maroon\": [128,0,0,1],\n \"mediumaquamarine\": [102,205,170,1], \"mediumblue\": [0,0,205,1],\n \"mediumorchid\": [186,85,211,1], \"mediumpurple\": [147,112,219,1],\n \"mediumseagreen\": [60,179,113,1], \"mediumslateblue\": [123,104,238,1],\n \"mediumspringgreen\": [0,250,154,1], \"mediumturquoise\": [72,209,204,1],\n \"mediumvioletred\": [199,21,133,1], \"midnightblue\": [25,25,112,1],\n \"mintcream\": [245,255,250,1], \"mistyrose\": [255,228,225,1],\n \"moccasin\": [255,228,181,1], \"navajowhite\": [255,222,173,1],\n \"navy\": [0,0,128,1], \"oldlace\": [253,245,230,1],\n \"olive\": [128,128,0,1], \"olivedrab\": [107,142,35,1],\n \"orange\": [255,165,0,1], \"orangered\": [255,69,0,1],\n \"orchid\": [218,112,214,1], \"palegoldenrod\": [238,232,170,1],\n \"palegreen\": [152,251,152,1], \"paleturquoise\": [175,238,238,1],\n \"palevioletred\": [219,112,147,1], \"papayawhip\": [255,239,213,1],\n \"peachpuff\": [255,218,185,1], \"peru\": [205,133,63,1],\n \"pink\": [255,192,203,1], \"plum\": [221,160,221,1],\n \"powderblue\": [176,224,230,1], \"purple\": [128,0,128,1],\n \"red\": [255,0,0,1], \"rosybrown\": [188,143,143,1],\n \"royalblue\": [65,105,225,1], \"saddlebrown\": [139,69,19,1],\n \"salmon\": [250,128,114,1], \"sandybrown\": [244,164,96,1],\n \"seagreen\": [46,139,87,1], \"seashell\": [255,245,238,1],\n \"sienna\": [160,82,45,1], \"silver\": [192,192,192,1],\n \"skyblue\": [135,206,235,1], \"slateblue\": [106,90,205,1],\n \"slategray\": [112,128,144,1], \"slategrey\": [112,128,144,1],\n \"snow\": [255,250,250,1], \"springgreen\": [0,255,127,1],\n \"steelblue\": [70,130,180,1], \"tan\": [210,180,140,1],\n \"teal\": [0,128,128,1], \"thistle\": [216,191,216,1],\n \"tomato\": [255,99,71,1], \"turquoise\": [64,224,208,1],\n \"violet\": [238,130,238,1], \"wheat\": [245,222,179,1],\n \"white\": [255,255,255,1], \"whitesmoke\": [245,245,245,1],\n \"yellow\": [255,255,0,1], \"yellowgreen\": [154,205,50,1]}\n\nfunction clamp_css_byte(i) { // Clamp to integer 0 .. 255.\n i = Math.round(i); // Seems to be what Chrome does (vs truncation).\n return i < 0 ? 0 : i > 255 ? 255 : i;\n}\n\nfunction clamp_css_float(f) { // Clamp to float 0.0 .. 1.0.\n return f < 0 ? 0 : f > 1 ? 1 : f;\n}\n\nfunction parse_css_int(str) { // int or percentage.\n if (str[str.length - 1] === '%')\n return clamp_css_byte(parseFloat(str) / 100 * 255);\n return clamp_css_byte(parseInt(str));\n}\n\nfunction parse_css_float(str) { // float or percentage.\n if (str[str.length - 1] === '%')\n return clamp_css_float(parseFloat(str) / 100);\n return clamp_css_float(parseFloat(str));\n}\n\nfunction css_hue_to_rgb(m1, m2, h) {\n if (h < 0) h += 1;\n else if (h > 1) h -= 1;\n\n if (h * 6 < 1) return m1 + (m2 - m1) * h * 6;\n if (h * 2 < 1) return m2;\n if (h * 3 < 2) return m1 + (m2 - m1) * (2/3 - h) * 6;\n return m1;\n}\n\nfunction parseCSSColor(css_str) {\n // Remove all whitespace, not compliant, but should just be more accepting.\n var str = css_str.replace(/ /g, '').toLowerCase();\n\n // Color keywords (and transparent) lookup.\n if (str in kCSSColorTable) return kCSSColorTable[str].slice(); // dup.\n\n // #abc and #abc123 syntax.\n if (str[0] === '#') {\n if (str.length === 4) {\n var iv = parseInt(str.substr(1), 16); // TODO(deanm): Stricter parsing.\n if (!(iv >= 0 && iv <= 0xfff)) return null; // Covers NaN.\n return [((iv & 0xf00) >> 4) | ((iv & 0xf00) >> 8),\n (iv & 0xf0) | ((iv & 0xf0) >> 4),\n (iv & 0xf) | ((iv & 0xf) << 4),\n 1];\n } else if (str.length === 7) {\n var iv = parseInt(str.substr(1), 16); // TODO(deanm): Stricter parsing.\n if (!(iv >= 0 && iv <= 0xffffff)) return null; // Covers NaN.\n return [(iv & 0xff0000) >> 16,\n (iv & 0xff00) >> 8,\n iv & 0xff,\n 1];\n }\n\n return null;\n }\n\n var op = str.indexOf('('), ep = str.indexOf(')');\n if (op !== -1 && ep + 1 === str.length) {\n var fname = str.substr(0, op);\n var params = str.substr(op+1, ep-(op+1)).split(',');\n var alpha = 1; // To allow case fallthrough.\n switch (fname) {\n case 'rgba':\n if (params.length !== 4) return null;\n alpha = parse_css_float(params.pop());\n // Fall through.\n case 'rgb':\n if (params.length !== 3) return null;\n return [parse_css_int(params[0]),\n parse_css_int(params[1]),\n parse_css_int(params[2]),\n alpha];\n case 'hsla':\n if (params.length !== 4) return null;\n alpha = parse_css_float(params.pop());\n // Fall through.\n case 'hsl':\n if (params.length !== 3) return null;\n var h = (((parseFloat(params[0]) % 360) + 360) % 360) / 360; // 0 .. 1\n // NOTE(deanm): According to the CSS spec s/l should only be\n // percentages, but we don't bother and let float or percentage.\n var s = parse_css_float(params[1]);\n var l = parse_css_float(params[2]);\n var m2 = l <= 0.5 ? l * (s + 1) : l + s - l * s;\n var m1 = l * 2 - m2;\n return [clamp_css_byte(css_hue_to_rgb(m1, m2, h+1/3) * 255),\n clamp_css_byte(css_hue_to_rgb(m1, m2, h) * 255),\n clamp_css_byte(css_hue_to_rgb(m1, m2, h-1/3) * 255),\n alpha];\n default:\n return null;\n }\n }\n\n return null;\n}\n\ntry { exports.parseCSSColor = parseCSSColor } catch(e) { }\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom.js": {
"title": "$:/core/modules/utils/dom.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom.js\ntype: application/javascript\nmodule-type: utils\n\nVarious static DOM-related utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nDetermines whether element 'a' contains element 'b'\nCode thanks to John Resig, http://ejohn.org/blog/comparing-document-position/\n*/\nexports.domContains = function(a,b) {\n\treturn a.contains ?\n\t\ta !== b && a.contains(b) :\n\t\t!!(a.compareDocumentPosition(b) & 16);\n};\n\nexports.removeChildren = function(node) {\n\twhile(node.hasChildNodes()) {\n\t\tnode.removeChild(node.firstChild);\n\t}\n};\n\nexports.hasClass = function(el,className) {\n\treturn el && el.className && el.className.toString().split(\" \").indexOf(className) !== -1;\n};\n\nexports.addClass = function(el,className) {\n\tvar c = el.className.split(\" \");\n\tif(c.indexOf(className) === -1) {\n\t\tc.push(className);\n\t\tel.className = c.join(\" \");\n\t}\n};\n\nexports.removeClass = function(el,className) {\n\tvar c = el.className.split(\" \"),\n\t\tp = c.indexOf(className);\n\tif(p !== -1) {\n\t\tc.splice(p,1);\n\t\tel.className = c.join(\" \");\n\t}\n};\n\nexports.toggleClass = function(el,className,status) {\n\tif(status === undefined) {\n\t\tstatus = !exports.hasClass(el,className);\n\t}\n\tif(status) {\n\t\texports.addClass(el,className);\n\t} else {\n\t\texports.removeClass(el,className);\n\t}\n};\n\n/*\nGet the first parent element that has scrollbars or use the body as fallback.\n*/\nexports.getScrollContainer = function(el) {\n\tvar doc = el.ownerDocument;\n\twhile(el.parentNode) {\t\n\t\tel = el.parentNode;\n\t\tif(el.scrollTop) {\n\t\t\treturn el;\n\t\t}\n\t}\n\treturn doc.body;\n};\n\n/*\nGet the scroll position of the viewport\nReturns:\n\t{\n\t\tx: horizontal scroll position in pixels,\n\t\ty: vertical scroll position in pixels\n\t}\n*/\nexports.getScrollPosition = function(srcWindow) {\n\tvar scrollWindow = srcWindow || window;\n\tif(\"scrollX\" in scrollWindow) {\n\t\treturn {x: scrollWindow.scrollX, y: scrollWindow.scrollY};\n\t} else {\n\t\treturn {x: scrollWindow.document.documentElement.scrollLeft, y: scrollWindow.document.documentElement.scrollTop};\n\t}\n};\n\n/*\nAdjust the height of a textarea to fit its content, preserving scroll position, and return the height\n*/\nexports.resizeTextAreaToFit = function(domNode,minHeight) {\n\t// Get the scroll container and register the current scroll position\n\tvar container = $tw.utils.getScrollContainer(domNode),\n\t\tscrollTop = container.scrollTop;\n // Measure the specified minimum height\n\tdomNode.style.height = minHeight;\n\tvar measuredHeight = domNode.offsetHeight || parseInt(minHeight,10);\n\t// Set its height to auto so that it snaps to the correct height\n\tdomNode.style.height = \"auto\";\n\t// Calculate the revised height\n\tvar newHeight = Math.max(domNode.scrollHeight + domNode.offsetHeight - domNode.clientHeight,measuredHeight);\n\t// Only try to change the height if it has changed\n\tif(newHeight !== domNode.offsetHeight) {\n\t\tdomNode.style.height = newHeight + \"px\";\n\t\t// Make sure that the dimensions of the textarea are recalculated\n\t\t$tw.utils.forceLayout(domNode);\n\t\t// Set the container to the position we registered at the beginning\n\t\tcontainer.scrollTop = scrollTop;\n\t}\n\treturn newHeight;\n};\n\n/*\nGets the bounding rectangle of an element in absolute page coordinates\n*/\nexports.getBoundingPageRect = function(element) {\n\tvar scrollPos = $tw.utils.getScrollPosition(element.ownerDocument.defaultView),\n\t\tclientRect = element.getBoundingClientRect();\n\treturn {\n\t\tleft: clientRect.left + scrollPos.x,\n\t\twidth: clientRect.width,\n\t\tright: clientRect.right + scrollPos.x,\n\t\ttop: clientRect.top + scrollPos.y,\n\t\theight: clientRect.height,\n\t\tbottom: clientRect.bottom + scrollPos.y\n\t};\n};\n\n/*\nSaves a named password in the browser\n*/\nexports.savePassword = function(name,password) {\n\tvar done = false;\n\ttry {\n\t\twindow.localStorage.setItem(\"tw5-password-\" + name,password);\n\t\tdone = true;\n\t} catch(e) {\n\t}\n\tif(!done) {\n\t\t$tw.savedPasswords = $tw.savedPasswords || Object.create(null);\n\t\t$tw.savedPasswords[name] = password;\n\t}\n};\n\n/*\nRetrieve a named password from the browser\n*/\nexports.getPassword = function(name) {\n\tvar value;\n\ttry {\n\t\tvalue = window.localStorage.getItem(\"tw5-password-\" + name);\n\t} catch(e) {\n\t}\n\tif(value !== undefined) {\n\t\treturn value;\n\t} else {\n\t\treturn ($tw.savedPasswords || Object.create(null))[name] || \"\";\n\t}\n};\n\n/*\nForce layout of a dom node and its descendents\n*/\nexports.forceLayout = function(element) {\n\tvar dummy = element.offsetWidth;\n};\n\n/*\nPulse an element for debugging purposes\n*/\nexports.pulseElement = function(element) {\n\t// Event handler to remove the class at the end\n\telement.addEventListener($tw.browser.animationEnd,function handler(event) {\n\t\telement.removeEventListener($tw.browser.animationEnd,handler,false);\n\t\t$tw.utils.removeClass(element,\"pulse\");\n\t},false);\n\t// Apply the pulse class\n\t$tw.utils.removeClass(element,\"pulse\");\n\t$tw.utils.forceLayout(element);\n\t$tw.utils.addClass(element,\"pulse\");\n};\n\n/*\nAttach specified event handlers to a DOM node\ndomNode: where to attach the event handlers\nevents: array of event handlers to be added (see below)\nEach entry in the events array is an object with these properties:\nhandlerFunction: optional event handler function\nhandlerObject: optional event handler object\nhandlerMethod: optionally specifies object handler method name (defaults to `handleEvent`)\n*/\nexports.addEventListeners = function(domNode,events) {\n\t$tw.utils.each(events,function(eventInfo) {\n\t\tvar handler;\n\t\tif(eventInfo.handlerFunction) {\n\t\t\thandler = eventInfo.handlerFunction;\n\t\t} else if(eventInfo.handlerObject) {\n\t\t\tif(eventInfo.handlerMethod) {\n\t\t\t\thandler = function(event) {\n\t\t\t\t\teventInfo.handlerObject[eventInfo.handlerMethod].call(eventInfo.handlerObject,event);\n\t\t\t\t};\t\n\t\t\t} else {\n\t\t\t\thandler = eventInfo.handlerObject;\n\t\t\t}\n\t\t}\n\t\tdomNode.addEventListener(eventInfo.name,handler,false);\n\t});\n};\n\n/*\nGet the computed styles applied to an element as an array of strings of individual CSS properties\n*/\nexports.getComputedStyles = function(domNode) {\n\tvar textAreaStyles = window.getComputedStyle(domNode,null),\n\t\tstyleDefs = [],\n\t\tname;\n\tfor(var t=0; t<textAreaStyles.length; t++) {\n\t\tname = textAreaStyles[t];\n\t\tstyleDefs.push(name + \": \" + textAreaStyles.getPropertyValue(name) + \";\");\n\t}\n\treturn styleDefs;\n};\n\n/*\nApply a set of styles passed as an array of strings of individual CSS properties\n*/\nexports.setStyles = function(domNode,styleDefs) {\n\tdomNode.style.cssText = styleDefs.join(\"\");\n};\n\n/*\nCopy the computed styles from a source element to a destination element\n*/\nexports.copyStyles = function(srcDomNode,dstDomNode) {\n\t$tw.utils.setStyles(dstDomNode,$tw.utils.getComputedStyles(srcDomNode));\n};\n\n/*\nCopy plain text to the clipboard on browsers that support it\n*/\nexports.copyToClipboard = function(text,options) {\n\toptions = options || {};\n\tvar textArea = document.createElement(\"textarea\");\n\ttextArea.style.position = \"fixed\";\n\ttextArea.style.top = 0;\n\ttextArea.style.left = 0;\n\ttextArea.style.fontSize = \"12pt\";\n\ttextArea.style.width = \"2em\";\n\ttextArea.style.height = \"2em\";\n\ttextArea.style.padding = 0;\n\ttextArea.style.border = \"none\";\n\ttextArea.style.outline = \"none\";\n\ttextArea.style.boxShadow = \"none\";\n\ttextArea.style.background = \"transparent\";\n\ttextArea.value = text;\n\tdocument.body.appendChild(textArea);\n\ttextArea.select();\n\ttextArea.setSelectionRange(0,text.length);\n\tvar succeeded = false;\n\ttry {\n\t\tsucceeded = document.execCommand(\"copy\");\n\t} catch (err) {\n\t}\n\tif(!options.doNotNotify) {\n\t\t$tw.notifier.display(succeeded ? \"$:/language/Notifications/CopiedToClipboard/Succeeded\" : \"$:/language/Notifications/CopiedToClipboard/Failed\");\n\t}\n\tdocument.body.removeChild(textArea);\n};\n\nexports.getLocationPath = function() {\n\treturn window.location.toString().split(\"#\")[0];\n};\n\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom/dragndrop.js": {
"title": "$:/core/modules/utils/dom/dragndrop.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/dragndrop.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser data transfer utilities, used with the clipboard and drag and drop\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOptions:\n\ndomNode: dom node to make draggable\ndragImageType: \"pill\" or \"dom\"\ndragTiddlerFn: optional function to retrieve the title of tiddler to drag\ndragFilterFn: optional function to retreive the filter defining a list of tiddlers to drag\nwidget: widget to use as the contect for the filter\n*/\nexports.makeDraggable = function(options) {\n\tvar dragImageType = options.dragImageType || \"dom\",\n\t\tdragImage,\n\t\tdomNode = options.domNode;\n\t// Make the dom node draggable (not necessary for anchor tags)\n\tif((domNode.tagName || \"\").toLowerCase() !== \"a\") {\n\t\tdomNode.setAttribute(\"draggable\",\"true\");\t\t\n\t}\n\t// Add event handlers\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"dragstart\", handlerFunction: function(event) {\n\t\t\tif(event.dataTransfer === undefined) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// Collect the tiddlers being dragged\n\t\t\tvar dragTiddler = options.dragTiddlerFn && options.dragTiddlerFn(),\n\t\t\t\tdragFilter = options.dragFilterFn && options.dragFilterFn(),\n\t\t\t\ttitles = dragTiddler ? [dragTiddler] : [],\n\t\t\t \tstartActions = options.startActions;\n\t\t\tif(dragFilter) {\n\t\t\t\ttitles.push.apply(titles,options.widget.wiki.filterTiddlers(dragFilter,options.widget));\n\t\t\t}\n\t\t\tvar titleString = $tw.utils.stringifyList(titles);\n\t\t\t// Check that we've something to drag\n\t\t\tif(titles.length > 0 && event.target === domNode) {\n\t\t\t\t// Mark the drag in progress\n\t\t\t\t$tw.dragInProgress = domNode;\n\t\t\t\t// Set the dragging class on the element being dragged\n\t\t\t\t$tw.utils.addClass(event.target,\"tc-dragging\");\n\t\t\t\t// Invoke drag-start actions if given\n\t\t\t\tif(startActions !== undefined) {\n\t\t\t\t\toptions.widget.invokeActionString(startActions,options.widget,event,{actionTiddler: titleString});\n\t\t\t\t}\n\t\t\t\t// Create the drag image elements\n\t\t\t\tdragImage = options.widget.document.createElement(\"div\");\n\t\t\t\tdragImage.className = \"tc-tiddler-dragger\";\n\t\t\t\tvar inner = options.widget.document.createElement(\"div\");\n\t\t\t\tinner.className = \"tc-tiddler-dragger-inner\";\n\t\t\t\tinner.appendChild(options.widget.document.createTextNode(\n\t\t\t\t\ttitles.length === 1 ? \n\t\t\t\t\t\ttitles[0] :\n\t\t\t\t\t\ttitles.length + \" tiddlers\"\n\t\t\t\t));\n\t\t\t\tdragImage.appendChild(inner);\n\t\t\t\toptions.widget.document.body.appendChild(dragImage);\n\t\t\t\t// Set the data transfer properties\n\t\t\t\tvar dataTransfer = event.dataTransfer;\n\t\t\t\t// Set up the image\n\t\t\t\tdataTransfer.effectAllowed = \"all\";\n\t\t\t\tif(dataTransfer.setDragImage) {\n\t\t\t\t\tif(dragImageType === \"pill\") {\n\t\t\t\t\t\tdataTransfer.setDragImage(dragImage.firstChild,-16,-16);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar r = domNode.getBoundingClientRect();\n\t\t\t\t\t\tdataTransfer.setDragImage(domNode,event.clientX-r.left,event.clientY-r.top);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Set up the data transfer\n\t\t\t\tif(dataTransfer.clearData) {\n\t\t\t\t\tdataTransfer.clearData();\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\tvar jsonData = [];\n\t\t\t\tif(titles.length > 1) {\n\t\t\t\t\ttitles.forEach(function(title) {\n\t\t\t\t\t\tjsonData.push(options.widget.wiki.getTiddlerAsJson(title));\n\t\t\t\t\t});\n\t\t\t\t\tjsonData = \"[\" + jsonData.join(\",\") + \"]\";\n\t\t\t\t} else {\n\t\t\t\t\tjsonData = options.widget.wiki.getTiddlerAsJson(titles[0]);\n\t\t\t\t}\n\t\t\t\t// IE doesn't like these content types\n\t\t\t\tif(!$tw.browser.isIE) {\n\t\t\t\t\tdataTransfer.setData(\"text/vnd.tiddler\",jsonData);\n\t\t\t\t\tdataTransfer.setData(\"text/plain\",titleString);\n\t\t\t\t\tdataTransfer.setData(\"text/x-moz-url\",\"data:text/vnd.tiddler,\" + encodeURIComponent(jsonData));\n\t\t\t\t}\n\t\t\t\tdataTransfer.setData(\"URL\",\"data:text/vnd.tiddler,\" + encodeURIComponent(jsonData));\n\t\t\t\tdataTransfer.setData(\"Text\",titleString);\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\n\t\t\treturn false;\n\t\t}},\n\t\t{name: \"dragend\", handlerFunction: function(event) {\n\t\t\tif(event.target === domNode) {\n\t\t\t\t// Collect the tiddlers being dragged\n\t\t\t\tvar dragTiddler = options.dragTiddlerFn && options.dragTiddlerFn(),\n\t\t\t\t\tdragFilter = options.dragFilterFn && options.dragFilterFn(),\n\t\t\t\t\ttitles = dragTiddler ? [dragTiddler] : [],\n\t\t\t \t\tendActions = options.endActions;\n\t\t\t\tif(dragFilter) {\n\t\t\t\t\ttitles.push.apply(titles,options.widget.wiki.filterTiddlers(dragFilter,options.widget));\n\t\t\t\t}\n\t\t\t\tvar titleString = $tw.utils.stringifyList(titles);\n\t\t\t\t$tw.dragInProgress = null;\n\t\t\t\t// Invoke drag-end actions if given\n\t\t\t\tif(endActions !== undefined) {\n\t\t\t\t\toptions.widget.invokeActionString(endActions,options.widget,event,{actionTiddler: titleString});\n\t\t\t\t}\n\t\t\t\t// Remove the dragging class on the element being dragged\n\t\t\t\t$tw.utils.removeClass(event.target,\"tc-dragging\");\n\t\t\t\t// Delete the drag image element\n\t\t\t\tif(dragImage) {\n\t\t\t\t\tdragImage.parentNode.removeChild(dragImage);\n\t\t\t\t\tdragImage = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}}\n\t]);\n};\n\nexports.importDataTransfer = function(dataTransfer,fallbackTitle,callback) {\n\t// Try each provided data type in turn\n\tif($tw.log.IMPORT) {\n\t\tconsole.log(\"Available data types:\");\n\t\tfor(var type=0; type<dataTransfer.types.length; type++) {\n\t\t\tconsole.log(\"type\",dataTransfer.types[type],dataTransfer.getData(dataTransfer.types[type]))\n\t\t}\n\t}\n\tfor(var t=0; t<importDataTypes.length; t++) {\n\t\tif(!$tw.browser.isIE || importDataTypes[t].IECompatible) {\n\t\t\t// Get the data\n\t\t\tvar dataType = importDataTypes[t];\n\t\t\t\tvar data = dataTransfer.getData(dataType.type);\n\t\t\t// Import the tiddlers in the data\n\t\t\tif(data !== \"\" && data !== null) {\n\t\t\t\tif($tw.log.IMPORT) {\n\t\t\t\t\tconsole.log(\"Importing data type '\" + dataType.type + \"', data: '\" + data + \"'\")\n\t\t\t\t}\n\t\t\t\tvar tiddlerFields = dataType.toTiddlerFieldsArray(data,fallbackTitle);\n\t\t\t\tcallback(tiddlerFields);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar importDataTypes = [\n\t{type: \"text/vnd.tiddler\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn parseJSONTiddlers(data,fallbackTitle);\n\t}},\n\t{type: \"URL\", IECompatible: true, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\t// Check for tiddler data URI\n\t\tvar match = decodeURIComponent(data).match(/^data\\:text\\/vnd\\.tiddler,(.*)/i);\n\t\tif(match) {\n\t\t\treturn parseJSONTiddlers(match[1],fallbackTitle);\n\t\t} else {\n\t\t\treturn [{title: fallbackTitle, text: data}]; // As URL string\n\t\t}\n\t}},\n\t{type: \"text/x-moz-url\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\t// Check for tiddler data URI\n\t\tvar match = decodeURIComponent(data).match(/^data\\:text\\/vnd\\.tiddler,(.*)/i);\n\t\tif(match) {\n\t\t\treturn parseJSONTiddlers(match[1],fallbackTitle);\n\t\t} else {\n\t\t\treturn [{title: fallbackTitle, text: data}]; // As URL string\n\t\t}\n\t}},\n\t{type: \"text/html\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"text/plain\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"Text\", IECompatible: true, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"text/uri-list\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}}\n];\n\nfunction parseJSONTiddlers(json,fallbackTitle) {\n\tvar data = JSON.parse(json);\n\tif(!$tw.utils.isArray(data)) {\n\t\tdata = [data];\n\t}\n\tdata.forEach(function(fields) {\n\t\tfields.title = fields.title || fallbackTitle;\n\t});\n\treturn data;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom/http.js": {
"title": "$:/core/modules/utils/dom/http.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/http.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser HTTP support\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nA quick and dirty HTTP function; to be refactored later. Options are:\n\turl: URL to retrieve\n\theaders: hashmap of headers to send\n\ttype: GET, PUT, POST etc\n\tcallback: function invoked with (err,data,xhr)\n\treturnProp: string name of the property to return as first argument of callback\n*/\nexports.httpRequest = function(options) {\n\tvar type = options.type || \"GET\",\n\t\turl = options.url,\n\t\theaders = options.headers || {accept: \"application/json\"},\n\t\treturnProp = options.returnProp || \"responseText\",\n\t\trequest = new XMLHttpRequest(),\n\t\tdata = \"\",\n\t\tf,results;\n\t// Massage the data hashmap into a string\n\tif(options.data) {\n\t\tif(typeof options.data === \"string\") { // Already a string\n\t\t\tdata = options.data;\n\t\t} else { // A hashmap of strings\n\t\t\tresults = [];\n\t\t\t$tw.utils.each(options.data,function(dataItem,dataItemTitle) {\n\t\t\t\tresults.push(dataItemTitle + \"=\" + encodeURIComponent(dataItem));\n\t\t\t});\n\t\t\tif(type === \"GET\" || type === \"HEAD\") {\n\t\t\t\turl += \"?\" + results.join(\"&\");\n\t\t\t} else {\n\t\t\t\tdata = results.join(\"&\");\n\t\t\t}\n\t\t}\n\t}\n\t// Set up the state change handler\n\trequest.onreadystatechange = function() {\n\t\tif(this.readyState === 4) {\n\t\t\tif(this.status === 200 || this.status === 201 || this.status === 204) {\n\t\t\t\t// Success!\n\t\t\t\toptions.callback(null,this[returnProp],this);\n\t\t\t\treturn;\n\t\t\t}\n\t\t// Something went wrong\n\t\toptions.callback($tw.language.getString(\"Error/XMLHttpRequest\") + \": \" + this.status,null,this);\n\t\t}\n\t};\n\t// Make the request\n\trequest.open(type,url,true);\n\tif(headers) {\n\t\t$tw.utils.each(headers,function(header,headerTitle,object) {\n\t\t\trequest.setRequestHeader(headerTitle,header);\n\t\t});\n\t}\n\tif(data && !$tw.utils.hop(headers,\"Content-type\")) {\n\t\trequest.setRequestHeader(\"Content-type\",\"application/x-www-form-urlencoded; charset=UTF-8\");\n\t}\n\tif(!$tw.utils.hop(headers,\"X-Requested-With\")) {\n\t\trequest.setRequestHeader(\"X-Requested-With\",\"TiddlyWiki\");\n\t}\n\ttry {\n\t\trequest.send(data);\n\t} catch(e) {\n\t\toptions.callback(e,null,this);\n\t}\n\treturn request;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom/keyboard.js": {
"title": "$:/core/modules/utils/dom/keyboard.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/keyboard.js\ntype: application/javascript\nmodule-type: utils\n\nKeyboard utilities; now deprecated. Instead, use $tw.keyboardManager\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n[\"parseKeyDescriptor\",\"checkKeyDescriptor\"].forEach(function(method) {\n\texports[method] = function() {\n\t\tif($tw.keyboardManager) {\n\t\t\treturn $tw.keyboardManager[method].apply($tw.keyboardManager,Array.prototype.slice.call(arguments,0));\n\t\t} else {\n\t\t\treturn null\n\t\t}\n\t};\n});\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom/modal.js": {
"title": "$:/core/modules/utils/dom/modal.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/modal.js\ntype: application/javascript\nmodule-type: utils\n\nModal message mechanism\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar Modal = function(wiki) {\n\tthis.wiki = wiki;\n\tthis.modalCount = 0;\n};\n\n/*\nDisplay a modal dialogue\n\ttitle: Title of tiddler to display\n\toptions: see below\nOptions include:\n\tdownloadLink: Text of a big download link to include\n*/\nModal.prototype.display = function(title,options) {\n\toptions = options || {};\n\tthis.srcDocument = options.variables && (options.variables.rootwindow === \"true\" ||\n\t\t\t\toptions.variables.rootwindow === \"yes\") ? document :\n\t\t\t\t(options.event.event && options.event.event.target ? options.event.event.target.ownerDocument : document);\n\tthis.srcWindow = this.srcDocument.defaultView;\n\tvar self = this,\n\t\trefreshHandler,\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\ttiddler = this.wiki.getTiddler(title);\n\t// Don't do anything if the tiddler doesn't exist\n\tif(!tiddler) {\n\t\treturn;\n\t}\n\t// Create the variables\n\tvar variables = $tw.utils.extend({currentTiddler: title},options.variables);\n\t// Create the wrapper divs\n\tvar wrapper = this.srcDocument.createElement(\"div\"),\n\t\tmodalBackdrop = this.srcDocument.createElement(\"div\"),\n\t\tmodalWrapper = this.srcDocument.createElement(\"div\"),\n\t\tmodalHeader = this.srcDocument.createElement(\"div\"),\n\t\theaderTitle = this.srcDocument.createElement(\"h3\"),\n\t\tmodalBody = this.srcDocument.createElement(\"div\"),\n\t\tmodalLink = this.srcDocument.createElement(\"a\"),\n\t\tmodalFooter = this.srcDocument.createElement(\"div\"),\n\t\tmodalFooterHelp = this.srcDocument.createElement(\"span\"),\n\t\tmodalFooterButtons = this.srcDocument.createElement(\"span\");\n\t// Up the modal count and adjust the body class\n\tthis.modalCount++;\n\tthis.adjustPageClass();\n\t// Add classes\n\t$tw.utils.addClass(wrapper,\"tc-modal-wrapper\");\n\tif(tiddler.fields && tiddler.fields.class) {\n\t\t$tw.utils.addClass(wrapper,tiddler.fields.class);\n\t}\n\t$tw.utils.addClass(modalBackdrop,\"tc-modal-backdrop\");\n\t$tw.utils.addClass(modalWrapper,\"tc-modal\");\n\t$tw.utils.addClass(modalHeader,\"tc-modal-header\");\n\t$tw.utils.addClass(modalBody,\"tc-modal-body\");\n\t$tw.utils.addClass(modalFooter,\"tc-modal-footer\");\n\t// Join them together\n\twrapper.appendChild(modalBackdrop);\n\twrapper.appendChild(modalWrapper);\n\tmodalHeader.appendChild(headerTitle);\n\tmodalWrapper.appendChild(modalHeader);\n\tmodalWrapper.appendChild(modalBody);\n\tmodalFooter.appendChild(modalFooterHelp);\n\tmodalFooter.appendChild(modalFooterButtons);\n\tmodalWrapper.appendChild(modalFooter);\n\t// Render the title of the message\n\tvar headerWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tfield: \"subtitle\",\n\t\tmode: \"inline\",\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\tattributes: {\n\t\t\t\ttext: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: title\n\t\t}}}],\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\theaderWidgetNode.render(headerTitle,null);\n\t// Render the body of the message\n\tvar bodyWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\tbodyWidgetNode.render(modalBody,null);\n\t// Setup the link if present\n\tif(options.downloadLink) {\n\t\tmodalLink.href = options.downloadLink;\n\t\tmodalLink.appendChild(this.srcDocument.createTextNode(\"Right-click to save changes\"));\n\t\tmodalBody.appendChild(modalLink);\n\t}\n\t// Render the footer of the message\n\tif(tiddler.fields && tiddler.fields.help) {\n\t\tvar link = this.srcDocument.createElement(\"a\");\n\t\tlink.setAttribute(\"href\",tiddler.fields.help);\n\t\tlink.setAttribute(\"target\",\"_blank\");\n\t\tlink.setAttribute(\"rel\",\"noopener noreferrer\");\n\t\tlink.appendChild(this.srcDocument.createTextNode(\"Help\"));\n\t\tmodalFooterHelp.appendChild(link);\n\t\tmodalFooterHelp.style.float = \"left\";\n\t}\n\tvar footerWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tfield: \"footer\",\n\t\tmode: \"inline\",\n\t\tchildren: [{\n\t\t\ttype: \"button\",\n\t\t\tattributes: {\n\t\t\t\tmessage: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: \"tm-close-tiddler\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\tattributes: {\n\t\t\t\t\ttext: {\n\t\t\t\t\t\ttype: \"string\",\n\t\t\t\t\t\tvalue: $tw.language.getString(\"Buttons/Close/Caption\")\n\t\t\t}}}\n\t\t]}],\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\tfooterWidgetNode.render(modalFooterButtons,null);\n\t// Set up the refresh handler\n\trefreshHandler = function(changes) {\n\t\theaderWidgetNode.refresh(changes,modalHeader,null);\n\t\tbodyWidgetNode.refresh(changes,modalBody,null);\n\t\tfooterWidgetNode.refresh(changes,modalFooterButtons,null);\n\t};\n\tthis.wiki.addEventListener(\"change\",refreshHandler);\n\t// Add the close event handler\n\tvar closeHandler = function(event) {\n\t\t// Remove our refresh handler\n\t\tself.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t// Decrease the modal count and adjust the body class\n\t\tself.modalCount--;\n\t\tself.adjustPageClass();\n\t\t// Force layout and animate the modal message away\n\t\t$tw.utils.forceLayout(modalBackdrop);\n\t\t$tw.utils.forceLayout(modalWrapper);\n\t\t$tw.utils.setStyle(modalBackdrop,[\n\t\t\t{opacity: \"0\"}\n\t\t]);\n\t\t$tw.utils.setStyle(modalWrapper,[\n\t\t\t{transform: \"translateY(\" + self.srcWindow.innerHeight + \"px)\"}\n\t\t]);\n\t\t// Set up an event for the transition end\n\t\tself.srcWindow.setTimeout(function() {\n\t\t\tif(wrapper.parentNode) {\n\t\t\t\t// Remove the modal message from the DOM\n\t\t\t\tself.srcDocument.body.removeChild(wrapper);\n\t\t\t}\n\t\t},duration);\n\t\t// Don't let anyone else handle the tm-close-tiddler message\n\t\treturn false;\n\t};\n\theaderWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\tbodyWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\tfooterWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\t// Set the initial styles for the message\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{opacity: \"0\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transformOrigin: \"0% 0%\"},\n\t\t{transform: \"translateY(\" + (-this.srcWindow.innerHeight) + \"px)\"}\n\t]);\n\t// Put the message into the document\n\tthis.srcDocument.body.appendChild(wrapper);\n\t// Set up animation for the styles\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{transition: \"opacity \" + duration + \"ms ease-out\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out\"}\n\t]);\n\t// Force layout\n\t$tw.utils.forceLayout(modalBackdrop);\n\t$tw.utils.forceLayout(modalWrapper);\n\t// Set final animated styles\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{opacity: \"0.7\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transform: \"translateY(0px)\"}\n\t]);\n};\n\nModal.prototype.adjustPageClass = function() {\n\tvar windowContainer = $tw.pageContainer ? ($tw.pageContainer === this.srcDocument.body.firstChild ? $tw.pageContainer : this.srcDocument.body.firstChild) : null;\n\tif(windowContainer) {\n\t\t$tw.utils.toggleClass(windowContainer,\"tc-modal-displayed\",this.modalCount > 0);\n\t}\n};\n\nexports.Modal = Modal;\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom/notifier.js": {
"title": "$:/core/modules/utils/dom/notifier.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/notifier.js\ntype: application/javascript\nmodule-type: utils\n\nNotifier mechanism\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar Notifier = function(wiki) {\n\tthis.wiki = wiki;\n};\n\n/*\nDisplay a notification\n\ttitle: Title of tiddler containing the notification text\n\toptions: see below\nOptions include:\n*/\nNotifier.prototype.display = function(title,options) {\n\toptions = options || {};\n\t// Create the wrapper divs\n\tvar self = this,\n\t\tnotification = document.createElement(\"div\"),\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\trefreshHandler;\n\t// Don't do anything if the tiddler doesn't exist\n\tif(!tiddler) {\n\t\treturn;\n\t}\n\t// Add classes\n\t$tw.utils.addClass(notification,\"tc-notification\");\n\t// Create the variables\n\tvar variables = $tw.utils.extend({currentTiddler: title},options.variables);\n\t// Render the body of the notification\n\tvar widgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: document,\n\t\tvariables: variables,\n\t\timportPageMacros: true});\n\twidgetNode.render(notification,null);\n\trefreshHandler = function(changes) {\n\t\twidgetNode.refresh(changes,notification,null);\n\t};\n\tthis.wiki.addEventListener(\"change\",refreshHandler);\n\t// Set the initial styles for the notification\n\t$tw.utils.setStyle(notification,[\n\t\t{opacity: \"0\"},\n\t\t{transformOrigin: \"0% 0%\"},\n\t\t{transform: \"translateY(\" + (-window.innerHeight) + \"px)\"},\n\t\t{transition: \"opacity \" + duration + \"ms ease-out, \" + $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out\"}\n\t]);\n\t// Add the notification to the DOM\n\tdocument.body.appendChild(notification);\n\t// Force layout\n\t$tw.utils.forceLayout(notification);\n\t// Set final animated styles\n\t$tw.utils.setStyle(notification,[\n\t\t{opacity: \"1.0\"},\n\t\t{transform: \"translateY(0px)\"}\n\t]);\n\t// Set a timer to remove the notification\n\twindow.setTimeout(function() {\n\t\t// Remove our change event handler\n\t\tself.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t// Force layout and animate the notification away\n\t\t$tw.utils.forceLayout(notification);\n\t\t$tw.utils.setStyle(notification,[\n\t\t\t{opacity: \"0.0\"},\n\t\t\t{transform: \"translateX(\" + (notification.offsetWidth) + \"px)\"}\n\t\t]);\n\t\t// Remove the modal message from the DOM once the transition ends\n\t\tsetTimeout(function() {\n\t\t\tif(notification.parentNode) {\n\t\t\t\tdocument.body.removeChild(notification);\n\t\t\t}\n\t\t},duration);\n\t},$tw.config.preferences.notificationDuration);\n};\n\nexports.Notifier = Notifier;\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom/popup.js": {
"title": "$:/core/modules/utils/dom/popup.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/popup.js\ntype: application/javascript\nmodule-type: utils\n\nModule that creates a $tw.utils.Popup object prototype that manages popups in the browser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreates a Popup object with these options:\n\trootElement: the DOM element to which the popup zapper should be attached\n*/\nvar Popup = function(options) {\n\toptions = options || {};\n\tthis.rootElement = options.rootElement || document.documentElement;\n\tthis.popups = []; // Array of {title:,wiki:,domNode:} objects\n};\n\n/*\nTrigger a popup open or closed. Parameters are in a hashmap:\n\ttitle: title of the tiddler where the popup details are stored\n\tdomNode: dom node to which the popup will be positioned (one of domNode or domNodeRect is required)\n\tdomNodeRect: rectangle to which the popup will be positioned\n\twiki: wiki\n\tforce: if specified, forces the popup state to true or false (instead of toggling it)\n\tfloating: if true, skips registering the popup, meaning that it will need manually clearing\n*/\nPopup.prototype.triggerPopup = function(options) {\n\t// Check if this popup is already active\n\tvar index = this.findPopup(options.title);\n\t// Compute the new state\n\tvar state = index === -1;\n\tif(options.force !== undefined) {\n\t\tstate = options.force;\n\t}\n\t// Show or cancel the popup according to the new state\n\tif(state) {\n\t\tthis.show(options);\n\t} else {\n\t\tthis.cancel(index);\n\t}\n};\n\nPopup.prototype.findPopup = function(title) {\n\tvar index = -1;\n\tfor(var t=0; t<this.popups.length; t++) {\n\t\tif(this.popups[t].title === title) {\n\t\t\tindex = t;\n\t\t}\n\t}\n\treturn index;\n};\n\nPopup.prototype.handleEvent = function(event) {\n\tif(event.type === \"click\") {\n\t\t// Find out what was clicked on\n\t\tvar info = this.popupInfo(event.target),\n\t\t\tcancelLevel = info.popupLevel - 1;\n\t\t// Don't remove the level that was clicked on if we clicked on a handle\n\t\tif(info.isHandle) {\n\t\t\tcancelLevel++;\n\t\t}\n\t\t// Cancel\n\t\tthis.cancel(cancelLevel);\n\t}\n};\n\n/*\nFind the popup level containing a DOM node. Returns:\npopupLevel: count of the number of nested popups containing the specified element\nisHandle: true if the specified element is within a popup handle\n*/\nPopup.prototype.popupInfo = function(domNode) {\n\tvar isHandle = false,\n\t\tpopupCount = 0,\n\t\tnode = domNode;\n\t// First check ancestors to see if we're within a popup handle\n\twhile(node) {\n\t\tif($tw.utils.hasClass(node,\"tc-popup-handle\")) {\n\t\t\tisHandle = true;\n\t\t\tpopupCount++;\n\t\t}\n\t\tif($tw.utils.hasClass(node,\"tc-popup-keep\")) {\n\t\t\tisHandle = true;\n\t\t}\n\t\tnode = node.parentNode;\n\t}\n\t// Then count the number of ancestor popups\n\tnode = domNode;\n\twhile(node) {\n\t\tif($tw.utils.hasClass(node,\"tc-popup\")) {\n\t\t\tpopupCount++;\n\t\t}\n\t\tnode = node.parentNode;\n\t}\n\tvar info = {\n\t\tpopupLevel: popupCount,\n\t\tisHandle: isHandle\n\t};\n\treturn info;\n};\n\n/*\nDisplay a popup by adding it to the stack\n*/\nPopup.prototype.show = function(options) {\n\t// Find out what was clicked on\n\tvar info = this.popupInfo(options.domNode);\n\t// Cancel any higher level popups\n\tthis.cancel(info.popupLevel);\n\n\t// Store the popup details if not already there\n\tif(!options.floating && this.findPopup(options.title) === -1) {\n\t\tthis.popups.push({\n\t\t\ttitle: options.title,\n\t\t\twiki: options.wiki,\n\t\t\tdomNode: options.domNode,\n\t\t\tnoStateReference: options.noStateReference\n\t\t});\n\t}\n\t// Set the state tiddler\n\tvar rect;\n\tif(options.domNodeRect) {\n\t\trect = options.domNodeRect;\n\t} else {\n\t\trect = {\n\t\t\tleft: options.domNode.offsetLeft,\n\t\t\ttop: options.domNode.offsetTop,\n\t\t\twidth: options.domNode.offsetWidth,\n\t\t\theight: options.domNode.offsetHeight\n\t\t};\n\t}\n\tvar popupRect = \"(\" + rect.left + \",\" + rect.top + \",\" + \n\t\t\t\trect.width + \",\" + rect.height + \")\";\n\tif(options.noStateReference) {\n\t\toptions.wiki.setText(options.title,\"text\",undefined,popupRect);\n\t} else {\n\t\toptions.wiki.setTextReference(options.title,popupRect);\n\t}\n\t// Add the click handler if we have any popups\n\tif(this.popups.length > 0) {\n\t\tthis.rootElement.addEventListener(\"click\",this,true);\t\t\n\t}\n};\n\n/*\nCancel all popups at or above a specified level or DOM node\nlevel: popup level to cancel (0 cancels all popups)\n*/\nPopup.prototype.cancel = function(level) {\n\tvar numPopups = this.popups.length;\n\tlevel = Math.max(0,Math.min(level,numPopups));\n\tfor(var t=level; t<numPopups; t++) {\n\t\tvar popup = this.popups.pop();\n\t\tif(popup.title) {\n\t\t\tif(popup.noStateReference) {\n\t\t\t\tpopup.wiki.deleteTiddler(popup.title);\n\t\t\t} else {\n\t\t\t\tpopup.wiki.deleteTiddler($tw.utils.parseTextReference(popup.title).title);\n \t\t}\n\t\t}\n\t}\n\tif(this.popups.length === 0) {\n\t\tthis.rootElement.removeEventListener(\"click\",this,false);\n\t}\n};\n\n/*\nReturns true if the specified title and text identifies an active popup\n*/\nPopup.prototype.readPopupState = function(text) {\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/;\n\treturn popupLocationRegExp.test(text);\n};\n\nexports.Popup = Popup;\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/dom/scroller.js": {
"title": "$:/core/modules/utils/dom/scroller.js",
"text": "/*\\\ntitle: $:/core/modules/utils/dom/scroller.js\ntype: application/javascript\nmodule-type: utils\n\nModule that creates a $tw.utils.Scroller object prototype that manages scrolling in the browser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nEvent handler for when the `tm-scroll` event hits the document body\n*/\nvar PageScroller = function() {\n\tthis.idRequestFrame = null;\n\tthis.requestAnimationFrame = window.requestAnimationFrame ||\n\t\twindow.webkitRequestAnimationFrame ||\n\t\twindow.mozRequestAnimationFrame ||\n\t\tfunction(callback) {\n\t\t\treturn window.setTimeout(callback, 1000/60);\n\t\t};\n\tthis.cancelAnimationFrame = window.cancelAnimationFrame ||\n\t\twindow.webkitCancelAnimationFrame ||\n\t\twindow.webkitCancelRequestAnimationFrame ||\n\t\twindow.mozCancelAnimationFrame ||\n\t\twindow.mozCancelRequestAnimationFrame ||\n\t\tfunction(id) {\n\t\t\twindow.clearTimeout(id);\n\t\t};\n};\n\nPageScroller.prototype.isScrolling = function() {\n\treturn this.idRequestFrame !== null;\n}\n\nPageScroller.prototype.cancelScroll = function(srcWindow) {\n\tif(this.idRequestFrame) {\n\t\tthis.cancelAnimationFrame.call(srcWindow,this.idRequestFrame);\n\t\tthis.idRequestFrame = null;\n\t}\n};\n\n/*\nHandle an event\n*/\nPageScroller.prototype.handleEvent = function(event) {\n\tif(event.type === \"tm-scroll\") {\n\t\treturn this.scrollIntoView(event.target);\n\t}\n\treturn true;\n};\n\n/*\nHandle a scroll event hitting the page document\n*/\nPageScroller.prototype.scrollIntoView = function(element,callback) {\n\tvar self = this,\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t srcWindow = element ? element.ownerDocument.defaultView : window;\n\t// Now get ready to scroll the body\n\tthis.cancelScroll(srcWindow);\n\tthis.startTime = Date.now();\n\t// Get the height of any position:fixed toolbars\n\tvar toolbar = srcWindow.document.querySelector(\".tc-adjust-top-of-scroll\"),\n\t\toffset = 0;\n\tif(toolbar) {\n\t\toffset = toolbar.offsetHeight;\n\t}\n\t// Get the client bounds of the element and adjust by the scroll position\n\tvar getBounds = function() {\n\t\t\tvar clientBounds = typeof callback === 'function' ? callback() : element.getBoundingClientRect(),\n\t\t\t\tscrollPosition = $tw.utils.getScrollPosition(srcWindow);\n\t\t\treturn {\n\t\t\t\tleft: clientBounds.left + scrollPosition.x,\n\t\t\t\ttop: clientBounds.top + scrollPosition.y - offset,\n\t\t\t\twidth: clientBounds.width,\n\t\t\t\theight: clientBounds.height\n\t\t\t};\n\t\t},\n\t\t// We'll consider the horizontal and vertical scroll directions separately via this function\n\t\t// targetPos/targetSize - position and size of the target element\n\t\t// currentPos/currentSize - position and size of the current scroll viewport\n\t\t// returns: new position of the scroll viewport\n\t\tgetEndPos = function(targetPos,targetSize,currentPos,currentSize) {\n\t\t\tvar newPos = targetPos;\n\t\t\t// If we are scrolling within 50 pixels of the top/left then snap to zero\n\t\t\tif(newPos < 50) {\n\t\t\t\tnewPos = 0;\n\t\t\t}\n\t\t\treturn newPos;\n\t\t},\n\t\tdrawFrame = function drawFrame() {\n\t\t\tvar t;\n\t\t\tif(duration <= 0) {\n\t\t\t\tt = 1;\n\t\t\t} else {\n\t\t\t\tt = ((Date.now()) - self.startTime) / duration;\t\n\t\t\t}\n\t\t\tif(t >= 1) {\n\t\t\t\tself.cancelScroll(srcWindow);\n\t\t\t\tt = 1;\n\t\t\t}\n\t\t\tt = $tw.utils.slowInSlowOut(t);\n\t\t\tvar scrollPosition = $tw.utils.getScrollPosition(srcWindow),\n\t\t\t\tbounds = getBounds(),\n\t\t\t\tendX = getEndPos(bounds.left,bounds.width,scrollPosition.x,srcWindow.innerWidth),\n\t\t\t\tendY = getEndPos(bounds.top,bounds.height,scrollPosition.y,srcWindow.innerHeight);\n\t\t\tsrcWindow.scrollTo(scrollPosition.x + (endX - scrollPosition.x) * t,scrollPosition.y + (endY - scrollPosition.y) * t);\n\t\t\tif(t < 1) {\n\t\t\t\tself.idRequestFrame = self.requestAnimationFrame.call(srcWindow,drawFrame);\n\t\t\t}\n\t\t};\n\tdrawFrame();\n};\n\nexports.PageScroller = PageScroller;\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/edition-info.js": {
"title": "$:/core/modules/utils/edition-info.js",
"text": "/*\\\ntitle: $:/core/modules/utils/edition-info.js\ntype: application/javascript\nmodule-type: utils-node\n\nInformation about the available editions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar fs = require(\"fs\"),\n\tpath = require(\"path\");\n\nvar editionInfo;\n\nexports.getEditionInfo = function() {\n\tif(!editionInfo) {\n\t\t// Enumerate the edition paths\n\t\tvar editionPaths = $tw.getLibraryItemSearchPaths($tw.config.editionsPath,$tw.config.editionsEnvVar);\n\t\teditionInfo = {};\n\t\tfor(var editionIndex=0; editionIndex<editionPaths.length; editionIndex++) {\n\t\t\tvar editionPath = editionPaths[editionIndex];\n\t\t\t// Enumerate the folders\n\t\t\tvar entries = fs.readdirSync(editionPath);\n\t\t\tfor(var entryIndex=0; entryIndex<entries.length; entryIndex++) {\n\t\t\t\tvar entry = entries[entryIndex];\n\t\t\t\t// Check if directories have a valid tiddlywiki.info\n\t\t\t\tif(!editionInfo[entry] && $tw.utils.isDirectory(path.resolve(editionPath,entry))) {\n\t\t\t\t\tvar info;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tinfo = JSON.parse(fs.readFileSync(path.resolve(editionPath,entry,\"tiddlywiki.info\"),\"utf8\"));\n\t\t\t\t\t} catch(ex) {\n\t\t\t\t\t}\n\t\t\t\t\tif(info) {\n\t\t\t\t\t\teditionInfo[entry] = info;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn editionInfo;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils-node"
},
"$:/core/modules/utils/fakedom.js": {
"title": "$:/core/modules/utils/fakedom.js",
"text": "/*\\\ntitle: $:/core/modules/utils/fakedom.js\ntype: application/javascript\nmodule-type: global\n\nA barebones implementation of DOM interfaces needed by the rendering mechanism.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Sequence number used to enable us to track objects for testing\nvar sequenceNumber = null;\n\nvar bumpSequenceNumber = function(object) {\n\tif(sequenceNumber !== null) {\n\t\tobject.sequenceNumber = sequenceNumber++;\n\t}\n};\n\nvar TW_TextNode = function(text) {\n\tbumpSequenceNumber(this);\n\tthis.textContent = text + \"\";\n};\n\nObject.defineProperty(TW_TextNode.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn 3;\n\t}\n});\n\nObject.defineProperty(TW_TextNode.prototype, \"formattedTextContent\", {\n\tget: function() {\n\t\treturn this.textContent.replace(/(\\r?\\n)/g,\"\");\n\t}\n});\n\nvar TW_Element = function(tag,namespace) {\n\tbumpSequenceNumber(this);\n\tthis.isTiddlyWikiFakeDom = true;\n\tthis.tag = tag;\n\tthis.attributes = {};\n\tthis.isRaw = false;\n\tthis.children = [];\n\tthis._style = {};\n\tthis.namespaceURI = namespace || \"http://www.w3.org/1999/xhtml\";\n};\n\nObject.defineProperty(TW_Element.prototype, \"style\", {\n\tget: function() {\n\t\treturn this._style;\n\t},\n\tset: function(str) {\n\t\tvar self = this;\n\t\tstr = str || \"\";\n\t\t$tw.utils.each(str.split(\";\"),function(declaration) {\n\t\t\tvar parts = declaration.split(\":\"),\n\t\t\t\tname = $tw.utils.trim(parts[0]),\n\t\t\t\tvalue = $tw.utils.trim(parts[1]);\n\t\t\tif(name && value) {\n\t\t\t\tself._style[$tw.utils.convertStyleNameToPropertyName(name)] = value;\n\t\t\t}\n\t\t});\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn 1;\n\t}\n});\n\nTW_Element.prototype.getAttribute = function(name) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot getAttribute on a raw TW_Element\";\n\t}\n\treturn this.attributes[name];\n};\n\nTW_Element.prototype.setAttribute = function(name,value) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot setAttribute on a raw TW_Element\";\n\t}\n\tthis.attributes[name] = value + \"\";\n};\n\nTW_Element.prototype.setAttributeNS = function(namespace,name,value) {\n\tthis.setAttribute(name,value);\n};\n\nTW_Element.prototype.removeAttribute = function(name) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot removeAttribute on a raw TW_Element\";\n\t}\n\tif($tw.utils.hop(this.attributes,name)) {\n\t\tdelete this.attributes[name];\n\t}\n};\n\nTW_Element.prototype.appendChild = function(node) {\n\tthis.children.push(node);\n\tnode.parentNode = this;\n};\n\nTW_Element.prototype.insertBefore = function(node,nextSibling) {\n\tif(nextSibling) {\n\t\tvar p = this.children.indexOf(nextSibling);\n\t\tif(p !== -1) {\n\t\t\tthis.children.splice(p,0,node);\n\t\t\tnode.parentNode = this;\n\t\t} else {\n\t\t\tthis.appendChild(node);\n\t\t}\n\t} else {\n\t\tthis.appendChild(node);\n\t}\n};\n\nTW_Element.prototype.removeChild = function(node) {\n\tvar p = this.children.indexOf(node);\n\tif(p !== -1) {\n\t\tthis.children.splice(p,1);\n\t}\n};\n\nTW_Element.prototype.hasChildNodes = function() {\n\treturn !!this.children.length;\n};\n\nObject.defineProperty(TW_Element.prototype, \"childNodes\", {\n\tget: function() {\n\t\treturn this.children;\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"firstChild\", {\n\tget: function() {\n\t\treturn this.children[0];\n\t}\n});\n\nTW_Element.prototype.addEventListener = function(type,listener,useCapture) {\n\t// Do nothing\n};\n\nObject.defineProperty(TW_Element.prototype, \"tagName\", {\n\tget: function() {\n\t\treturn this.tag || \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"className\", {\n\tget: function() {\n\t\treturn this.attributes[\"class\"] || \"\";\n\t},\n\tset: function(value) {\n\t\tthis.attributes[\"class\"] = value + \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"value\", {\n\tget: function() {\n\t\treturn this.attributes.value || \"\";\n\t},\n\tset: function(value) {\n\t\tthis.attributes.value = value + \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"outerHTML\", {\n\tget: function() {\n\t\tvar output = [],attr,a,v;\n\t\toutput.push(\"<\",this.tag);\n\t\tif(this.attributes) {\n\t\t\tattr = [];\n\t\t\tfor(a in this.attributes) {\n\t\t\t\tattr.push(a);\n\t\t\t}\n\t\t\tattr.sort();\n\t\t\tfor(a=0; a<attr.length; a++) {\n\t\t\t\tv = this.attributes[attr[a]];\n\t\t\t\tif(v !== undefined) {\n\t\t\t\t\toutput.push(\" \",attr[a],\"=\\\"\",$tw.utils.htmlEncode(v),\"\\\"\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif(this._style) {\n\t\t\tvar style = [];\n\t\t\tfor(var s in this._style) {\n\t\t\t\tstyle.push($tw.utils.convertPropertyNameToStyleName(s) + \":\" + this._style[s] + \";\");\n\t\t\t}\n\t\t\tif(style.length > 0) {\n\t\t\t\toutput.push(\" style=\\\"\",style.join(\"\"),\"\\\"\");\n\t\t\t}\n\t\t}\n\t\toutput.push(\">\");\n\t\tif($tw.config.htmlVoidElements.indexOf(this.tag) === -1) {\n\t\t\toutput.push(this.innerHTML);\n\t\t\toutput.push(\"</\",this.tag,\">\");\n\t\t}\n\t\treturn output.join(\"\");\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"innerHTML\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\treturn this.rawHTML;\n\t\t} else {\n\t\t\tvar b = [];\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tif(node instanceof TW_Element) {\n\t\t\t\t\tb.push(node.outerHTML);\n\t\t\t\t} else if(node instanceof TW_TextNode) {\n\t\t\t\t\tb.push($tw.utils.htmlEncode(node.textContent));\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn b.join(\"\");\n\t\t}\n\t},\n\tset: function(value) {\n\t\tthis.isRaw = true;\n\t\tthis.rawHTML = value;\n\t\tthis.rawTextContent = null;\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"textInnerHTML\", {\n\tset: function(value) {\n\t\tif(this.isRaw) {\n\t\t\tthis.rawTextContent = value;\n\t\t} else {\n\t\t\tthrow \"Cannot set textInnerHTML of a non-raw TW_Element\";\n\t\t}\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"textContent\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\tif(this.rawTextContent === null) {\n\t\t\t\treturn \"\";\n\t\t\t} else {\n\t\t\t\treturn this.rawTextContent;\n\t\t\t}\n\t\t} else {\n\t\t\tvar b = [];\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tb.push(node.textContent);\n\t\t\t});\n\t\t\treturn b.join(\"\");\n\t\t}\n\t},\n\tset: function(value) {\n\t\tthis.children = [new TW_TextNode(value)];\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"formattedTextContent\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\treturn \"\";\n\t\t} else {\n\t\t\tvar b = [],\n\t\t\t\tisBlock = $tw.config.htmlBlockElements.indexOf(this.tag) !== -1;\n\t\t\tif(isBlock) {\n\t\t\t\tb.push(\"\\n\");\n\t\t\t}\n\t\t\tif(this.tag === \"li\") {\n\t\t\t\tb.push(\"* \");\n\t\t\t}\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tb.push(node.formattedTextContent);\n\t\t\t});\n\t\t\tif(isBlock) {\n\t\t\t\tb.push(\"\\n\");\n\t\t\t}\n\t\t\treturn b.join(\"\");\n\t\t}\n\t}\n});\n\nvar document = {\n\tsetSequenceNumber: function(value) {\n\t\tsequenceNumber = value;\n\t},\n\tcreateElementNS: function(namespace,tag) {\n\t\treturn new TW_Element(tag,namespace);\n\t},\n\tcreateElement: function(tag) {\n\t\treturn new TW_Element(tag);\n\t},\n\tcreateTextNode: function(text) {\n\t\treturn new TW_TextNode(text);\n\t},\n\tcompatMode: \"CSS1Compat\", // For KaTeX to know that we're not a browser in quirks mode\n\tisTiddlyWikiFakeDom: true\n};\n\nexports.fakeDocument = document;\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/utils/filesystem.js": {
"title": "$:/core/modules/utils/filesystem.js",
"text": "/*\\\ntitle: $:/core/modules/utils/filesystem.js\ntype: application/javascript\nmodule-type: utils-node\n\nFile system utilities\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar fs = require(\"fs\"),\n\tpath = require(\"path\");\n\n/*\nRecursively (and synchronously) copy a directory and all its content\n*/\nexports.copyDirectory = function(srcPath,dstPath) {\n\t// Remove any trailing path separators\n\tsrcPath = $tw.utils.removeTrailingSeparator(srcPath);\n\tdstPath = $tw.utils.removeTrailingSeparator(dstPath);\n\t// Create the destination directory\n\tvar err = $tw.utils.createDirectory(dstPath);\n\tif(err) {\n\t\treturn err;\n\t}\n\t// Function to copy a folder full of files\n\tvar copy = function(srcPath,dstPath) {\n\t\tvar srcStats = fs.lstatSync(srcPath),\n\t\t\tdstExists = fs.existsSync(dstPath);\n\t\tif(srcStats.isFile()) {\n\t\t\t$tw.utils.copyFile(srcPath,dstPath);\n\t\t} else if(srcStats.isDirectory()) {\n\t\t\tvar items = fs.readdirSync(srcPath);\n\t\t\tfor(var t=0; t<items.length; t++) {\n\t\t\t\tvar item = items[t],\n\t\t\t\t\terr = copy(srcPath + path.sep + item,dstPath + path.sep + item);\n\t\t\t\tif(err) {\n\t\t\t\t\treturn err;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\tcopy(srcPath,dstPath);\n\treturn null;\n};\n\n/*\nCopy a file\n*/\nvar FILE_BUFFER_LENGTH = 64 * 1024,\n\tfileBuffer;\n\nexports.copyFile = function(srcPath,dstPath) {\n\t// Create buffer if required\n\tif(!fileBuffer) {\n\t\tfileBuffer = Buffer.alloc(FILE_BUFFER_LENGTH);\n\t}\n\t// Create any directories in the destination\n\t$tw.utils.createDirectory(path.dirname(dstPath));\n\t// Copy the file\n\tvar srcFile = fs.openSync(srcPath,\"r\"),\n\t\tdstFile = fs.openSync(dstPath,\"w\"),\n\t\tbytesRead = 1,\n\t\tpos = 0;\n\twhile (bytesRead > 0) {\n\t\tbytesRead = fs.readSync(srcFile,fileBuffer,0,FILE_BUFFER_LENGTH,pos);\n\t\tfs.writeSync(dstFile,fileBuffer,0,bytesRead);\n\t\tpos += bytesRead;\n\t}\n\tfs.closeSync(srcFile);\n\tfs.closeSync(dstFile);\n\treturn null;\n};\n\n/*\nRemove trailing path separator\n*/\nexports.removeTrailingSeparator = function(dirPath) {\n\tvar len = dirPath.length;\n\tif(dirPath.charAt(len-1) === path.sep) {\n\t\tdirPath = dirPath.substr(0,len-1);\n\t}\n\treturn dirPath;\n};\n\n/*\nRecursively create a directory\n*/\nexports.createDirectory = function(dirPath) {\n\tif(dirPath.substr(dirPath.length-1,1) !== path.sep) {\n\t\tdirPath = dirPath + path.sep;\n\t}\n\tvar pos = 1;\n\tpos = dirPath.indexOf(path.sep,pos);\n\twhile(pos !== -1) {\n\t\tvar subDirPath = dirPath.substr(0,pos);\n\t\tif(!$tw.utils.isDirectory(subDirPath)) {\n\t\t\ttry {\n\t\t\t\tfs.mkdirSync(subDirPath);\n\t\t\t} catch(e) {\n\t\t\t\treturn \"Error creating directory '\" + subDirPath + \"'\";\n\t\t\t}\n\t\t}\n\t\tpos = dirPath.indexOf(path.sep,pos + 1);\n\t}\n\treturn null;\n};\n\n/*\nRecursively create directories needed to contain a specified file\n*/\nexports.createFileDirectories = function(filePath) {\n\treturn $tw.utils.createDirectory(path.dirname(filePath));\n};\n\n/*\nRecursively delete a directory\n*/\nexports.deleteDirectory = function(dirPath) {\n\tif(fs.existsSync(dirPath)) {\n\t\tvar entries = fs.readdirSync(dirPath);\n\t\tfor(var entryIndex=0; entryIndex<entries.length; entryIndex++) {\n\t\t\tvar currPath = dirPath + path.sep + entries[entryIndex];\n\t\t\tif(fs.lstatSync(currPath).isDirectory()) {\n\t\t\t\t$tw.utils.deleteDirectory(currPath);\n\t\t\t} else {\n\t\t\t\tfs.unlinkSync(currPath);\n\t\t\t}\n\t\t}\n\tfs.rmdirSync(dirPath);\n\t}\n\treturn null;\n};\n\n/*\nCheck if a path identifies a directory\n*/\nexports.isDirectory = function(dirPath) {\n\treturn fs.existsSync(dirPath) && fs.statSync(dirPath).isDirectory();\n};\n\n/*\nCheck if a path identifies a directory that is empty\n*/\nexports.isDirectoryEmpty = function(dirPath) {\n\tif(!$tw.utils.isDirectory(dirPath)) {\n\t\treturn false;\n\t}\n\tvar files = fs.readdirSync(dirPath),\n\t\tempty = true;\n\t$tw.utils.each(files,function(file,index) {\n\t\tif(file.charAt(0) !== \".\") {\n\t\t\tempty = false;\n\t\t}\n\t});\n\treturn empty;\n};\n\n/*\nRecursively delete a tree of empty directories\n*/\nexports.deleteEmptyDirs = function(dirpath,callback) {\n\tvar self = this;\n\tfs.readdir(dirpath,function(err,files) {\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\tif(files.length > 0) {\n\t\t\treturn callback(null);\n\t\t}\n\t\tfs.rmdir(dirpath,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tself.deleteEmptyDirs(path.dirname(dirpath),callback);\n\t\t});\n\t});\n};\n\n/*\nCreate a fileInfo object for saving a tiddler:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\nOptions include:\n\tdirectory: absolute path of root directory to which we are saving\n\tpathFilters: optional array of filters to be used to generate the base path\n\twiki: optional wiki for evaluating the pathFilters\n*/\nexports.generateTiddlerFileInfo = function(tiddler,options) {\n\tvar fileInfo = {};\n\t// Check if the tiddler has any unsafe fields that can't be expressed in a .tid or .meta file: containing control characters, or leading/trailing whitespace\n\tvar hasUnsafeFields = false;\n\t$tw.utils.each(tiddler.getFieldStrings(),function(value,fieldName) {\n\t\tif(fieldName !== \"text\") {\n\t\t\thasUnsafeFields = hasUnsafeFields || /[\\x00-\\x1F]/mg.test(value);\n\t\t\thasUnsafeFields = hasUnsafeFields || ($tw.utils.trim(value) !== value);\n\t\t}\n\t});\n\t// Check for field values \n\tif(hasUnsafeFields) {\n\t\t// Save as a JSON file\n\t\tfileInfo.type = \"application/json\";\n\t\tfileInfo.hasMetaFile = false;\n\t} else {\n\t\t// Save as a .tid or a text/binary file plus a .meta file\n\t\tvar tiddlerType = tiddler.fields.type || \"text/vnd.tiddlywiki\";\n\t\tif(tiddlerType === \"text/vnd.tiddlywiki\") {\n\t\t\t// Save as a .tid file\n\t\t\tfileInfo.type = \"application/x-tiddler\";\n\t\t\tfileInfo.hasMetaFile = false;\n\t\t} else {\n\t\t\t// Save as a text/binary file and a .meta file\n\t\t\tfileInfo.type = tiddlerType;\n\t\t\tfileInfo.hasMetaFile = true;\n\t\t}\n\t}\n\t// Take the file extension from the tiddler content type\n\tvar contentTypeInfo = $tw.config.contentTypeInfo[fileInfo.type] || {extension: \"\"};\n\t// Generate the filepath\n\tfileInfo.filepath = $tw.utils.generateTiddlerFilepath(tiddler.fields.title,{\n\t\textension: contentTypeInfo.extension,\n\t\tdirectory: options.directory,\n\t\tpathFilters: options.pathFilters,\n\t\twiki: options.wiki\n\t});\n\treturn fileInfo;\n};\n\n/*\nGenerate the filepath for saving a tiddler\nOptions include:\n\textension: file extension to be added the finished filepath\n\tdirectory: absolute path of root directory to which we are saving\n\tpathFilters: optional array of filters to be used to generate the base path\n\twiki: optional wiki for evaluating the pathFilters\n*/\nexports.generateTiddlerFilepath = function(title,options) {\n\tvar self = this,\n\t\tdirectory = options.directory || \"\",\n\t\textension = options.extension || \"\",\n\t\tfilepath;\n\t// Check if any of the pathFilters applies\n\tif(options.pathFilters && options.wiki) {\n\t\t$tw.utils.each(options.pathFilters,function(filter) {\n\t\t\tif(!filepath) {\n\t\t\t\tvar source = options.wiki.makeTiddlerIterator([title]),\n\t\t\t\t\tresult = options.wiki.filterTiddlers(filter,null,source);\n\t\t\t\tif(result.length > 0) {\n\t\t\t\t\tfilepath = result[0];\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\t// If not, generate a base pathname\n\tif(!filepath) {\n\t\tfilepath = title;\n\t\t// If the filepath already ends in the extension then remove it\n\t\tif(filepath.substring(filepath.length - extension.length) === extension) {\n\t\t\tfilepath = filepath.substring(0,filepath.length - extension.length);\n\t\t}\n\t\t// Remove any forward or backward slashes so we don't create directories\n\t\tfilepath = filepath.replace(/\\/|\\\\/g,\"_\");\n\t}\n\t// Don't let the filename start with a dot because such files are invisible on *nix\n\tfilepath = filepath.replace(/^\\./g,\"_\");\n\t// Remove any characters that can't be used in cross-platform filenames\n\tfilepath = $tw.utils.transliterate(filepath.replace(/<|>|\\:|\\\"|\\||\\?|\\*|\\^/g,\"_\"));\n\t// Truncate the filename if it is too long\n\tif(filepath.length > 200) {\n\t\tfilepath = filepath.substr(0,200);\n\t}\n\t// If the resulting filename is blank (eg because the title is just punctuation characters)\n\tif(!filepath) {\n\t\t// ...then just use the character codes of the title\n\t\tfilepath = \"\";\t\n\t\t$tw.utils.each(title.split(\"\"),function(char) {\n\t\t\tif(filepath) {\n\t\t\t\tfilepath += \"-\";\n\t\t\t}\n\t\t\tfilepath += char.charCodeAt(0).toString();\n\t\t});\n\t}\n\t// Add a uniquifier if the file already exists\n\tvar fullPath,\n\t\tcount = 0;\n\tdo {\n\t\tfullPath = path.resolve(directory,filepath + (count ? \"_\" + count : \"\") + extension);\n\t\tcount++;\n\t} while(fs.existsSync(fullPath));\n\t// Return the full path to the file\n\treturn fullPath;\n};\n\n/*\nSave a tiddler to a file described by the fileInfo:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n*/\nexports.saveTiddlerToFile = function(tiddler,fileInfo,callback) {\n\t$tw.utils.createDirectory(path.dirname(fileInfo.filepath));\n\tif(fileInfo.hasMetaFile) {\n\t\t// Save the tiddler as a separate body and meta file\n\t\tvar typeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/plain\"] || {encoding: \"utf8\"};\n\t\tfs.writeFile(fileInfo.filepath,tiddler.fields.text,typeInfo.encoding,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tfs.writeFile(fileInfo.filepath + \".meta\",tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}),\"utf8\",callback);\n\t\t});\n\t} else {\n\t\t// Save the tiddler as a self contained templated file\n\t\tif(fileInfo.type === \"application/x-tiddler\") {\n\t\t\tfs.writeFile(fileInfo.filepath,tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}) + (!!tiddler.fields.text ? \"\\n\\n\" + tiddler.fields.text : \"\"),\"utf8\",callback);\n\t\t} else {\n\t\t\tfs.writeFile(fileInfo.filepath,JSON.stringify([tiddler.getFieldStrings({exclude: [\"bag\"]})],null,$tw.config.preferences.jsonSpaces),\"utf8\",callback);\n\t\t}\n\t}\n};\n\n/*\nSave a tiddler to a file described by the fileInfo:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n*/\nexports.saveTiddlerToFileSync = function(tiddler,fileInfo) {\n\t$tw.utils.createDirectory(path.dirname(fileInfo.filepath));\n\tif(fileInfo.hasMetaFile) {\n\t\t// Save the tiddler as a separate body and meta file\n\t\tvar typeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/plain\"] || {encoding: \"utf8\"};\n\t\tfs.writeFileSync(fileInfo.filepath,tiddler.fields.text,typeInfo.encoding);\n\t\tfs.writeFileSync(fileInfo.filepath + \".meta\",tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}),\"utf8\");\n\t} else {\n\t\t// Save the tiddler as a self contained templated file\n\t\tif(fileInfo.type === \"application/x-tiddler\") {\n\t\t\tfs.writeFileSync(fileInfo.filepath,tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}) + (!!tiddler.fields.text ? \"\\n\\n\" + tiddler.fields.text : \"\"),\"utf8\");\n\t\t} else {\n\t\t\tfs.writeFileSync(fileInfo.filepath,JSON.stringify([tiddler.getFieldStrings({exclude: [\"bag\"]})],null,$tw.config.preferences.jsonSpaces),\"utf8\");\n\t\t}\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils-node"
},
"$:/core/modules/utils/logger.js": {
"title": "$:/core/modules/utils/logger.js",
"text": "/*\\\ntitle: $:/core/modules/utils/logger.js\ntype: application/javascript\nmodule-type: utils\n\nA basic logging implementation\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ALERT_TAG = \"$:/tags/Alert\";\n\n/*\nMake a new logger\n*/\nfunction Logger(componentName,options) {\n\toptions = options || {};\n\tthis.componentName = componentName || \"\";\n\tthis.colour = options.colour || \"white\";\n\tthis.enable = \"enable\" in options ? options.enable : true;\n\tthis.save = \"save\" in options ? options.save : true;\n\tthis.saveLimit = options.saveLimit || 100 * 1024;\n\tthis.saveBufferLogger = this;\n\tthis.buffer = \"\";\n\tthis.alertCount = 0;\n}\n\nLogger.prototype.setSaveBuffer = function(logger) {\n\tthis.saveBufferLogger = logger;\n};\n\n/*\nLog a message\n*/\nLogger.prototype.log = function(/* args */) {\n\tvar self = this;\n\tif(this.enable) {\n\t\tif(this.saveBufferLogger.save) {\n\t\t\tthis.saveBufferLogger.buffer += $tw.utils.formatDateString(new Date(),\"YYYY MM DD 0hh:0mm:0ss.0XXX\") + \":\";\n\t\t\t$tw.utils.each(Array.prototype.slice.call(arguments,0),function(arg,index) {\n\t\t\t\tself.saveBufferLogger.buffer += \" \" + arg;\n\t\t\t});\n\t\t\tthis.saveBufferLogger.buffer += \"\\n\";\n\t\t\tthis.saveBufferLogger.buffer = this.saveBufferLogger.buffer.slice(-this.saveBufferLogger.saveLimit);\t\t\t\n\t\t}\n\t\tif(console !== undefined && console.log !== undefined) {\n\t\t\treturn Function.apply.call(console.log, console, [$tw.utils.terminalColour(this.colour),this.componentName + \":\"].concat(Array.prototype.slice.call(arguments,0)).concat($tw.utils.terminalColour()));\n\t\t}\n\t} \n};\n\n/*\nRead the message buffer\n*/\nLogger.prototype.getBuffer = function() {\n\treturn this.saveBufferLogger.buffer;\n};\n\n/*\nLog a structure as a table\n*/\nLogger.prototype.table = function(value) {\n\t(console.table || console.log)(value);\n};\n\n/*\nAlert a message\n*/\nLogger.prototype.alert = function(/* args */) {\n\tif(this.enable) {\n\t\t// Prepare the text of the alert\n\t\tvar text = Array.prototype.join.call(arguments,\" \");\n\t\t// Create alert tiddlers in the browser\n\t\tif($tw.browser) {\n\t\t\t// Check if there is an existing alert with the same text and the same component\n\t\t\tvar existingAlerts = $tw.wiki.getTiddlersWithTag(ALERT_TAG),\n\t\t\t\talertFields,\n\t\t\t\texistingCount,\n\t\t\t\tself = this;\n\t\t\t$tw.utils.each(existingAlerts,function(title) {\n\t\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\t\tif(tiddler.fields.text === text && tiddler.fields.component === self.componentName && tiddler.fields.modified && (!alertFields || tiddler.fields.modified < alertFields.modified)) {\n\t\t\t\t\t\talertFields = $tw.utils.extend({},tiddler.fields);\n\t\t\t\t}\n\t\t\t});\n\t\t\tif(alertFields) {\n\t\t\t\texistingCount = alertFields.count || 1;\n\t\t\t} else {\n\t\t\t\talertFields = {\n\t\t\t\t\ttitle: $tw.wiki.generateNewTitle(\"$:/temp/alerts/alert\",{prefix: \"\"}),\n\t\t\t\t\ttext: text,\n\t\t\t\t\ttags: [ALERT_TAG],\n\t\t\t\t\tcomponent: this.componentName\n\t\t\t\t};\n\t\t\t\texistingCount = 0;\n\t\t\t\tthis.alertCount += 1;\n\t\t\t}\n\t\t\talertFields.modified = new Date();\n\t\t\tif(++existingCount > 1) {\n\t\t\t\talertFields.count = existingCount;\n\t\t\t} else {\n\t\t\t\talertFields.count = undefined;\n\t\t\t}\n\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler(alertFields));\n\t\t\t// Log the alert as well\n\t\t\tthis.log.apply(this,Array.prototype.slice.call(arguments,0));\n\t\t} else {\n\t\t\t// Print an orange message to the console if not in the browser\n\t\t\tconsole.error(\"\\x1b[1;33m\" + text + \"\\x1b[0m\");\n\t\t}\t\t\n\t}\n};\n\n/*\nClear outstanding alerts\n*/\nLogger.prototype.clearAlerts = function() {\n\tvar self = this;\n\tif($tw.browser && this.alertCount > 0) {\n\t\t$tw.utils.each($tw.wiki.getTiddlersWithTag(ALERT_TAG),function(title) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\tif(tiddler.fields.component === self.componentName) {\n\t\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t\t}\n\t\t});\n\t\tthis.alertCount = 0;\n\t}\n};\n\nexports.Logger = Logger;\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/parsetree.js": {
"title": "$:/core/modules/utils/parsetree.js",
"text": "/*\\\ntitle: $:/core/modules/utils/parsetree.js\ntype: application/javascript\nmodule-type: utils\n\nParse tree utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.addAttributeToParseTreeNode = function(node,name,value) {\n\tnode.attributes = node.attributes || {};\n\tnode.attributes[name] = {type: \"string\", value: value};\n};\n\nexports.getAttributeValueFromParseTreeNode = function(node,name,defaultValue) {\n\tif(node.attributes && node.attributes[name] && node.attributes[name].value !== undefined) {\n\t\treturn node.attributes[name].value;\n\t}\n\treturn defaultValue;\n};\n\nexports.addClassToParseTreeNode = function(node,classString) {\n\tvar classes = [];\n\tnode.attributes = node.attributes || {};\n\tnode.attributes[\"class\"] = node.attributes[\"class\"] || {type: \"string\", value: \"\"};\n\tif(node.attributes[\"class\"].type === \"string\") {\n\t\tif(node.attributes[\"class\"].value !== \"\") {\n\t\t\tclasses = node.attributes[\"class\"].value.split(\" \");\n\t\t}\n\t\tif(classString !== \"\") {\n\t\t\t$tw.utils.pushTop(classes,classString.split(\" \"));\n\t\t}\n\t\tnode.attributes[\"class\"].value = classes.join(\" \");\n\t}\n};\n\nexports.addStyleToParseTreeNode = function(node,name,value) {\n\t\tnode.attributes = node.attributes || {};\n\t\tnode.attributes.style = node.attributes.style || {type: \"string\", value: \"\"};\n\t\tif(node.attributes.style.type === \"string\") {\n\t\t\tnode.attributes.style.value += name + \":\" + value + \";\";\n\t\t}\n};\n\nexports.findParseTreeNode = function(nodeArray,search) {\n\tfor(var t=0; t<nodeArray.length; t++) {\n\t\tif(nodeArray[t].type === search.type && nodeArray[t].tag === search.tag) {\n\t\t\treturn nodeArray[t];\n\t\t}\n\t}\n\treturn undefined;\n};\n\n/*\nHelper to get the text of a parse tree node or array of nodes\n*/\nexports.getParseTreeText = function getParseTreeText(tree) {\n\tvar output = [];\n\tif($tw.utils.isArray(tree)) {\n\t\t$tw.utils.each(tree,function(node) {\n\t\t\toutput.push(getParseTreeText(node));\n\t\t});\n\t} else {\n\t\tif(tree.type === \"text\") {\n\t\t\toutput.push(tree.text);\n\t\t}\n\t\tif(tree.children) {\n\t\t\treturn getParseTreeText(tree.children);\n\t\t}\n\t}\n\treturn output.join(\"\");\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/performance.js": {
"title": "$:/core/modules/utils/performance.js",
"text": "/*\\\ntitle: $:/core/modules/utils/performance.js\ntype: application/javascript\nmodule-type: global\n\nPerformance measurement.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction Performance(enabled) {\n\tthis.enabled = !!enabled;\n\tthis.measures = {}; // Hashmap by measurement name of {time:, invocations:}\n\tthis.logger = new $tw.utils.Logger(\"performance\");\n\tthis.showGreeting();\n}\n\nPerformance.prototype.showGreeting = function() {\n\tif($tw.browser) {\n\t\tthis.logger.log(\"Execute $tw.perf.log(); to see filter execution timings\");\t\t\n\t}\n};\n\n/*\nWrap performance reporting around a top level function\n*/\nPerformance.prototype.report = function(name,fn) {\n\tvar self = this;\n\tif(this.enabled) {\n\t\treturn function() {\n\t\t\tvar startTime = $tw.utils.timer(),\n\t\t\t\tresult = fn.apply(this,arguments);\n\t\t\tself.logger.log(name + \": \" + $tw.utils.timer(startTime).toFixed(2) + \"ms\");\n\t\t\treturn result;\n\t\t};\n\t} else {\n\t\treturn fn;\n\t}\n};\n\nPerformance.prototype.log = function() {\n\tvar self = this,\n\t\ttotalTime = 0,\n\t\torderedMeasures = Object.keys(this.measures).sort(function(a,b) {\n\t\t\tif(self.measures[a].time > self.measures[b].time) {\n\t\t\t\treturn -1;\n\t\t\t} else if (self.measures[a].time < self.measures[b].time) {\n\t\t\t\treturn + 1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t});\n\t$tw.utils.each(orderedMeasures,function(name) {\n\t\ttotalTime += self.measures[name].time;\n\t});\n\tvar results = []\n\t$tw.utils.each(orderedMeasures,function(name) {\n\t\tvar measure = self.measures[name];\n\t\tresults.push({name: name,invocations: measure.invocations, avgTime: measure.time / measure.invocations, totalTime: measure.time, percentTime: (measure.time / totalTime) * 100})\n\t});\n\tself.logger.table(results);\n};\n\n/*\nWrap performance measurements around a subfunction\n*/\nPerformance.prototype.measure = function(name,fn) {\n\tvar self = this;\n\tif(this.enabled) {\n\t\treturn function() {\n\t\t\tvar startTime = $tw.utils.timer(),\n\t\t\t\tresult = fn.apply(this,arguments);\n\t\t\tif(!(name in self.measures)) {\n\t\t\t\tself.measures[name] = {time: 0, invocations: 0};\n\t\t\t}\n\t\t\tself.measures[name].time += $tw.utils.timer(startTime);\n\t\t\tself.measures[name].invocations++;\n\t\t\treturn result;\n\t\t};\n\t} else {\n\t\treturn fn;\n\t}\n};\n\nexports.Performance = Performance;\n\n})();\n",
"type": "application/javascript",
"module-type": "global"
},
"$:/core/modules/utils/pluginmaker.js": {
"title": "$:/core/modules/utils/pluginmaker.js",
"text": "/*\\\ntitle: $:/core/modules/utils/pluginmaker.js\ntype: application/javascript\nmodule-type: utils\n\nA quick and dirty way to pack up plugins within the browser.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRepack a plugin, and then delete any non-shadow payload tiddlers\n*/\nexports.repackPlugin = function(title,additionalTiddlers,excludeTiddlers) {\n\tadditionalTiddlers = additionalTiddlers || [];\n\texcludeTiddlers = excludeTiddlers || [];\n\t// Get the plugin tiddler\n\tvar pluginTiddler = $tw.wiki.getTiddler(title);\n\tif(!pluginTiddler) {\n\t\tthrow \"No such tiddler as \" + title;\n\t}\n\t// Extract the JSON\n\tvar jsonPluginTiddler;\n\ttry {\n\t\tjsonPluginTiddler = JSON.parse(pluginTiddler.fields.text);\n\t} catch(e) {\n\t\tthrow \"Cannot parse plugin tiddler \" + title + \"\\n\" + $tw.language.getString(\"Error/Caption\") + \": \" + e;\n\t}\n\t// Get the list of tiddlers\n\tvar tiddlers = Object.keys(jsonPluginTiddler.tiddlers);\n\t// Add the additional tiddlers\n\t$tw.utils.pushTop(tiddlers,additionalTiddlers);\n\t// Remove any excluded tiddlers\n\tfor(var t=tiddlers.length-1; t>=0; t--) {\n\t\tif(excludeTiddlers.indexOf(tiddlers[t]) !== -1) {\n\t\t\ttiddlers.splice(t,1);\n\t\t}\n\t}\n\t// Pack up the tiddlers into a block of JSON\n\tvar plugins = {};\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = $tw.wiki.getTiddler(title),\n\t\t\tfields = {};\n\t\t$tw.utils.each(tiddler.fields,function (value,name) {\n\t\t\tfields[name] = tiddler.getFieldString(name);\n\t\t});\n\t\tplugins[title] = fields;\n\t});\n\t// Retrieve and bump the version number\n\tvar pluginVersion = $tw.utils.parseVersion(pluginTiddler.getFieldString(\"version\") || \"0.0.0\") || {\n\t\t\tmajor: \"0\",\n\t\t\tminor: \"0\",\n\t\t\tpatch: \"0\"\n\t\t};\n\tpluginVersion.patch++;\n\tvar version = pluginVersion.major + \".\" + pluginVersion.minor + \".\" + pluginVersion.patch;\n\tif(pluginVersion.prerelease) {\n\t\tversion += \"-\" + pluginVersion.prerelease;\n\t}\n\tif(pluginVersion.build) {\n\t\tversion += \"+\" + pluginVersion.build;\n\t}\n\t// Save the tiddler\n\t$tw.wiki.addTiddler(new $tw.Tiddler(pluginTiddler,{text: JSON.stringify({tiddlers: plugins},null,4), version: version}));\n\t// Delete any non-shadow constituent tiddlers\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tif($tw.wiki.tiddlerExists(title)) {\n\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t}\n\t});\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\t// Return a heartwarming confirmation\n\treturn \"Plugin \" + title + \" successfully saved\";\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/transliterate.js": {
"title": "$:/core/modules/utils/transliterate.js",
"text": "/*\\\ntitle: $:/core/modules/utils/transliterate.js\ntype: application/javascript\nmodule-type: utils\n\nTransliteration static utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nTransliterate string to ASCII\n\n(Some pairs taken from http://semplicewebsites.com/removing-accents-javascript)\n*/\nexports.transliterationPairs = {\n\t\"Á\":\"A\",\n\t\"Ă\":\"A\",\n\t\"Ắ\":\"A\",\n\t\"Ặ\":\"A\",\n\t\"Ằ\":\"A\",\n\t\"Ẳ\":\"A\",\n\t\"Ẵ\":\"A\",\n\t\"Ǎ\":\"A\",\n\t\"Â\":\"A\",\n\t\"Ấ\":\"A\",\n\t\"Ậ\":\"A\",\n\t\"Ầ\":\"A\",\n\t\"Ẩ\":\"A\",\n\t\"Ẫ\":\"A\",\n\t\"Ä\":\"A\",\n\t\"Ǟ\":\"A\",\n\t\"Ȧ\":\"A\",\n\t\"Ǡ\":\"A\",\n\t\"Ạ\":\"A\",\n\t\"Ȁ\":\"A\",\n\t\"À\":\"A\",\n\t\"Ả\":\"A\",\n\t\"Ȃ\":\"A\",\n\t\"Ā\":\"A\",\n\t\"Ą\":\"A\",\n\t\"Å\":\"A\",\n\t\"Ǻ\":\"A\",\n\t\"Ḁ\":\"A\",\n\t\"Ⱥ\":\"A\",\n\t\"Ã\":\"A\",\n\t\"Ꜳ\":\"AA\",\n\t\"Æ\":\"AE\",\n\t\"Ǽ\":\"AE\",\n\t\"Ǣ\":\"AE\",\n\t\"Ꜵ\":\"AO\",\n\t\"Ꜷ\":\"AU\",\n\t\"Ꜹ\":\"AV\",\n\t\"Ꜻ\":\"AV\",\n\t\"Ꜽ\":\"AY\",\n\t\"Ḃ\":\"B\",\n\t\"Ḅ\":\"B\",\n\t\"Ɓ\":\"B\",\n\t\"Ḇ\":\"B\",\n\t\"Ƀ\":\"B\",\n\t\"Ƃ\":\"B\",\n\t\"Ć\":\"C\",\n\t\"Č\":\"C\",\n\t\"Ç\":\"C\",\n\t\"Ḉ\":\"C\",\n\t\"Ĉ\":\"C\",\n\t\"Ċ\":\"C\",\n\t\"Ƈ\":\"C\",\n\t\"Ȼ\":\"C\",\n\t\"Ď\":\"D\",\n\t\"Ḑ\":\"D\",\n\t\"Ḓ\":\"D\",\n\t\"Ḋ\":\"D\",\n\t\"Ḍ\":\"D\",\n\t\"Ɗ\":\"D\",\n\t\"Ḏ\":\"D\",\n\t\"Dz\":\"D\",\n\t\"Dž\":\"D\",\n\t\"Đ\":\"D\",\n\t\"Ƌ\":\"D\",\n\t\"DZ\":\"DZ\",\n\t\"DŽ\":\"DZ\",\n\t\"É\":\"E\",\n\t\"Ĕ\":\"E\",\n\t\"Ě\":\"E\",\n\t\"Ȩ\":\"E\",\n\t\"Ḝ\":\"E\",\n\t\"Ê\":\"E\",\n\t\"Ế\":\"E\",\n\t\"Ệ\":\"E\",\n\t\"Ề\":\"E\",\n\t\"Ể\":\"E\",\n\t\"Ễ\":\"E\",\n\t\"Ḙ\":\"E\",\n\t\"Ë\":\"E\",\n\t\"Ė\":\"E\",\n\t\"Ẹ\":\"E\",\n\t\"Ȅ\":\"E\",\n\t\"È\":\"E\",\n\t\"Ẻ\":\"E\",\n\t\"Ȇ\":\"E\",\n\t\"Ē\":\"E\",\n\t\"Ḗ\":\"E\",\n\t\"Ḕ\":\"E\",\n\t\"Ę\":\"E\",\n\t\"Ɇ\":\"E\",\n\t\"Ẽ\":\"E\",\n\t\"Ḛ\":\"E\",\n\t\"Ꝫ\":\"ET\",\n\t\"Ḟ\":\"F\",\n\t\"Ƒ\":\"F\",\n\t\"Ǵ\":\"G\",\n\t\"Ğ\":\"G\",\n\t\"Ǧ\":\"G\",\n\t\"Ģ\":\"G\",\n\t\"Ĝ\":\"G\",\n\t\"Ġ\":\"G\",\n\t\"Ɠ\":\"G\",\n\t\"Ḡ\":\"G\",\n\t\"Ǥ\":\"G\",\n\t\"Ḫ\":\"H\",\n\t\"Ȟ\":\"H\",\n\t\"Ḩ\":\"H\",\n\t\"Ĥ\":\"H\",\n\t\"Ⱨ\":\"H\",\n\t\"Ḧ\":\"H\",\n\t\"Ḣ\":\"H\",\n\t\"Ḥ\":\"H\",\n\t\"Ħ\":\"H\",\n\t\"Í\":\"I\",\n\t\"Ĭ\":\"I\",\n\t\"Ǐ\":\"I\",\n\t\"Î\":\"I\",\n\t\"Ï\":\"I\",\n\t\"Ḯ\":\"I\",\n\t\"İ\":\"I\",\n\t\"Ị\":\"I\",\n\t\"Ȉ\":\"I\",\n\t\"Ì\":\"I\",\n\t\"Ỉ\":\"I\",\n\t\"Ȋ\":\"I\",\n\t\"Ī\":\"I\",\n\t\"Į\":\"I\",\n\t\"Ɨ\":\"I\",\n\t\"Ĩ\":\"I\",\n\t\"Ḭ\":\"I\",\n\t\"Ꝺ\":\"D\",\n\t\"Ꝼ\":\"F\",\n\t\"Ᵹ\":\"G\",\n\t\"Ꞃ\":\"R\",\n\t\"Ꞅ\":\"S\",\n\t\"Ꞇ\":\"T\",\n\t\"Ꝭ\":\"IS\",\n\t\"Ĵ\":\"J\",\n\t\"Ɉ\":\"J\",\n\t\"Ḱ\":\"K\",\n\t\"Ǩ\":\"K\",\n\t\"Ķ\":\"K\",\n\t\"Ⱪ\":\"K\",\n\t\"Ꝃ\":\"K\",\n\t\"Ḳ\":\"K\",\n\t\"Ƙ\":\"K\",\n\t\"Ḵ\":\"K\",\n\t\"Ꝁ\":\"K\",\n\t\"Ꝅ\":\"K\",\n\t\"Ĺ\":\"L\",\n\t\"Ƚ\":\"L\",\n\t\"Ľ\":\"L\",\n\t\"Ļ\":\"L\",\n\t\"Ḽ\":\"L\",\n\t\"Ḷ\":\"L\",\n\t\"Ḹ\":\"L\",\n\t\"Ⱡ\":\"L\",\n\t\"Ꝉ\":\"L\",\n\t\"Ḻ\":\"L\",\n\t\"Ŀ\":\"L\",\n\t\"Ɫ\":\"L\",\n\t\"Lj\":\"L\",\n\t\"Ł\":\"L\",\n\t\"LJ\":\"LJ\",\n\t\"Ḿ\":\"M\",\n\t\"Ṁ\":\"M\",\n\t\"Ṃ\":\"M\",\n\t\"Ɱ\":\"M\",\n\t\"Ń\":\"N\",\n\t\"Ň\":\"N\",\n\t\"Ņ\":\"N\",\n\t\"Ṋ\":\"N\",\n\t\"Ṅ\":\"N\",\n\t\"Ṇ\":\"N\",\n\t\"Ǹ\":\"N\",\n\t\"Ɲ\":\"N\",\n\t\"Ṉ\":\"N\",\n\t\"Ƞ\":\"N\",\n\t\"Nj\":\"N\",\n\t\"Ñ\":\"N\",\n\t\"NJ\":\"NJ\",\n\t\"Ó\":\"O\",\n\t\"Ŏ\":\"O\",\n\t\"Ǒ\":\"O\",\n\t\"Ô\":\"O\",\n\t\"Ố\":\"O\",\n\t\"Ộ\":\"O\",\n\t\"Ồ\":\"O\",\n\t\"Ổ\":\"O\",\n\t\"Ỗ\":\"O\",\n\t\"Ö\":\"O\",\n\t\"Ȫ\":\"O\",\n\t\"Ȯ\":\"O\",\n\t\"Ȱ\":\"O\",\n\t\"Ọ\":\"O\",\n\t\"Ő\":\"O\",\n\t\"Ȍ\":\"O\",\n\t\"Ò\":\"O\",\n\t\"Ỏ\":\"O\",\n\t\"Ơ\":\"O\",\n\t\"Ớ\":\"O\",\n\t\"Ợ\":\"O\",\n\t\"Ờ\":\"O\",\n\t\"Ở\":\"O\",\n\t\"Ỡ\":\"O\",\n\t\"Ȏ\":\"O\",\n\t\"Ꝋ\":\"O\",\n\t\"Ꝍ\":\"O\",\n\t\"Ō\":\"O\",\n\t\"Ṓ\":\"O\",\n\t\"Ṑ\":\"O\",\n\t\"Ɵ\":\"O\",\n\t\"Ǫ\":\"O\",\n\t\"Ǭ\":\"O\",\n\t\"Ø\":\"O\",\n\t\"Ǿ\":\"O\",\n\t\"Õ\":\"O\",\n\t\"Ṍ\":\"O\",\n\t\"Ṏ\":\"O\",\n\t\"Ȭ\":\"O\",\n\t\"Ƣ\":\"OI\",\n\t\"Ꝏ\":\"OO\",\n\t\"Ɛ\":\"E\",\n\t\"Ɔ\":\"O\",\n\t\"Ȣ\":\"OU\",\n\t\"Ṕ\":\"P\",\n\t\"Ṗ\":\"P\",\n\t\"Ꝓ\":\"P\",\n\t\"Ƥ\":\"P\",\n\t\"Ꝕ\":\"P\",\n\t\"Ᵽ\":\"P\",\n\t\"Ꝑ\":\"P\",\n\t\"Ꝙ\":\"Q\",\n\t\"Ꝗ\":\"Q\",\n\t\"Ŕ\":\"R\",\n\t\"Ř\":\"R\",\n\t\"Ŗ\":\"R\",\n\t\"Ṙ\":\"R\",\n\t\"Ṛ\":\"R\",\n\t\"Ṝ\":\"R\",\n\t\"Ȑ\":\"R\",\n\t\"Ȓ\":\"R\",\n\t\"Ṟ\":\"R\",\n\t\"Ɍ\":\"R\",\n\t\"Ɽ\":\"R\",\n\t\"Ꜿ\":\"C\",\n\t\"Ǝ\":\"E\",\n\t\"Ś\":\"S\",\n\t\"Ṥ\":\"S\",\n\t\"Š\":\"S\",\n\t\"Ṧ\":\"S\",\n\t\"Ş\":\"S\",\n\t\"Ŝ\":\"S\",\n\t\"Ș\":\"S\",\n\t\"Ṡ\":\"S\",\n\t\"Ṣ\":\"S\",\n\t\"Ṩ\":\"S\",\n\t\"Ť\":\"T\",\n\t\"Ţ\":\"T\",\n\t\"Ṱ\":\"T\",\n\t\"Ț\":\"T\",\n\t\"Ⱦ\":\"T\",\n\t\"Ṫ\":\"T\",\n\t\"Ṭ\":\"T\",\n\t\"Ƭ\":\"T\",\n\t\"Ṯ\":\"T\",\n\t\"Ʈ\":\"T\",\n\t\"Ŧ\":\"T\",\n\t\"Ɐ\":\"A\",\n\t\"Ꞁ\":\"L\",\n\t\"Ɯ\":\"M\",\n\t\"Ʌ\":\"V\",\n\t\"Ꜩ\":\"TZ\",\n\t\"Ú\":\"U\",\n\t\"Ŭ\":\"U\",\n\t\"Ǔ\":\"U\",\n\t\"Û\":\"U\",\n\t\"Ṷ\":\"U\",\n\t\"Ü\":\"U\",\n\t\"Ǘ\":\"U\",\n\t\"Ǚ\":\"U\",\n\t\"Ǜ\":\"U\",\n\t\"Ǖ\":\"U\",\n\t\"Ṳ\":\"U\",\n\t\"Ụ\":\"U\",\n\t\"Ű\":\"U\",\n\t\"Ȕ\":\"U\",\n\t\"Ù\":\"U\",\n\t\"Ủ\":\"U\",\n\t\"Ư\":\"U\",\n\t\"Ứ\":\"U\",\n\t\"Ự\":\"U\",\n\t\"Ừ\":\"U\",\n\t\"Ử\":\"U\",\n\t\"Ữ\":\"U\",\n\t\"Ȗ\":\"U\",\n\t\"Ū\":\"U\",\n\t\"Ṻ\":\"U\",\n\t\"Ų\":\"U\",\n\t\"Ů\":\"U\",\n\t\"Ũ\":\"U\",\n\t\"Ṹ\":\"U\",\n\t\"Ṵ\":\"U\",\n\t\"Ꝟ\":\"V\",\n\t\"Ṿ\":\"V\",\n\t\"Ʋ\":\"V\",\n\t\"Ṽ\":\"V\",\n\t\"Ꝡ\":\"VY\",\n\t\"Ẃ\":\"W\",\n\t\"Ŵ\":\"W\",\n\t\"Ẅ\":\"W\",\n\t\"Ẇ\":\"W\",\n\t\"Ẉ\":\"W\",\n\t\"Ẁ\":\"W\",\n\t\"Ⱳ\":\"W\",\n\t\"Ẍ\":\"X\",\n\t\"Ẋ\":\"X\",\n\t\"Ý\":\"Y\",\n\t\"Ŷ\":\"Y\",\n\t\"Ÿ\":\"Y\",\n\t\"Ẏ\":\"Y\",\n\t\"Ỵ\":\"Y\",\n\t\"Ỳ\":\"Y\",\n\t\"Ƴ\":\"Y\",\n\t\"Ỷ\":\"Y\",\n\t\"Ỿ\":\"Y\",\n\t\"Ȳ\":\"Y\",\n\t\"Ɏ\":\"Y\",\n\t\"Ỹ\":\"Y\",\n\t\"Ź\":\"Z\",\n\t\"Ž\":\"Z\",\n\t\"Ẑ\":\"Z\",\n\t\"Ⱬ\":\"Z\",\n\t\"Ż\":\"Z\",\n\t\"Ẓ\":\"Z\",\n\t\"Ȥ\":\"Z\",\n\t\"Ẕ\":\"Z\",\n\t\"Ƶ\":\"Z\",\n\t\"IJ\":\"IJ\",\n\t\"Œ\":\"OE\",\n\t\"ᴀ\":\"A\",\n\t\"ᴁ\":\"AE\",\n\t\"ʙ\":\"B\",\n\t\"ᴃ\":\"B\",\n\t\"ᴄ\":\"C\",\n\t\"ᴅ\":\"D\",\n\t\"ᴇ\":\"E\",\n\t\"ꜰ\":\"F\",\n\t\"ɢ\":\"G\",\n\t\"ʛ\":\"G\",\n\t\"ʜ\":\"H\",\n\t\"ɪ\":\"I\",\n\t\"ʁ\":\"R\",\n\t\"ᴊ\":\"J\",\n\t\"ᴋ\":\"K\",\n\t\"ʟ\":\"L\",\n\t\"ᴌ\":\"L\",\n\t\"ᴍ\":\"M\",\n\t\"ɴ\":\"N\",\n\t\"ᴏ\":\"O\",\n\t\"ɶ\":\"OE\",\n\t\"ᴐ\":\"O\",\n\t\"ᴕ\":\"OU\",\n\t\"ᴘ\":\"P\",\n\t\"ʀ\":\"R\",\n\t\"ᴎ\":\"N\",\n\t\"ᴙ\":\"R\",\n\t\"ꜱ\":\"S\",\n\t\"ᴛ\":\"T\",\n\t\"ⱻ\":\"E\",\n\t\"ᴚ\":\"R\",\n\t\"ᴜ\":\"U\",\n\t\"ᴠ\":\"V\",\n\t\"ᴡ\":\"W\",\n\t\"ʏ\":\"Y\",\n\t\"ᴢ\":\"Z\",\n\t\"á\":\"a\",\n\t\"ă\":\"a\",\n\t\"ắ\":\"a\",\n\t\"ặ\":\"a\",\n\t\"ằ\":\"a\",\n\t\"ẳ\":\"a\",\n\t\"ẵ\":\"a\",\n\t\"ǎ\":\"a\",\n\t\"â\":\"a\",\n\t\"ấ\":\"a\",\n\t\"ậ\":\"a\",\n\t\"ầ\":\"a\",\n\t\"ẩ\":\"a\",\n\t\"ẫ\":\"a\",\n\t\"ä\":\"a\",\n\t\"ǟ\":\"a\",\n\t\"ȧ\":\"a\",\n\t\"ǡ\":\"a\",\n\t\"ạ\":\"a\",\n\t\"ȁ\":\"a\",\n\t\"à\":\"a\",\n\t\"ả\":\"a\",\n\t\"ȃ\":\"a\",\n\t\"ā\":\"a\",\n\t\"ą\":\"a\",\n\t\"ᶏ\":\"a\",\n\t\"ẚ\":\"a\",\n\t\"å\":\"a\",\n\t\"ǻ\":\"a\",\n\t\"ḁ\":\"a\",\n\t\"ⱥ\":\"a\",\n\t\"ã\":\"a\",\n\t\"ꜳ\":\"aa\",\n\t\"æ\":\"ae\",\n\t\"ǽ\":\"ae\",\n\t\"ǣ\":\"ae\",\n\t\"ꜵ\":\"ao\",\n\t\"ꜷ\":\"au\",\n\t\"ꜹ\":\"av\",\n\t\"ꜻ\":\"av\",\n\t\"ꜽ\":\"ay\",\n\t\"ḃ\":\"b\",\n\t\"ḅ\":\"b\",\n\t\"ɓ\":\"b\",\n\t\"ḇ\":\"b\",\n\t\"ᵬ\":\"b\",\n\t\"ᶀ\":\"b\",\n\t\"ƀ\":\"b\",\n\t\"ƃ\":\"b\",\n\t\"ɵ\":\"o\",\n\t\"ć\":\"c\",\n\t\"č\":\"c\",\n\t\"ç\":\"c\",\n\t\"ḉ\":\"c\",\n\t\"ĉ\":\"c\",\n\t\"ɕ\":\"c\",\n\t\"ċ\":\"c\",\n\t\"ƈ\":\"c\",\n\t\"ȼ\":\"c\",\n\t\"ď\":\"d\",\n\t\"ḑ\":\"d\",\n\t\"ḓ\":\"d\",\n\t\"ȡ\":\"d\",\n\t\"ḋ\":\"d\",\n\t\"ḍ\":\"d\",\n\t\"ɗ\":\"d\",\n\t\"ᶑ\":\"d\",\n\t\"ḏ\":\"d\",\n\t\"ᵭ\":\"d\",\n\t\"ᶁ\":\"d\",\n\t\"đ\":\"d\",\n\t\"ɖ\":\"d\",\n\t\"ƌ\":\"d\",\n\t\"ı\":\"i\",\n\t\"ȷ\":\"j\",\n\t\"ɟ\":\"j\",\n\t\"ʄ\":\"j\",\n\t\"dz\":\"dz\",\n\t\"dž\":\"dz\",\n\t\"é\":\"e\",\n\t\"ĕ\":\"e\",\n\t\"ě\":\"e\",\n\t\"ȩ\":\"e\",\n\t\"ḝ\":\"e\",\n\t\"ê\":\"e\",\n\t\"ế\":\"e\",\n\t\"ệ\":\"e\",\n\t\"ề\":\"e\",\n\t\"ể\":\"e\",\n\t\"ễ\":\"e\",\n\t\"ḙ\":\"e\",\n\t\"ë\":\"e\",\n\t\"ė\":\"e\",\n\t\"ẹ\":\"e\",\n\t\"ȅ\":\"e\",\n\t\"è\":\"e\",\n\t\"ẻ\":\"e\",\n\t\"ȇ\":\"e\",\n\t\"ē\":\"e\",\n\t\"ḗ\":\"e\",\n\t\"ḕ\":\"e\",\n\t\"ⱸ\":\"e\",\n\t\"ę\":\"e\",\n\t\"ᶒ\":\"e\",\n\t\"ɇ\":\"e\",\n\t\"ẽ\":\"e\",\n\t\"ḛ\":\"e\",\n\t\"ꝫ\":\"et\",\n\t\"ḟ\":\"f\",\n\t\"ƒ\":\"f\",\n\t\"ᵮ\":\"f\",\n\t\"ᶂ\":\"f\",\n\t\"ǵ\":\"g\",\n\t\"ğ\":\"g\",\n\t\"ǧ\":\"g\",\n\t\"ģ\":\"g\",\n\t\"ĝ\":\"g\",\n\t\"ġ\":\"g\",\n\t\"ɠ\":\"g\",\n\t\"ḡ\":\"g\",\n\t\"ᶃ\":\"g\",\n\t\"ǥ\":\"g\",\n\t\"ḫ\":\"h\",\n\t\"ȟ\":\"h\",\n\t\"ḩ\":\"h\",\n\t\"ĥ\":\"h\",\n\t\"ⱨ\":\"h\",\n\t\"ḧ\":\"h\",\n\t\"ḣ\":\"h\",\n\t\"ḥ\":\"h\",\n\t\"ɦ\":\"h\",\n\t\"ẖ\":\"h\",\n\t\"ħ\":\"h\",\n\t\"ƕ\":\"hv\",\n\t\"í\":\"i\",\n\t\"ĭ\":\"i\",\n\t\"ǐ\":\"i\",\n\t\"î\":\"i\",\n\t\"ï\":\"i\",\n\t\"ḯ\":\"i\",\n\t\"ị\":\"i\",\n\t\"ȉ\":\"i\",\n\t\"ì\":\"i\",\n\t\"ỉ\":\"i\",\n\t\"ȋ\":\"i\",\n\t\"ī\":\"i\",\n\t\"į\":\"i\",\n\t\"ᶖ\":\"i\",\n\t\"ɨ\":\"i\",\n\t\"ĩ\":\"i\",\n\t\"ḭ\":\"i\",\n\t\"ꝺ\":\"d\",\n\t\"ꝼ\":\"f\",\n\t\"ᵹ\":\"g\",\n\t\"ꞃ\":\"r\",\n\t\"ꞅ\":\"s\",\n\t\"ꞇ\":\"t\",\n\t\"ꝭ\":\"is\",\n\t\"ǰ\":\"j\",\n\t\"ĵ\":\"j\",\n\t\"ʝ\":\"j\",\n\t\"ɉ\":\"j\",\n\t\"ḱ\":\"k\",\n\t\"ǩ\":\"k\",\n\t\"ķ\":\"k\",\n\t\"ⱪ\":\"k\",\n\t\"ꝃ\":\"k\",\n\t\"ḳ\":\"k\",\n\t\"ƙ\":\"k\",\n\t\"ḵ\":\"k\",\n\t\"ᶄ\":\"k\",\n\t\"ꝁ\":\"k\",\n\t\"ꝅ\":\"k\",\n\t\"ĺ\":\"l\",\n\t\"ƚ\":\"l\",\n\t\"ɬ\":\"l\",\n\t\"ľ\":\"l\",\n\t\"ļ\":\"l\",\n\t\"ḽ\":\"l\",\n\t\"ȴ\":\"l\",\n\t\"ḷ\":\"l\",\n\t\"ḹ\":\"l\",\n\t\"ⱡ\":\"l\",\n\t\"ꝉ\":\"l\",\n\t\"ḻ\":\"l\",\n\t\"ŀ\":\"l\",\n\t\"ɫ\":\"l\",\n\t\"ᶅ\":\"l\",\n\t\"ɭ\":\"l\",\n\t\"ł\":\"l\",\n\t\"lj\":\"lj\",\n\t\"ſ\":\"s\",\n\t\"ẜ\":\"s\",\n\t\"ẛ\":\"s\",\n\t\"ẝ\":\"s\",\n\t\"ḿ\":\"m\",\n\t\"ṁ\":\"m\",\n\t\"ṃ\":\"m\",\n\t\"ɱ\":\"m\",\n\t\"ᵯ\":\"m\",\n\t\"ᶆ\":\"m\",\n\t\"ń\":\"n\",\n\t\"ň\":\"n\",\n\t\"ņ\":\"n\",\n\t\"ṋ\":\"n\",\n\t\"ȵ\":\"n\",\n\t\"ṅ\":\"n\",\n\t\"ṇ\":\"n\",\n\t\"ǹ\":\"n\",\n\t\"ɲ\":\"n\",\n\t\"ṉ\":\"n\",\n\t\"ƞ\":\"n\",\n\t\"ᵰ\":\"n\",\n\t\"ᶇ\":\"n\",\n\t\"ɳ\":\"n\",\n\t\"ñ\":\"n\",\n\t\"nj\":\"nj\",\n\t\"ó\":\"o\",\n\t\"ŏ\":\"o\",\n\t\"ǒ\":\"o\",\n\t\"ô\":\"o\",\n\t\"ố\":\"o\",\n\t\"ộ\":\"o\",\n\t\"ồ\":\"o\",\n\t\"ổ\":\"o\",\n\t\"ỗ\":\"o\",\n\t\"ö\":\"o\",\n\t\"ȫ\":\"o\",\n\t\"ȯ\":\"o\",\n\t\"ȱ\":\"o\",\n\t\"ọ\":\"o\",\n\t\"ő\":\"o\",\n\t\"ȍ\":\"o\",\n\t\"ò\":\"o\",\n\t\"ỏ\":\"o\",\n\t\"ơ\":\"o\",\n\t\"ớ\":\"o\",\n\t\"ợ\":\"o\",\n\t\"ờ\":\"o\",\n\t\"ở\":\"o\",\n\t\"ỡ\":\"o\",\n\t\"ȏ\":\"o\",\n\t\"ꝋ\":\"o\",\n\t\"ꝍ\":\"o\",\n\t\"ⱺ\":\"o\",\n\t\"ō\":\"o\",\n\t\"ṓ\":\"o\",\n\t\"ṑ\":\"o\",\n\t\"ǫ\":\"o\",\n\t\"ǭ\":\"o\",\n\t\"ø\":\"o\",\n\t\"ǿ\":\"o\",\n\t\"õ\":\"o\",\n\t\"ṍ\":\"o\",\n\t\"ṏ\":\"o\",\n\t\"ȭ\":\"o\",\n\t\"ƣ\":\"oi\",\n\t\"ꝏ\":\"oo\",\n\t\"ɛ\":\"e\",\n\t\"ᶓ\":\"e\",\n\t\"ɔ\":\"o\",\n\t\"ᶗ\":\"o\",\n\t\"ȣ\":\"ou\",\n\t\"ṕ\":\"p\",\n\t\"ṗ\":\"p\",\n\t\"ꝓ\":\"p\",\n\t\"ƥ\":\"p\",\n\t\"ᵱ\":\"p\",\n\t\"ᶈ\":\"p\",\n\t\"ꝕ\":\"p\",\n\t\"ᵽ\":\"p\",\n\t\"ꝑ\":\"p\",\n\t\"ꝙ\":\"q\",\n\t\"ʠ\":\"q\",\n\t\"ɋ\":\"q\",\n\t\"ꝗ\":\"q\",\n\t\"ŕ\":\"r\",\n\t\"ř\":\"r\",\n\t\"ŗ\":\"r\",\n\t\"ṙ\":\"r\",\n\t\"ṛ\":\"r\",\n\t\"ṝ\":\"r\",\n\t\"ȑ\":\"r\",\n\t\"ɾ\":\"r\",\n\t\"ᵳ\":\"r\",\n\t\"ȓ\":\"r\",\n\t\"ṟ\":\"r\",\n\t\"ɼ\":\"r\",\n\t\"ᵲ\":\"r\",\n\t\"ᶉ\":\"r\",\n\t\"ɍ\":\"r\",\n\t\"ɽ\":\"r\",\n\t\"ↄ\":\"c\",\n\t\"ꜿ\":\"c\",\n\t\"ɘ\":\"e\",\n\t\"ɿ\":\"r\",\n\t\"ś\":\"s\",\n\t\"ṥ\":\"s\",\n\t\"š\":\"s\",\n\t\"ṧ\":\"s\",\n\t\"ş\":\"s\",\n\t\"ŝ\":\"s\",\n\t\"ș\":\"s\",\n\t\"ṡ\":\"s\",\n\t\"ṣ\":\"s\",\n\t\"ṩ\":\"s\",\n\t\"ʂ\":\"s\",\n\t\"ᵴ\":\"s\",\n\t\"ᶊ\":\"s\",\n\t\"ȿ\":\"s\",\n\t\"ɡ\":\"g\",\n\t\"ᴑ\":\"o\",\n\t\"ᴓ\":\"o\",\n\t\"ᴝ\":\"u\",\n\t\"ť\":\"t\",\n\t\"ţ\":\"t\",\n\t\"ṱ\":\"t\",\n\t\"ț\":\"t\",\n\t\"ȶ\":\"t\",\n\t\"ẗ\":\"t\",\n\t\"ⱦ\":\"t\",\n\t\"ṫ\":\"t\",\n\t\"ṭ\":\"t\",\n\t\"ƭ\":\"t\",\n\t\"ṯ\":\"t\",\n\t\"ᵵ\":\"t\",\n\t\"ƫ\":\"t\",\n\t\"ʈ\":\"t\",\n\t\"ŧ\":\"t\",\n\t\"ᵺ\":\"th\",\n\t\"ɐ\":\"a\",\n\t\"ᴂ\":\"ae\",\n\t\"ǝ\":\"e\",\n\t\"ᵷ\":\"g\",\n\t\"ɥ\":\"h\",\n\t\"ʮ\":\"h\",\n\t\"ʯ\":\"h\",\n\t\"ᴉ\":\"i\",\n\t\"ʞ\":\"k\",\n\t\"ꞁ\":\"l\",\n\t\"ɯ\":\"m\",\n\t\"ɰ\":\"m\",\n\t\"ᴔ\":\"oe\",\n\t\"ɹ\":\"r\",\n\t\"ɻ\":\"r\",\n\t\"ɺ\":\"r\",\n\t\"ⱹ\":\"r\",\n\t\"ʇ\":\"t\",\n\t\"ʌ\":\"v\",\n\t\"ʍ\":\"w\",\n\t\"ʎ\":\"y\",\n\t\"ꜩ\":\"tz\",\n\t\"ú\":\"u\",\n\t\"ŭ\":\"u\",\n\t\"ǔ\":\"u\",\n\t\"û\":\"u\",\n\t\"ṷ\":\"u\",\n\t\"ü\":\"u\",\n\t\"ǘ\":\"u\",\n\t\"ǚ\":\"u\",\n\t\"ǜ\":\"u\",\n\t\"ǖ\":\"u\",\n\t\"ṳ\":\"u\",\n\t\"ụ\":\"u\",\n\t\"ű\":\"u\",\n\t\"ȕ\":\"u\",\n\t\"ù\":\"u\",\n\t\"ủ\":\"u\",\n\t\"ư\":\"u\",\n\t\"ứ\":\"u\",\n\t\"ự\":\"u\",\n\t\"ừ\":\"u\",\n\t\"ử\":\"u\",\n\t\"ữ\":\"u\",\n\t\"ȗ\":\"u\",\n\t\"ū\":\"u\",\n\t\"ṻ\":\"u\",\n\t\"ų\":\"u\",\n\t\"ᶙ\":\"u\",\n\t\"ů\":\"u\",\n\t\"ũ\":\"u\",\n\t\"ṹ\":\"u\",\n\t\"ṵ\":\"u\",\n\t\"ᵫ\":\"ue\",\n\t\"ꝸ\":\"um\",\n\t\"ⱴ\":\"v\",\n\t\"ꝟ\":\"v\",\n\t\"ṿ\":\"v\",\n\t\"ʋ\":\"v\",\n\t\"ᶌ\":\"v\",\n\t\"ⱱ\":\"v\",\n\t\"ṽ\":\"v\",\n\t\"ꝡ\":\"vy\",\n\t\"ẃ\":\"w\",\n\t\"ŵ\":\"w\",\n\t\"ẅ\":\"w\",\n\t\"ẇ\":\"w\",\n\t\"ẉ\":\"w\",\n\t\"ẁ\":\"w\",\n\t\"ⱳ\":\"w\",\n\t\"ẘ\":\"w\",\n\t\"ẍ\":\"x\",\n\t\"ẋ\":\"x\",\n\t\"ᶍ\":\"x\",\n\t\"ý\":\"y\",\n\t\"ŷ\":\"y\",\n\t\"ÿ\":\"y\",\n\t\"ẏ\":\"y\",\n\t\"ỵ\":\"y\",\n\t\"ỳ\":\"y\",\n\t\"ƴ\":\"y\",\n\t\"ỷ\":\"y\",\n\t\"ỿ\":\"y\",\n\t\"ȳ\":\"y\",\n\t\"ẙ\":\"y\",\n\t\"ɏ\":\"y\",\n\t\"ỹ\":\"y\",\n\t\"ź\":\"z\",\n\t\"ž\":\"z\",\n\t\"ẑ\":\"z\",\n\t\"ʑ\":\"z\",\n\t\"ⱬ\":\"z\",\n\t\"ż\":\"z\",\n\t\"ẓ\":\"z\",\n\t\"ȥ\":\"z\",\n\t\"ẕ\":\"z\",\n\t\"ᵶ\":\"z\",\n\t\"ᶎ\":\"z\",\n\t\"ʐ\":\"z\",\n\t\"ƶ\":\"z\",\n\t\"ɀ\":\"z\",\n\t\"ff\":\"ff\",\n\t\"ffi\":\"ffi\",\n\t\"ffl\":\"ffl\",\n\t\"fi\":\"fi\",\n\t\"fl\":\"fl\",\n\t\"ij\":\"ij\",\n\t\"œ\":\"oe\",\n\t\"st\":\"st\",\n\t\"ₐ\":\"a\",\n\t\"ₑ\":\"e\",\n\t\"ᵢ\":\"i\",\n\t\"ⱼ\":\"j\",\n\t\"ₒ\":\"o\",\n\t\"ᵣ\":\"r\",\n\t\"ᵤ\":\"u\",\n\t\"ᵥ\":\"v\",\n\t\"ₓ\":\"x\",\n\t\"Ё\":\"YO\",\n\t\"Й\":\"I\",\n\t\"Ц\":\"TS\",\n\t\"У\":\"U\",\n\t\"К\":\"K\",\n\t\"Е\":\"E\",\n\t\"Н\":\"N\",\n\t\"Г\":\"G\",\n\t\"Ш\":\"SH\",\n\t\"Щ\":\"SCH\",\n\t\"З\":\"Z\",\n\t\"Х\":\"H\",\n\t\"Ъ\":\"'\",\n\t\"ё\":\"yo\",\n\t\"й\":\"i\",\n\t\"ц\":\"ts\",\n\t\"у\":\"u\",\n\t\"к\":\"k\",\n\t\"е\":\"e\",\n\t\"н\":\"n\",\n\t\"г\":\"g\",\n\t\"ш\":\"sh\",\n\t\"щ\":\"sch\",\n\t\"з\":\"z\",\n\t\"х\":\"h\",\n\t\"ъ\":\"'\",\n\t\"Ф\":\"F\",\n\t\"Ы\":\"I\",\n\t\"В\":\"V\",\n\t\"А\":\"a\",\n\t\"П\":\"P\",\n\t\"Р\":\"R\",\n\t\"О\":\"O\",\n\t\"Л\":\"L\",\n\t\"Д\":\"D\",\n\t\"Ж\":\"ZH\",\n\t\"Э\":\"E\",\n\t\"ф\":\"f\",\n\t\"ы\":\"i\",\n\t\"в\":\"v\",\n\t\"а\":\"a\",\n\t\"п\":\"p\",\n\t\"р\":\"r\",\n\t\"о\":\"o\",\n\t\"л\":\"l\",\n\t\"д\":\"d\",\n\t\"ж\":\"zh\",\n\t\"э\":\"e\",\n\t\"Я\":\"Ya\",\n\t\"Ч\":\"CH\",\n\t\"С\":\"S\",\n\t\"М\":\"M\",\n\t\"И\":\"I\",\n\t\"Т\":\"T\",\n\t\"Ь\":\"'\",\n\t\"Б\":\"B\",\n\t\"Ю\":\"YU\",\n\t\"я\":\"ya\",\n\t\"ч\":\"ch\",\n\t\"с\":\"s\",\n\t\"м\":\"m\",\n\t\"и\":\"i\",\n\t\"т\":\"t\",\n\t\"ь\":\"'\",\n\t\"б\":\"b\",\n\t\"ю\":\"yu\"\n};\n\nexports.transliterate = function(str) {\n\treturn str.replace(/[^A-Za-z0-9\\[\\] ]/g,function(ch) {\n\t\treturn exports.transliterationPairs[ch] || ch\n\t});\n};\n\nexports.transliterateToSafeASCII = function(str) {\n\treturn str.replace(/[^\\x00-\\x7F]/g,function(ch) {\n\t\treturn exports.transliterationPairs[ch] || \"\"\n\t});\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/utils/utils.js": {
"title": "$:/core/modules/utils/utils.js",
"text": "/*\\\ntitle: $:/core/modules/utils/utils.js\ntype: application/javascript\nmodule-type: utils\n\nVarious static utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar base64utf8 = require(\"$:/core/modules/utils/base64-utf8/base64-utf8.module.js\");\n\n/*\nDisplay a message, in colour if we're on a terminal\n*/\nexports.log = function(text,colour) {\n\tconsole.log($tw.node ? exports.terminalColour(colour) + text + exports.terminalColour() : text);\n};\n\nexports.terminalColour = function(colour) {\n\tif(!$tw.browser && $tw.node && process.stdout.isTTY) {\n\t\tif(colour) {\n\t\t\tvar code = exports.terminalColourLookup[colour];\n\t\t\tif(code) {\n\t\t\t\treturn \"\\x1b[\" + code + \"m\";\n\t\t\t}\n\t\t} else {\n\t\t\treturn \"\\x1b[0m\"; // Cancel colour\n\t\t}\n\t}\n\treturn \"\";\n};\n\nexports.terminalColourLookup = {\n\t\"black\": \"0;30\",\n\t\"red\": \"0;31\",\n\t\"green\": \"0;32\",\n\t\"brown/orange\": \"0;33\",\n\t\"blue\": \"0;34\",\n\t\"purple\": \"0;35\",\n\t\"cyan\": \"0;36\",\n\t\"light gray\": \"0;37\"\n};\n\n/*\nDisplay a warning, in colour if we're on a terminal\n*/\nexports.warning = function(text) {\n\texports.log(text,\"brown/orange\");\n};\n\n/*\nReturn the integer represented by the str (string).\nReturn the dflt (default) parameter if str is not a base-10 number.\n*/\nexports.getInt = function(str,deflt) {\n\tvar i = parseInt(str,10);\n\treturn isNaN(i) ? deflt : i;\n}\n\n/*\nRepeatedly replaces a substring within a string. Like String.prototype.replace, but without any of the default special handling of $ sequences in the replace string\n*/\nexports.replaceString = function(text,search,replace) {\n\treturn text.replace(search,function() {\n\t\treturn replace;\n\t});\n};\n\n/*\nRepeats a string\n*/\nexports.repeat = function(str,count) {\n\tvar result = \"\";\n\tfor(var t=0;t<count;t++) {\n\t\tresult += str;\n\t}\n\treturn result;\n};\n\n/*\nTrim whitespace from the start and end of a string\nThanks to Steven Levithan, http://blog.stevenlevithan.com/archives/faster-trim-javascript\n*/\nexports.trim = function(str) {\n\tif(typeof str === \"string\") {\n\t\treturn str.replace(/^\\s\\s*/, '').replace(/\\s\\s*$/, '');\n\t} else {\n\t\treturn str;\n\t}\n};\n\n/*\nConvert a string to sentence case (ie capitalise first letter)\n*/\nexports.toSentenceCase = function(str) {\n\treturn (str || \"\").replace(/^\\S/, function(c) {return c.toUpperCase();});\n}\n\n/*\nConvert a string to title case (ie capitalise each initial letter)\n*/\nexports.toTitleCase = function(str) {\n\treturn (str || \"\").replace(/(^|\\s)\\S/g, function(c) {return c.toUpperCase();});\n}\n\t\n/*\nFind the line break preceding a given position in a string\nReturns position immediately after that line break, or the start of the string\n*/\nexports.findPrecedingLineBreak = function(text,pos) {\n\tvar result = text.lastIndexOf(\"\\n\",pos - 1);\n\tif(result === -1) {\n\t\tresult = 0;\n\t} else {\n\t\tresult++;\n\t\tif(text.charAt(result) === \"\\r\") {\n\t\t\tresult++;\n\t\t}\n\t}\n\treturn result;\n};\n\n/*\nFind the line break following a given position in a string\n*/\nexports.findFollowingLineBreak = function(text,pos) {\n\t// Cut to just past the following line break, or to the end of the text\n\tvar result = text.indexOf(\"\\n\",pos);\n\tif(result === -1) {\n\t\tresult = text.length;\n\t} else {\n\t\tif(text.charAt(result) === \"\\r\") {\n\t\t\tresult++;\n\t\t}\n\t}\n\treturn result;\n};\n\n/*\nReturn the number of keys in an object\n*/\nexports.count = function(object) {\n\treturn Object.keys(object || {}).length;\n};\n\n/*\nDetermine whether an array-item is an object-property\n*/\nexports.hopArray = function(object,array) {\n\tfor(var i=0; i<array.length; i++) {\n\t\tif($tw.utils.hop(object,array[i])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nRemove entries from an array\n\tarray: array to modify\n\tvalue: a single value to remove, or an array of values to remove\n*/\nexports.removeArrayEntries = function(array,value) {\n\tvar t,p;\n\tif($tw.utils.isArray(value)) {\n\t\tfor(t=0; t<value.length; t++) {\n\t\t\tp = array.indexOf(value[t]);\n\t\t\tif(p !== -1) {\n\t\t\t\tarray.splice(p,1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tp = array.indexOf(value);\n\t\tif(p !== -1) {\n\t\t\tarray.splice(p,1);\n\t\t}\n\t}\n};\n\n/*\nCheck whether any members of a hashmap are present in another hashmap\n*/\nexports.checkDependencies = function(dependencies,changes) {\n\tvar hit = false;\n\t$tw.utils.each(changes,function(change,title) {\n\t\tif($tw.utils.hop(dependencies,title)) {\n\t\t\thit = true;\n\t\t}\n\t});\n\treturn hit;\n};\n\nexports.extend = function(object /* [, src] */) {\n\t$tw.utils.each(Array.prototype.slice.call(arguments, 1), function(source) {\n\t\tif(source) {\n\t\t\tfor(var property in source) {\n\t\t\t\tobject[property] = source[property];\n\t\t\t}\n\t\t}\n\t});\n\treturn object;\n};\n\nexports.deepCopy = function(object) {\n\tvar result,t;\n\tif($tw.utils.isArray(object)) {\n\t\t// Copy arrays\n\t\tresult = object.slice(0);\n\t} else if(typeof object === \"object\") {\n\t\tresult = {};\n\t\tfor(t in object) {\n\t\t\tif(object[t] !== undefined) {\n\t\t\t\tresult[t] = $tw.utils.deepCopy(object[t]);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tresult = object;\n\t}\n\treturn result;\n};\n\nexports.extendDeepCopy = function(object,extendedProperties) {\n\tvar result = $tw.utils.deepCopy(object),t;\n\tfor(t in extendedProperties) {\n\t\tif(extendedProperties[t] !== undefined) {\n\t\t\tresult[t] = $tw.utils.deepCopy(extendedProperties[t]);\n\t\t}\n\t}\n\treturn result;\n};\n\nexports.deepFreeze = function deepFreeze(object) {\n\tvar property, key;\n\tif(object) {\n\t\tObject.freeze(object);\n\t\tfor(key in object) {\n\t\t\tproperty = object[key];\n\t\t\tif($tw.utils.hop(object,key) && (typeof property === \"object\") && !Object.isFrozen(property)) {\n\t\t\t\tdeepFreeze(property);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexports.slowInSlowOut = function(t) {\n\treturn (1 - ((Math.cos(t * Math.PI) + 1) / 2));\n};\n\nexports.formatDateString = function(date,template) {\n\tvar result = \"\",\n\t\tt = template,\n\t\tmatches = [\n\t\t\t[/^0hh12/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getHours12(date));\n\t\t\t}],\n\t\t\t[/^wYYYY/, function() {\n\t\t\t\treturn $tw.utils.getYearForWeekNo(date);\n\t\t\t}],\n\t\t\t[/^hh12/, function() {\n\t\t\t\treturn $tw.utils.getHours12(date);\n\t\t\t}],\n\t\t\t[/^DDth/, function() {\n\t\t\t\treturn date.getDate() + $tw.utils.getDaySuffix(date);\n\t\t\t}],\n\t\t\t[/^YYYY/, function() {\n\t\t\t\treturn date.getFullYear();\n\t\t\t}],\n\t\t\t[/^0hh/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getHours());\n\t\t\t}],\n\t\t\t[/^0mm/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMinutes());\n\t\t\t}],\n\t\t\t[/^0ss/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getSeconds());\n\t\t\t}],\n\t\t\t[/^0XXX/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMilliseconds(),3);\n\t\t\t}],\n\t\t\t[/^0DD/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getDate());\n\t\t\t}],\n\t\t\t[/^0MM/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMonth()+1);\n\t\t\t}],\n\t\t\t[/^0WW/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getWeek(date));\n\t\t\t}],\n\t\t\t[/^ddd/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Short/Day/\" + date.getDay());\n\t\t\t}],\n\t\t\t[/^mmm/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Short/Month/\" + (date.getMonth() + 1));\n\t\t\t}],\n\t\t\t[/^DDD/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Long/Day/\" + date.getDay());\n\t\t\t}],\n\t\t\t[/^MMM/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Long/Month/\" + (date.getMonth() + 1));\n\t\t\t}],\n\t\t\t[/^TZD/, function() {\n\t\t\t\tvar tz = date.getTimezoneOffset(),\n\t\t\t\tatz = Math.abs(tz);\n\t\t\t\treturn (tz < 0 ? '+' : '-') + $tw.utils.pad(Math.floor(atz / 60)) + ':' + $tw.utils.pad(atz % 60);\n\t\t\t}],\n\t\t\t[/^wYY/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getYearForWeekNo(date) - 2000);\n\t\t\t}],\n\t\t\t[/^[ap]m/, function() {\n\t\t\t\treturn $tw.utils.getAmPm(date).toLowerCase();\n\t\t\t}],\n\t\t\t[/^hh/, function() {\n\t\t\t\treturn date.getHours();\n\t\t\t}],\n\t\t\t[/^mm/, function() {\n\t\t\t\treturn date.getMinutes();\n\t\t\t}],\n\t\t\t[/^ss/, function() {\n\t\t\t\treturn date.getSeconds();\n\t\t\t}],\n\t\t\t[/^XXX/, function() {\n\t\t\t\treturn date.getMilliseconds();\n\t\t\t}],\n\t\t\t[/^[AP]M/, function() {\n\t\t\t\treturn $tw.utils.getAmPm(date).toUpperCase();\n\t\t\t}],\n\t\t\t[/^DD/, function() {\n\t\t\t\treturn date.getDate();\n\t\t\t}],\n\t\t\t[/^MM/, function() {\n\t\t\t\treturn date.getMonth() + 1;\n\t\t\t}],\n\t\t\t[/^WW/, function() {\n\t\t\t\treturn $tw.utils.getWeek(date);\n\t\t\t}],\n\t\t\t[/^YY/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getFullYear() - 2000);\n\t\t\t}]\n\t\t];\n\t// If the user wants everything in UTC, shift the datestamp\n\t// Optimize for format string that essentially means\n\t// 'return raw UTC (tiddlywiki style) date string.'\n\tif(t.indexOf(\"[UTC]\") == 0 ) {\n\t\tif(t == \"[UTC]YYYY0MM0DD0hh0mm0ssXXX\")\n\t\t\treturn $tw.utils.stringifyDate(new Date());\n\t\tvar offset = date.getTimezoneOffset() ; // in minutes\n\t\tdate = new Date(date.getTime()+offset*60*1000) ;\n\t\tt = t.substr(5) ;\n\t}\n\twhile(t.length){\n\t\tvar matchString = \"\";\n\t\t$tw.utils.each(matches, function(m) {\n\t\t\tvar match = m[0].exec(t);\n\t\t\tif(match) {\n\t\t\t\tmatchString = m[1].call();\n\t\t\t\tt = t.substr(match[0].length);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t});\n\t\tif(matchString) {\n\t\t\tresult += matchString;\n\t\t} else {\n\t\t\tresult += t.charAt(0);\n\t\t\tt = t.substr(1);\n\t\t}\n\t}\n\tresult = result.replace(/\\\\(.)/g,\"$1\");\n\treturn result;\n};\n\nexports.getAmPm = function(date) {\n\treturn $tw.language.getString(\"Date/Period/\" + (date.getHours() >= 12 ? \"pm\" : \"am\"));\n};\n\nexports.getDaySuffix = function(date) {\n\treturn $tw.language.getString(\"Date/DaySuffix/\" + date.getDate());\n};\n\nexports.getWeek = function(date) {\n\tvar dt = new Date(date.getTime());\n\tvar d = dt.getDay();\n\tif(d === 0) {\n\t\td = 7; // JavaScript Sun=0, ISO Sun=7\n\t}\n\tdt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week to calculate weekNo\n\tvar x = new Date(dt.getFullYear(),0,1);\n\tvar n = Math.floor((dt.getTime() - x.getTime()) / 86400000);\n\treturn Math.floor(n / 7) + 1;\n};\n\nexports.getYearForWeekNo = function(date) {\n\tvar dt = new Date(date.getTime());\n\tvar d = dt.getDay();\n\tif(d === 0) {\n\t\td = 7; // JavaScript Sun=0, ISO Sun=7\n\t}\n\tdt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week\n\treturn dt.getFullYear();\n};\n\nexports.getHours12 = function(date) {\n\tvar h = date.getHours();\n\treturn h > 12 ? h-12 : ( h > 0 ? h : 12 );\n};\n\n/*\nConvert a date delta in milliseconds into a string representation of \"23 seconds ago\", \"27 minutes ago\" etc.\n\tdelta: delta in milliseconds\nReturns an object with these members:\n\tdescription: string describing the delta period\n\tupdatePeriod: time in millisecond until the string will be inaccurate\n*/\nexports.getRelativeDate = function(delta) {\n\tvar futurep = false;\n\tif(delta < 0) {\n\t\tdelta = -1 * delta;\n\t\tfuturep = true;\n\t}\n\tvar units = [\n\t\t{name: \"Years\", duration: 365 * 24 * 60 * 60 * 1000},\n\t\t{name: \"Months\", duration: (365/12) * 24 * 60 * 60 * 1000},\n\t\t{name: \"Days\", duration: 24 * 60 * 60 * 1000},\n\t\t{name: \"Hours\", duration: 60 * 60 * 1000},\n\t\t{name: \"Minutes\", duration: 60 * 1000},\n\t\t{name: \"Seconds\", duration: 1000}\n\t];\n\tfor(var t=0; t<units.length; t++) {\n\t\tvar result = Math.floor(delta / units[t].duration);\n\t\tif(result >= 2) {\n\t\t\treturn {\n\t\t\t\tdelta: delta,\n\t\t\t\tdescription: $tw.language.getString(\n\t\t\t\t\t\"RelativeDate/\" + (futurep ? \"Future\" : \"Past\") + \"/\" + units[t].name,\n\t\t\t\t\t{variables:\n\t\t\t\t\t\t{period: result.toString()}\n\t\t\t\t\t}\n\t\t\t\t),\n\t\t\t\tupdatePeriod: units[t].duration\n\t\t\t};\n\t\t}\n\t}\n\treturn {\n\t\tdelta: delta,\n\t\tdescription: $tw.language.getString(\n\t\t\t\"RelativeDate/\" + (futurep ? \"Future\" : \"Past\") + \"/Second\",\n\t\t\t{variables:\n\t\t\t\t{period: \"1\"}\n\t\t\t}\n\t\t),\n\t\tupdatePeriod: 1000\n\t};\n};\n\n// Convert & to \"&\", < to \"<\", > to \">\", \" to \""\"\nexports.htmlEncode = function(s) {\n\tif(s) {\n\t\treturn s.toString().replace(/&/mg,\"&\").replace(/</mg,\"<\").replace(/>/mg,\">\").replace(/\\\"/mg,\""\");\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n// Converts all HTML entities to their character equivalents\nexports.entityDecode = function(s) {\n\tvar converter = String.fromCodePoint || String.fromCharCode,\n\t\te = s.substr(1,s.length-2), // Strip the & and the ;\n\t\tc;\n\tif(e.charAt(0) === \"#\") {\n\t\tif(e.charAt(1) === \"x\" || e.charAt(1) === \"X\") {\n\t\t\tc = parseInt(e.substr(2),16);\n\t\t} else {\n\t\t\tc = parseInt(e.substr(1),10);\n\t\t}\n\t\tif(isNaN(c)) {\n\t\t\treturn s;\n\t\t} else {\n\t\t\treturn converter(c);\n\t\t}\n\t} else {\n\t\tc = $tw.config.htmlEntities[e];\n\t\tif(c) {\n\t\t\treturn converter(c);\n\t\t} else {\n\t\t\treturn s; // Couldn't convert it as an entity, just return it raw\n\t\t}\n\t}\n};\n\nexports.unescapeLineBreaks = function(s) {\n\treturn s.replace(/\\\\n/mg,\"\\n\").replace(/\\\\b/mg,\" \").replace(/\\\\s/mg,\"\\\\\").replace(/\\r/mg,\"\");\n};\n\n/*\n * Returns an escape sequence for given character. Uses \\x for characters <=\n * 0xFF to save space, \\u for the rest.\n *\n * The code needs to be in sync with th code template in the compilation\n * function for \"action\" nodes.\n */\n// Copied from peg.js, thanks to David Majda\nexports.escape = function(ch) {\n\tvar charCode = ch.charCodeAt(0);\n\tif(charCode <= 0xFF) {\n\t\treturn '\\\\x' + $tw.utils.pad(charCode.toString(16).toUpperCase());\n\t} else {\n\t\treturn '\\\\u' + $tw.utils.pad(charCode.toString(16).toUpperCase(),4);\n\t}\n};\n\n// Turns a string into a legal JavaScript string\n// Copied from peg.js, thanks to David Majda\nexports.stringify = function(s) {\n\t/*\n\t* ECMA-262, 5th ed., 7.8.4: All characters may appear literally in a string\n\t* literal except for the closing quote character, backslash, carriage return,\n\t* line separator, paragraph separator, and line feed. Any character may\n\t* appear in the form of an escape sequence.\n\t*\n\t* For portability, we also escape all non-ASCII characters.\n\t*/\n\treturn (s || \"\")\n\t\t.replace(/\\\\/g, '\\\\\\\\') // backslash\n\t\t.replace(/\"/g, '\\\\\"') // double quote character\n\t\t.replace(/'/g, \"\\\\'\") // single quote character\n\t\t.replace(/\\r/g, '\\\\r') // carriage return\n\t\t.replace(/\\n/g, '\\\\n') // line feed\n\t\t.replace(/[\\x00-\\x1f\\x80-\\uFFFF]/g, exports.escape); // non-ASCII characters\n};\n\n// Turns a string into a legal JSON string\n// Derived from peg.js, thanks to David Majda\nexports.jsonStringify = function(s) {\n\t// See http://www.json.org/\n\treturn (s || \"\")\n\t\t.replace(/\\\\/g, '\\\\\\\\') // backslash\n\t\t.replace(/\"/g, '\\\\\"') // double quote character\n\t\t.replace(/\\r/g, '\\\\r') // carriage return\n\t\t.replace(/\\n/g, '\\\\n') // line feed\n\t\t.replace(/\\x08/g, '\\\\b') // backspace\n\t\t.replace(/\\x0c/g, '\\\\f') // formfeed\n\t\t.replace(/\\t/g, '\\\\t') // tab\n\t\t.replace(/[\\x00-\\x1f\\x80-\\uFFFF]/g,function(s) {\n\t\t\treturn '\\\\u' + $tw.utils.pad(s.charCodeAt(0).toString(16).toUpperCase(),4);\n\t\t}); // non-ASCII characters\n};\n\n/*\nEscape the RegExp special characters with a preceding backslash\n*/\nexports.escapeRegExp = function(s) {\n return s.replace(/[\\-\\/\\\\\\^\\$\\*\\+\\?\\.\\(\\)\\|\\[\\]\\{\\}]/g, '\\\\$&');\n};\n\n// Checks whether a link target is external, i.e. not a tiddler title\nexports.isLinkExternal = function(to) {\n\tvar externalRegExp = /^(?:file|http|https|mailto|ftp|irc|news|data|skype):[^\\s<>{}\\[\\]`|\"\\\\^]+(?:\\/|\\b)/i;\n\treturn externalRegExp.test(to);\n};\n\nexports.nextTick = function(fn) {\n/*global window: false */\n\tif(typeof process === \"undefined\") {\n\t\t// Apparently it would be faster to use postMessage - http://dbaron.org/log/20100309-faster-timeouts\n\t\twindow.setTimeout(fn,4);\n\t} else {\n\t\tprocess.nextTick(fn);\n\t}\n};\n\n/*\nConvert a hyphenated CSS property name into a camel case one\n*/\nexports.unHyphenateCss = function(propName) {\n\treturn propName.replace(/-([a-z])/gi, function(match0,match1) {\n\t\treturn match1.toUpperCase();\n\t});\n};\n\n/*\nConvert a camelcase CSS property name into a dashed one (\"backgroundColor\" --> \"background-color\")\n*/\nexports.hyphenateCss = function(propName) {\n\treturn propName.replace(/([A-Z])/g, function(match0,match1) {\n\t\treturn \"-\" + match1.toLowerCase();\n\t});\n};\n\n/*\nParse a text reference of one of these forms:\n* title\n* !!field\n* title!!field\n* title##index\n* etc\nReturns an object with the following fields, all optional:\n* title: tiddler title\n* field: tiddler field name\n* index: JSON property index\n*/\nexports.parseTextReference = function(textRef) {\n\t// Separate out the title, field name and/or JSON indices\n\tvar reTextRef = /(?:(.*?)!!(.+))|(?:(.*?)##(.+))|(.*)/mg,\n\t\tmatch = reTextRef.exec(textRef),\n\t\tresult = {};\n\tif(match && reTextRef.lastIndex === textRef.length) {\n\t\t// Return the parts\n\t\tif(match[1]) {\n\t\t\tresult.title = match[1];\n\t\t}\n\t\tif(match[2]) {\n\t\t\tresult.field = match[2];\n\t\t}\n\t\tif(match[3]) {\n\t\t\tresult.title = match[3];\n\t\t}\n\t\tif(match[4]) {\n\t\t\tresult.index = match[4];\n\t\t}\n\t\tif(match[5]) {\n\t\t\tresult.title = match[5];\n\t\t}\n\t} else {\n\t\t// If we couldn't parse it\n\t\tresult.title = textRef\n\t}\n\treturn result;\n};\n\n/*\nChecks whether a string is a valid fieldname\n*/\nexports.isValidFieldName = function(name) {\n\tif(!name || typeof name !== \"string\") {\n\t\treturn false;\n\t}\n\tname = name.toLowerCase().trim();\n\tvar fieldValidatorRegEx = /^[a-z0-9\\-\\._]+$/mg;\n\treturn fieldValidatorRegEx.test(name);\n};\n\n/*\nExtract the version number from the meta tag or from the boot file\n*/\n\n// Browser version\nexports.extractVersionInfo = function() {\n\tif($tw.packageInfo) {\n\t\treturn $tw.packageInfo.version;\n\t} else {\n\t\tvar metatags = document.getElementsByTagName(\"meta\");\n\t\tfor(var t=0; t<metatags.length; t++) {\n\t\t\tvar m = metatags[t];\n\t\t\tif(m.name === \"tiddlywiki-version\") {\n\t\t\t\treturn m.content;\n\t\t\t}\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nGet the animation duration in ms\n*/\nexports.getAnimationDuration = function() {\n\treturn parseInt($tw.wiki.getTiddlerText(\"$:/config/AnimationDuration\",\"400\"),10) || 0;\n};\n\n/*\nHash a string to a number\nDerived from http://stackoverflow.com/a/15710692\n*/\nexports.hashString = function(str) {\n\treturn str.split(\"\").reduce(function(a,b) {\n\t\ta = ((a << 5) - a) + b.charCodeAt(0);\n\t\treturn a & a;\n\t},0);\n};\n\n/*\nDecode a base64 string\n*/\nexports.base64Decode = function(string64) {\n\treturn base64utf8.base64.decode.call(base64utf8,string64);\n};\n\n/*\nEncode a string to base64\n*/\nexports.base64Encode = function(string64) {\n\treturn base64utf8.base64.encode.call(base64utf8,string64);\n};\n\n/*\nConvert a hashmap into a tiddler dictionary format sequence of name:value pairs\n*/\nexports.makeTiddlerDictionary = function(data) {\n\tvar output = [];\n\tfor(var name in data) {\n\t\toutput.push(name + \": \" + data[name]);\n\t}\n\treturn output.join(\"\\n\");\n};\n\n/*\nHigh resolution microsecond timer for profiling\n*/\nexports.timer = function(base) {\n\tvar m;\n\tif($tw.node) {\n\t\tvar r = process.hrtime();\n\t\tm = r[0] * 1e3 + (r[1] / 1e6);\n\t} else if(window.performance) {\n\t\tm = performance.now();\n\t} else {\n\t\tm = Date.now();\n\t}\n\tif(typeof base !== \"undefined\") {\n\t\tm = m - base;\n\t}\n\treturn m;\n};\n\n/*\nConvert text and content type to a data URI\n*/\nexports.makeDataUri = function(text,type,_canonical_uri) {\n\ttype = type || \"text/vnd.tiddlywiki\";\n\tvar typeInfo = $tw.config.contentTypeInfo[type] || $tw.config.contentTypeInfo[\"text/plain\"],\n\t\tisBase64 = typeInfo.encoding === \"base64\",\n\t\tparts = [];\n\tif(_canonical_uri) {\n\t\tparts.push(_canonical_uri);\n\t} else {\n\t\tparts.push(\"data:\");\n\t\tparts.push(type);\n\t\tparts.push(isBase64 ? \";base64\" : \"\");\n\t\tparts.push(\",\");\n\t\tparts.push(isBase64 ? text : encodeURIComponent(text));\t\t\n\t}\n\treturn parts.join(\"\");\n};\n\n/*\nUseful for finding out the fully escaped CSS selector equivalent to a given tag. For example:\n\n$tw.utils.tagToCssSelector(\"$:/tags/Stylesheet\") --> tc-tagged-\\%24\\%3A\\%2Ftags\\%2FStylesheet\n*/\nexports.tagToCssSelector = function(tagName) {\n\treturn \"tc-tagged-\" + encodeURIComponent(tagName).replace(/[!\"#$%&'()*+,\\-./:;<=>?@[\\\\\\]^`{\\|}~,]/mg,function(c) {\n\t\treturn \"\\\\\" + c;\n\t});\n};\n\n/*\nIE does not have sign function\n*/\nexports.sign = Math.sign || function(x) {\n\tx = +x; // convert to a number\n\tif (x === 0 || isNaN(x)) {\n\t\treturn x;\n\t}\n\treturn x > 0 ? 1 : -1;\n};\n\n/*\nIE does not have an endsWith function\n*/\nexports.strEndsWith = function(str,ending,position) {\n\tif(str.endsWith) {\n\t\treturn str.endsWith(ending,position);\n\t} else {\n\t\tif (typeof position !== 'number' || !isFinite(position) || Math.floor(position) !== position || position > str.length) {\n\t\t\tposition = str.length;\n\t\t}\n\t\tposition -= ending.length;\n\t\tvar lastIndex = str.indexOf(ending, position);\n\t\treturn lastIndex !== -1 && lastIndex === position;\n\t}\n};\n\n/*\nReturn system information useful for debugging\n*/\nexports.getSystemInfo = function(str,ending,position) {\n\tvar results = [],\n\t\tsave = function(desc,value) {\n\t\t\tresults.push(desc + \": \" + value);\n\t\t};\n\tif($tw.browser) {\n\t\tsave(\"User Agent\",navigator.userAgent);\n\t\tsave(\"Online Status\",window.navigator.onLine);\n\t}\n\tif($tw.node) {\n\t\tsave(\"Node Version\",process.version);\n\t}\n\treturn results.join(\"\\n\");\n};\n\nexports.parseNumber = function(str) {\n\treturn parseFloat(str) || 0;\n};\n\nexports.parseInt = function(str) {\n\treturn parseInt(str,10) || 0;\n};\n\nexports.stringifyNumber = function(num) {\n\treturn num + \"\";\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/widgets/action-createtiddler.js": {
"title": "$:/core/modules/widgets/action-createtiddler.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-createtiddler.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to create a new tiddler with a unique name and specified fields.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw:false, require:false, exports:false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CreateTiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCreateTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCreateTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nCreateTiddlerWidget.prototype.execute = function() {\n\tthis.actionBaseTitle = this.getAttribute(\"$basetitle\");\n\tthis.hasBase = !!this.actionBaseTitle;\n\tthis.actionSaveTitle = this.getAttribute(\"$savetitle\");\n\tthis.actionSaveDraftTitle = this.getAttribute(\"$savedrafttitle\");\n\tthis.actionTimestamp = this.getAttribute(\"$timestamp\",\"yes\") === \"yes\";\n\t//Following params are new since 5.1.22\n\tthis.actionTemplate = this.getAttribute(\"$template\");\n\tthis.useTemplate = !!this.actionTemplate;\n\tthis.actionOverwrite = this.getAttribute(\"$overwrite\",\"no\");\n\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nCreateTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nCreateTiddlerWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar title = this.wiki.getTiddlerText(\"$:/language/DefaultNewTiddlerTitle\"), // Get the initial new-tiddler title\n\t\tfields = {},\n\t\tcreationFields,\n\t\tmodificationFields;\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tfields[name] = attribute;\n\t\t}\n\t});\n\tif(this.actionTimestamp) {\n\t\tcreationFields = this.wiki.getCreationFields();\n\t\tmodificationFields = this.wiki.getModificationFields();\n\t}\n\tif(this.hasBase && this.actionOverwrite === \"no\") {\n\t\ttitle = this.wiki.generateNewTitle(this.actionBaseTitle);\n\t} else if (this.hasBase && this.actionOverwrite === \"yes\") {\n\t\ttitle = this.actionBaseTitle\n\t}\n\t// NO $basetitle BUT $template parameter is available\n\t// the title MUST be unique, otherwise the template would be overwritten\n\tif (!this.hasBase && this.useTemplate) {\n\t\ttitle = this.wiki.generateNewTitle(this.actionTemplate);\n\t} else if (!this.hasBase && !this.useTemplate) {\n\t\t// If NO $basetitle AND NO $template use initial title\n\t\t// DON'T overwrite any stuff\n\t\ttitle = this.wiki.generateNewTitle(title);\n\t}\n\tvar templateTiddler = this.wiki.getTiddler(this.actionTemplate) || {};\n\tvar tiddler = this.wiki.addTiddler(new $tw.Tiddler(templateTiddler.fields,creationFields,fields,modificationFields,{title: title}));\n\tif(this.actionSaveTitle) {\n\t\tthis.wiki.setTextReference(this.actionSaveTitle,title,this.getVariable(\"currentTiddler\"));\n\t}\n\tif(this.actionSaveDraftTitle) {\n\t\tthis.wiki.setTextReference(this.actionSaveDraftTitle,this.wiki.generateDraftTitle(title),this.getVariable(\"currentTiddler\"));\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-createtiddler\"] = CreateTiddlerWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/action-deletefield.js": {
"title": "$:/core/modules/widgets/action-deletefield.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-deletefield.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to delete fields of a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DeleteFieldWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDeleteFieldWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDeleteFieldWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nDeleteFieldWidget.prototype.execute = function() {\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.actionField = this.getAttribute(\"$field\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nDeleteFieldWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$tiddler\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nDeleteFieldWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar self = this,\n\t\ttiddler = this.wiki.getTiddler(self.actionTiddler),\n\t\tremoveFields = {},\n\t\thasChanged = false;\n\tif(this.actionField && tiddler) {\n\t\tremoveFields[this.actionField] = undefined;\n\t\tif(this.actionField in tiddler.fields) {\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\tif(tiddler) {\n\t\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\t\tif(name.charAt(0) !== \"$\" && name !== \"title\") {\n\t\t\t\tremoveFields[name] = undefined;\n\t\t\t\thasChanged = true;\n\t\t\t}\n\t\t});\n\t\tif(hasChanged) {\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,removeFields,this.wiki.getModificationFields()));\t\t\t\n\t\t}\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-deletefield\"] = DeleteFieldWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/action-deletetiddler.js": {
"title": "$:/core/modules/widgets/action-deletetiddler.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-deletetiddler.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to delete a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DeleteTiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDeleteTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDeleteTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nDeleteTiddlerWidget.prototype.execute = function() {\n\tthis.actionFilter = this.getAttribute(\"$filter\");\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nDeleteTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$filter\"] || changedAttributes[\"$tiddler\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nDeleteTiddlerWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar tiddlers = [];\n\tif(this.actionFilter) {\n\t\ttiddlers = this.wiki.filterTiddlers(this.actionFilter,this);\n\t}\n\tif(this.actionTiddler) {\n\t\ttiddlers.push(this.actionTiddler);\n\t}\n\tfor(var t=0; t<tiddlers.length; t++) {\n\t\tthis.wiki.deleteTiddler(tiddlers[t]);\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-deletetiddler\"] = DeleteTiddlerWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/action-listops.js": {
"title": "$:/core/modules/widgets/action-listops.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-listops.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to apply list operations to any tiddler field (defaults to the 'list' field of the current tiddler)\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar ActionListopsWidget = function(parseTreeNode, options) {\n\tthis.initialise(parseTreeNode, options);\n};\n/**\n * Inherit from the base widget class\n */\nActionListopsWidget.prototype = new Widget();\n/**\n * Render this widget into the DOM\n */\nActionListopsWidget.prototype.render = function(parent, nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n/**\n * Compute the internal state of the widget\n */\nActionListopsWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.target = this.getAttribute(\"$tiddler\", this.getVariable(\n\t\t\"currentTiddler\"));\n\tthis.filter = this.getAttribute(\"$filter\");\n\tthis.subfilter = this.getAttribute(\"$subfilter\");\n\tthis.listField = this.getAttribute(\"$field\", \"list\");\n\tthis.listIndex = this.getAttribute(\"$index\");\n\tthis.filtertags = this.getAttribute(\"$tags\");\n};\n/**\n * \tRefresh the widget by ensuring our attributes are up to date\n */\nActionListopsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.$tiddler || changedAttributes.$filter ||\n\t\tchangedAttributes.$subfilter || changedAttributes.$field ||\n\t\tchangedAttributes.$index || changedAttributes.$tags) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n/**\n * \tInvoke the action associated with this widget\n */\nActionListopsWidget.prototype.invokeAction = function(triggeringWidget,\n\tevent) {\n\t//Apply the specified filters to the lists\n\tvar field = this.listField,\n\t\tindex,\n\t\ttype = \"!!\",\n\t\tlist = this.listField;\n\tif(this.listIndex) {\n\t\tfield = undefined;\n\t\tindex = this.listIndex;\n\t\ttype = \"##\";\n\t\tlist = this.listIndex;\n\t}\n\tif(this.filter) {\n\t\tthis.wiki.setText(this.target, field, index, $tw.utils.stringifyList(\n\t\t\tthis.wiki\n\t\t\t.filterTiddlers(this.filter, this)));\n\t}\n\tif(this.subfilter) {\n\t\tvar subfilter = \"[list[\" + this.target + type + list + \"]] \" + this.subfilter;\n\t\tthis.wiki.setText(this.target, field, index, $tw.utils.stringifyList(\n\t\t\tthis.wiki\n\t\t\t.filterTiddlers(subfilter, this)));\n\t}\n\tif(this.filtertags) {\n\t\tvar tiddler = this.wiki.getTiddler(this.target),\n\t\t\toldtags = tiddler ? (tiddler.fields.tags || []).slice(0) : [],\n\t\t\ttagfilter = \"[list[\" + this.target + \"!!tags]] \" + this.filtertags,\n\t\t\tnewtags = this.wiki.filterTiddlers(tagfilter,this);\n\t\tif($tw.utils.stringifyList(oldtags.sort()) !== $tw.utils.stringifyList(newtags.sort())) {\n\t\t\tthis.wiki.setText(this.target,\"tags\",undefined,$tw.utils.stringifyList(newtags));\t\t\t\n\t\t}\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-listops\"] = ActionListopsWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/action-navigate.js": {
"title": "$:/core/modules/widgets/action-navigate.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-navigate.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to navigate to a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar NavigateWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nNavigateWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nNavigateWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nNavigateWidget.prototype.execute = function() {\n\tthis.actionTo = this.getAttribute(\"$to\");\n\tthis.actionScroll = this.getAttribute(\"$scroll\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nNavigateWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$to\"] || changedAttributes[\"$scroll\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nNavigateWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tevent = event || {};\n\tvar bounds = triggeringWidget && triggeringWidget.getBoundingClientRect && triggeringWidget.getBoundingClientRect(),\n\t\tsuppressNavigation = event.metaKey || event.ctrlKey || (event.button === 1);\n\tif(this.actionScroll === \"yes\") {\n\t\tsuppressNavigation = false;\n\t} else if(this.actionScroll === \"no\") {\n\t\tsuppressNavigation = true;\n\t}\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.actionTo === undefined ? this.getVariable(\"currentTiddler\") : this.actionTo,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: triggeringWidget,\n\t\tnavigateFromClientRect: bounds && { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: suppressNavigation\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-navigate\"] = NavigateWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/action-popup.js": {
"title": "$:/core/modules/widgets/action-popup.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-popup.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to trigger a popup.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ActionPopupWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nActionPopupWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nActionPopupWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nActionPopupWidget.prototype.execute = function() {\n\tthis.actionState = this.getAttribute(\"$state\");\n\tthis.actionCoords = this.getAttribute(\"$coords\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nActionPopupWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$state\"] || changedAttributes[\"$coords\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nActionPopupWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\t// Trigger the popup\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/,\n\t\tmatch = popupLocationRegExp.exec(this.actionCoords);\n\tif(match) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: null,\n\t\t\tdomNodeRect: {\n\t\t\t\tleft: parseFloat(match[1]),\n\t\t\t\ttop: parseFloat(match[2]),\n\t\t\t\twidth: parseFloat(match[3]),\n\t\t\t\theight: parseFloat(match[4])\n\t\t\t},\n\t\t\ttitle: this.actionState,\n\t\t\twiki: this.wiki\n\t\t});\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-popup\"] = ActionPopupWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/action-sendmessage.js": {
"title": "$:/core/modules/widgets/action-sendmessage.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-sendmessage.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to send a message\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SendMessageWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSendMessageWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSendMessageWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nSendMessageWidget.prototype.execute = function() {\n\tthis.actionMessage = this.getAttribute(\"$message\");\n\tthis.actionParam = this.getAttribute(\"$param\");\n\tthis.actionName = this.getAttribute(\"$name\");\n\tthis.actionValue = this.getAttribute(\"$value\",\"\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nSendMessageWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(Object.keys(changedAttributes).length) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nSendMessageWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\t// Get the string parameter\n\tvar param = this.actionParam;\n\t// Assemble the attributes as a hashmap\n\tvar paramObject = Object.create(null);\n\tvar count = 0;\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tparamObject[name] = attribute;\n\t\t\tcount++;\n\t\t}\n\t});\n\t// Add name/value pair if present\n\tif(this.actionName) {\n\t\tparamObject[this.actionName] = this.actionValue;\n\t}\n\t// Dispatch the message\n\tthis.dispatchEvent({\n\t\ttype: this.actionMessage,\n\t\tparam: param,\n\t\tparamObject: paramObject,\n\t\ttiddlerTitle: this.getVariable(\"currentTiddler\"),\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tevent: event\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-sendmessage\"] = SendMessageWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/action-setfield.js": {
"title": "$:/core/modules/widgets/action-setfield.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-setfield.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to set a single field or index on a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SetFieldWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSetFieldWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSetFieldWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nSetFieldWidget.prototype.execute = function() {\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.actionField = this.getAttribute(\"$field\");\n\tthis.actionIndex = this.getAttribute(\"$index\");\n\tthis.actionValue = this.getAttribute(\"$value\");\n\tthis.actionTimestamp = this.getAttribute(\"$timestamp\",\"yes\") === \"yes\";\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nSetFieldWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$tiddler\"] || changedAttributes[\"$field\"] || changedAttributes[\"$index\"] || changedAttributes[\"$value\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nSetFieldWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar self = this,\n\t\toptions = {};\n\toptions.suppressTimestamp = !this.actionTimestamp;\n\tif((typeof this.actionField == \"string\") || (typeof this.actionIndex == \"string\") || (typeof this.actionValue == \"string\")) {\n\t\tthis.wiki.setText(this.actionTiddler,this.actionField,this.actionIndex,this.actionValue,options);\n\t}\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tself.wiki.setText(self.actionTiddler,name,undefined,attribute,options);\n\t\t}\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-setfield\"] = SetFieldWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/browse.js": {
"title": "$:/core/modules/widgets/browse.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/browse.js\ntype: application/javascript\nmodule-type: widget\n\nBrowse widget for browsing for files to import\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar BrowseWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nBrowseWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nBrowseWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar domNode = this.document.createElement(\"input\");\n\tdomNode.setAttribute(\"type\",\"file\");\n\tif(this.browseMultiple) {\n\t\tdomNode.setAttribute(\"multiple\",\"multiple\");\n\t}\n\tif(this.tooltip) {\n\t\tdomNode.setAttribute(\"title\",this.tooltip);\n\t}\n\t// Nw.js supports \"nwsaveas\" to force a \"save as\" dialogue that allows a new or existing file to be selected\n\tif(this.nwsaveas) {\n\t\tdomNode.setAttribute(\"nwsaveas\",this.nwsaveas);\n\t}\n\t// Nw.js supports \"webkitdirectory\" and \"nwdirectory\" to allow a directory to be selected\n\tif(this.webkitdirectory) {\n\t\tdomNode.setAttribute(\"webkitdirectory\",this.webkitdirectory);\n\t}\n\tif(this.nwdirectory) {\n\t\tdomNode.setAttribute(\"nwdirectory\",this.nwdirectory);\n\t}\n\t// Add a click event handler\n\tdomNode.addEventListener(\"change\",function (event) {\n\t\tif(self.message) {\n\t\t\tself.dispatchEvent({type: self.message, param: self.param, files: event.target.files});\n\t\t} else {\n\t\t\tself.wiki.readFiles(event.target.files,{\n\t\t\t\tcallback: function(tiddlerFieldsArray) {\n\t\t\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray)});\n\t\t\t\t},\n\t\t\t\tdeserializer: self.deserializer\n\t\t\t});\n\t\t}\n\t\treturn false;\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nBrowseWidget.prototype.execute = function() {\n\tthis.browseMultiple = this.getAttribute(\"multiple\");\n\tthis.deserializer = this.getAttribute(\"deserializer\");\n\tthis.message = this.getAttribute(\"message\");\n\tthis.param = this.getAttribute(\"param\");\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis.nwsaveas = this.getAttribute(\"nwsaveas\");\n\tthis.webkitdirectory = this.getAttribute(\"webkitdirectory\");\n\tthis.nwdirectory = this.getAttribute(\"nwdirectory\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nBrowseWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.browse = BrowseWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/button.js": {
"title": "$:/core/modules/widgets/button.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/button.js\ntype: application/javascript\nmodule-type: widget\n\nButton widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ButtonWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nButtonWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nButtonWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar tag = \"button\";\n\tif(this.buttonTag && $tw.config.htmlUnsafeElements.indexOf(this.buttonTag) === -1) {\n\t\ttag = this.buttonTag;\n\t}\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = this[\"class\"].split(\" \") || [],\n\t\tisPoppedUp = (this.popup || this.popupTitle) && this.isPoppedUp();\n\tif(this.selectedClass) {\n\t\tif((this.set || this.setTitle) && this.setTo && this.isSelected()) {\n\t\t\t$tw.utils.pushTop(classes,this.selectedClass.split(\" \"));\n\t\t}\n\t\tif(isPoppedUp) {\n\t\t\t$tw.utils.pushTop(classes,this.selectedClass.split(\" \"));\n\t\t}\n\t}\n\tif(isPoppedUp) {\n\t\t$tw.utils.pushTop(classes,\"tc-popup-handle\");\n\t}\n\tdomNode.className = classes.join(\" \");\n\t// Assign other attributes\n\tif(this.style) {\n\t\tdomNode.setAttribute(\"style\",this.style);\n\t}\n\tif(this.tooltip) {\n\t\tdomNode.setAttribute(\"title\",this.tooltip);\n\t}\n\tif(this[\"aria-label\"]) {\n\t\tdomNode.setAttribute(\"aria-label\",this[\"aria-label\"]);\n\t}\n\t// Set the tabindex\n\tif(this.tabIndex) {\n\t\tdomNode.setAttribute(\"tabindex\",this.tabIndex);\n\t}\t\n\t// Add a click event handler\n\tdomNode.addEventListener(\"click\",function (event) {\n\t\tvar handled = false;\n\t\tif(self.invokeActions(self,event)) {\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.to) {\n\t\t\tself.navigateTo(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.message) {\n\t\t\tself.dispatchMessage(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.popup || self.popupTitle) {\n\t\t\tself.triggerPopup(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.set || self.setTitle) {\n\t\t\tself.setTiddler();\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.actions) {\n\t\t\tself.invokeActionString(self.actions,self,event);\n\t\t}\n\t\tif(handled) {\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t}\n\t\treturn handled;\n\t},false);\n\t// Make it draggable if required\n\tif(this.dragTiddler || this.dragFilter) {\n\t\t$tw.utils.makeDraggable({\n\t\t\tdomNode: domNode,\n\t\t\tdragTiddlerFn: function() {return self.dragTiddler;},\n\t\t\tdragFilterFn: function() {return self.dragFilter;},\n\t\t\twidget: this\n\t\t});\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nWe don't allow actions to propagate because we trigger actions ourselves\n*/\nButtonWidget.prototype.allowActionPropagation = function() {\n\treturn false;\n};\n\nButtonWidget.prototype.getBoundingClientRect = function() {\n\treturn this.domNodes[0].getBoundingClientRect();\n};\n\nButtonWidget.prototype.isSelected = function() {\n return this.setTitle ? (this.setField ? this.wiki.getTiddler(this.setTitle).getFieldString(this.setField) === this.setTo :\n\t\t(this.setIndex ? this.wiki.extractTiddlerDataItem(this.setTitle,this.setIndex) === this.setTo :\n\t\t\tthis.wiki.getTiddlerText(this.setTitle))) || this.defaultSetValue || this.getVariable(\"currentTiddler\") :\n\t\tthis.wiki.getTextReference(this.set,this.defaultSetValue,this.getVariable(\"currentTiddler\")) === this.setTo;\n};\n\nButtonWidget.prototype.isPoppedUp = function() {\n\tvar tiddler = this.popupTitle ? this.wiki.getTiddler(this.popupTitle) : this.wiki.getTiddler(this.popup);\n\tvar result = tiddler && tiddler.fields.text ? $tw.popup.readPopupState(tiddler.fields.text) : false;\n\treturn result;\n};\n\nButtonWidget.prototype.navigateTo = function(event) {\n\tvar bounds = this.getBoundingClientRect();\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.to,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: this,\n\t\tnavigateFromClientRect: { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: event.metaKey || event.ctrlKey || (event.button === 1),\n\t\tevent: event\n\t});\n};\n\nButtonWidget.prototype.dispatchMessage = function(event) {\n\tthis.dispatchEvent({type: this.message, param: this.param, tiddlerTitle: this.getVariable(\"currentTiddler\"), event: event});\n};\n\nButtonWidget.prototype.triggerPopup = function(event) {\n\tif(this.popupTitle) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNodes[0],\n\t\t\ttitle: this.popupTitle,\n\t\t\twiki: this.wiki,\n\t\t\tnoStateReference: true\n\t\t});\n\t} else {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNodes[0],\n\t\t\ttitle: this.popup,\n\t\t\twiki: this.wiki\n\t\t});\n\t}\n};\n\nButtonWidget.prototype.setTiddler = function() {\n\tif(this.setTitle) {\n\t\tthis.setField ? this.wiki.setText(this.setTitle,this.setField,undefined,this.setTo) :\n\t\t\t\t(this.setIndex ? this.wiki.setText(this.setTitle,undefined,this.setIndex,this.setTo) :\n\t\t\t\tthis.wiki.setText(this.setTitle,\"text\",undefined,this.setTo));\n\t} else {\n\t\tthis.wiki.setTextReference(this.set,this.setTo,this.getVariable(\"currentTiddler\"));\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nButtonWidget.prototype.execute = function() {\n\t// Get attributes\n\tthis.actions = this.getAttribute(\"actions\");\n\tthis.to = this.getAttribute(\"to\");\n\tthis.message = this.getAttribute(\"message\");\n\tthis.param = this.getAttribute(\"param\");\n\tthis.set = this.getAttribute(\"set\");\n\tthis.setTo = this.getAttribute(\"setTo\");\n\tthis.popup = this.getAttribute(\"popup\");\n\tthis.hover = this.getAttribute(\"hover\");\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tthis[\"aria-label\"] = this.getAttribute(\"aria-label\");\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis.style = this.getAttribute(\"style\");\n\tthis.selectedClass = this.getAttribute(\"selectedClass\");\n\tthis.defaultSetValue = this.getAttribute(\"default\",\"\");\n\tthis.buttonTag = this.getAttribute(\"tag\");\n\tthis.dragTiddler = this.getAttribute(\"dragTiddler\");\n\tthis.dragFilter = this.getAttribute(\"dragFilter\");\n\tthis.setTitle = this.getAttribute(\"setTitle\");\n\tthis.setField = this.getAttribute(\"setField\");\n\tthis.setIndex = this.getAttribute(\"setIndex\");\n\tthis.popupTitle = this.getAttribute(\"popupTitle\");\n\tthis.tabIndex = this.getAttribute(\"tabindex\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nButtonWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.actions || changedAttributes.to || changedAttributes.message || changedAttributes.param || changedAttributes.set || changedAttributes.setTo || changedAttributes.popup || changedAttributes.hover || changedAttributes[\"class\"] || changedAttributes.selectedClass || changedAttributes.style || changedAttributes.dragFilter || changedAttributes.dragTiddler || (this.set && changedTiddlers[this.set]) || (this.popup && changedTiddlers[this.popup]) || (this.popupTitle && changedTiddlers[this.popupTitle]) || changedAttributes.setTitle || changedAttributes.setField || changedAttributes.setIndex || changedAttributes.popupTitle) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.button = ButtonWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/checkbox.js": {
"title": "$:/core/modules/widgets/checkbox.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/checkbox.js\ntype: application/javascript\nmodule-type: widget\n\nCheckbox widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CheckboxWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCheckboxWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCheckboxWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create our elements\n\tthis.labelDomNode = this.document.createElement(\"label\");\n\tthis.labelDomNode.setAttribute(\"class\",this.checkboxClass);\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"checkbox\");\n\tif(this.getValue()) {\n\t\tthis.inputDomNode.setAttribute(\"checked\",\"true\");\n\t}\n\tthis.labelDomNode.appendChild(this.inputDomNode);\n\tthis.spanDomNode = this.document.createElement(\"span\");\n\tthis.labelDomNode.appendChild(this.spanDomNode);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.labelDomNode,nextSibling);\n\tthis.renderChildren(this.spanDomNode,null);\n\tthis.domNodes.push(this.labelDomNode);\n};\n\nCheckboxWidget.prototype.getValue = function() {\n\tvar tiddler = this.wiki.getTiddler(this.checkboxTitle);\n\tif(tiddler) {\n\t\tif(this.checkboxTag) {\n\t\t\tif(this.checkboxInvertTag) {\n\t\t\t\treturn !tiddler.hasTag(this.checkboxTag);\n\t\t\t} else {\n\t\t\t\treturn tiddler.hasTag(this.checkboxTag);\n\t\t\t}\n\t\t}\n\t\tif(this.checkboxField) {\n\t\t\tvar value;\n\t\t\tif($tw.utils.hop(tiddler.fields,this.checkboxField)) {\n\t\t\t\tvalue = tiddler.fields[this.checkboxField] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = this.checkboxDefault || \"\";\n\t\t\t}\n\t\t\tif(value === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(value === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\tif(this.checkboxIndex) {\n\t\t\tvar value = this.wiki.extractTiddlerDataItem(tiddler,this.checkboxIndex,this.checkboxDefault || \"\");\n\t\t\tif(value === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(value === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif(this.checkboxTag) {\n\t\t\treturn false;\n\t\t}\n\t\tif(this.checkboxField) {\n\t\t\tif(this.checkboxDefault === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(this.checkboxDefault === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\nCheckboxWidget.prototype.handleChangeEvent = function(event) {\n\tvar checked = this.inputDomNode.checked,\n\t\ttiddler = this.wiki.getTiddler(this.checkboxTitle),\n\t\tfallbackFields = {text: \"\"},\n\t\tnewFields = {title: this.checkboxTitle},\n\t\thasChanged = false,\n\t\ttagCheck = false,\n\t\thasTag = tiddler && tiddler.hasTag(this.checkboxTag),\n\t\tvalue = checked ? this.checkboxChecked : this.checkboxUnchecked;\n\tif(this.checkboxTag && this.checkboxInvertTag === \"yes\") {\n\t\ttagCheck = hasTag === checked;\n\t} else {\n\t\ttagCheck = hasTag !== checked;\n\t}\n\t// Set the tag if specified\n\tif(this.checkboxTag && (!tiddler || tagCheck)) {\n\t\tnewFields.tags = tiddler ? (tiddler.fields.tags || []).slice(0) : [];\n\t\tvar pos = newFields.tags.indexOf(this.checkboxTag);\n\t\tif(pos !== -1) {\n\t\t\tnewFields.tags.splice(pos,1);\n\t\t}\n\t\tif(this.checkboxInvertTag === \"yes\" && !checked) {\n\t\t\tnewFields.tags.push(this.checkboxTag);\n\t\t} else if(this.checkboxInvertTag !== \"yes\" && checked) {\n\t\t\tnewFields.tags.push(this.checkboxTag);\n\t\t}\n\t\thasChanged = true;\n\t}\n\t// Set the field if specified\n\tif(this.checkboxField) {\n\t\tif(!tiddler || tiddler.fields[this.checkboxField] !== value) {\n\t\t\tnewFields[this.checkboxField] = value;\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\t// Set the index if specified\n\tif(this.checkboxIndex) {\n\t\tvar indexValue = this.wiki.extractTiddlerDataItem(this.checkboxTitle,this.checkboxIndex);\n\t\tif(!tiddler || indexValue !== value) {\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\tif(hasChanged) {\n\t\tif(this.checkboxIndex) {\n\t\t\tthis.wiki.setText(this.checkboxTitle,\"\",this.checkboxIndex,value);\n\t\t} else {\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),fallbackFields,tiddler,newFields,this.wiki.getModificationFields()));\n\t\t}\n\t}\n\t// Trigger actions\n\tif(this.checkboxActions) {\n\t\tthis.invokeActionString(this.checkboxActions,this,event);\n\t}\n\tif(this.checkboxCheckActions && checked) {\n\t\tthis.invokeActionString(this.checkboxCheckActions,this,event);\n\t}\n\tif(this.checkboxUncheckActions && !checked) {\n\t\tthis.invokeActionString(this.checkboxUncheckActions,this,event);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nCheckboxWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.checkboxActions = this.getAttribute(\"actions\");\n\tthis.checkboxCheckActions = this.getAttribute(\"checkactions\");\n\tthis.checkboxUncheckActions = this.getAttribute(\"uncheckactions\");\n\tthis.checkboxTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.checkboxTag = this.getAttribute(\"tag\");\n\tthis.checkboxField = this.getAttribute(\"field\");\n\tthis.checkboxIndex = this.getAttribute(\"index\");\n\tthis.checkboxChecked = this.getAttribute(\"checked\");\n\tthis.checkboxUnchecked = this.getAttribute(\"unchecked\");\n\tthis.checkboxDefault = this.getAttribute(\"default\");\n\tthis.checkboxClass = this.getAttribute(\"class\",\"\");\n\tthis.checkboxInvertTag = this.getAttribute(\"invertTag\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCheckboxWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.tag || changedAttributes.invertTag || changedAttributes.field || changedAttributes.index || changedAttributes.checked || changedAttributes.unchecked || changedAttributes[\"default\"] || changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.checkboxTitle]) {\n\t\t\tthis.inputDomNode.checked = this.getValue();\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.checkbox = CheckboxWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/codeblock.js": {
"title": "$:/core/modules/widgets/codeblock.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/codeblock.js\ntype: application/javascript\nmodule-type: widget\n\nCode block node widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CodeBlockWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCodeBlockWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCodeBlockWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar codeNode = this.document.createElement(\"code\"),\n\t\tdomNode = this.document.createElement(\"pre\");\n\tcodeNode.appendChild(this.document.createTextNode(this.getAttribute(\"code\")));\n\tdomNode.appendChild(codeNode);\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.domNodes.push(domNode);\n\tif(this.postRender) {\n\t\tthis.postRender();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nCodeBlockWidget.prototype.execute = function() {\n\tthis.language = this.getAttribute(\"language\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCodeBlockWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.codeblock = CodeBlockWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/count.js": {
"title": "$:/core/modules/widgets/count.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/count.js\ntype: application/javascript\nmodule-type: widget\n\nCount widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CountWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCountWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCountWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.currentCount);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nCountWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.filter = this.getAttribute(\"filter\");\n\t// Execute the filter\n\tif(this.filter) {\n\t\tthis.currentCount = this.wiki.filterTiddlers(this.filter,this).length;\n\t} else {\n\t\tthis.currentCount = \"0\";\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCountWidget.prototype.refresh = function(changedTiddlers) {\n\t// Re-execute the filter to get the count\n\tthis.computeAttributes();\n\tvar oldCount = this.currentCount;\n\tthis.execute();\n\tif(this.currentCount !== oldCount) {\n\t\t// Regenerate and rerender the widget and replace the existing DOM node\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n\n};\n\nexports.count = CountWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/diff-text.js": {
"title": "$:/core/modules/widgets/diff-text.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/diff-text.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to display a diff between two texts\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget,\n\tdmp = require(\"$:/core/modules/utils/diff-match-patch/diff_match_patch.js\");\n\nvar DiffTextWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDiffTextWidget.prototype = new Widget();\n\nDiffTextWidget.prototype.invisibleCharacters = {\n\t\"\\n\": \"↩︎\\n\",\n\t\"\\r\": \"⇠\",\n\t\"\\t\": \"⇥\\t\"\n};\n\n/*\nRender this widget into the DOM\n*/\nDiffTextWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create the diff\n\tvar dmpObject = new dmp.diff_match_patch(),\n\t\tdiffs = dmpObject.diff_main(this.getAttribute(\"source\"),this.getAttribute(\"dest\"));\n\t// Apply required cleanup\n\tswitch(this.getAttribute(\"cleanup\",\"semantic\")) {\n\t\tcase \"none\":\n\t\t\t// No cleanup\n\t\t\tbreak;\n\t\tcase \"efficiency\":\n\t\t\tdmpObject.diff_cleanupEfficiency(diffs);\n\t\t\tbreak;\n\t\tdefault: // case \"semantic\"\n\t\t\tdmpObject.diff_cleanupSemantic(diffs);\n\t\t\tbreak;\n\t}\n\t// Create the elements\n\tvar domContainer = this.document.createElement(\"div\"), \n\t\tdomDiff = this.createDiffDom(diffs);\n\tparent.insertBefore(domContainer,nextSibling);\n\t// Set variables\n\tthis.setVariable(\"diff-count\",diffs.reduce(function(acc,diff) {\n\t\tif(diff[0] !== dmp.DIFF_EQUAL) {\n\t\t\tacc++;\n\t\t}\n\t\treturn acc;\n\t},0).toString());\n\t// Render child widgets\n\tthis.renderChildren(domContainer,null);\n\t// Render the diff\n\tdomContainer.appendChild(domDiff);\n\t// Save our container\n\tthis.domNodes.push(domContainer);\n};\n\n/*\nCreate DOM elements representing a list of diffs\n*/\nDiffTextWidget.prototype.createDiffDom = function(diffs) {\n\tvar self = this;\n\t// Create the element and assign the attributes\n\tvar domPre = this.document.createElement(\"pre\"),\n\t\tdomCode = this.document.createElement(\"code\");\n\t$tw.utils.each(diffs,function(diff) {\n\t\tvar tag = diff[0] === dmp.DIFF_INSERT ? \"ins\" : (diff[0] === dmp.DIFF_DELETE ? \"del\" : \"span\"),\n\t\t\tclassName = diff[0] === dmp.DIFF_INSERT ? \"tc-diff-insert\" : (diff[0] === dmp.DIFF_DELETE ? \"tc-diff-delete\" : \"tc-diff-equal\"),\n\t\t\tdom = self.document.createElement(tag),\n\t\t\ttext = diff[1],\n\t\t\tcurrPos = 0,\n\t\t\tre = /([\\x00-\\x1F])/mg,\n\t\t\tmatch = re.exec(text),\n\t\t\tspan,\n\t\t\tprintable;\n\t\tdom.className = className;\n\t\twhile(match) {\n\t\t\tif(currPos < match.index) {\n\t\t\t\tdom.appendChild(self.document.createTextNode(text.slice(currPos,match.index)));\n\t\t\t}\n\t\t\tspan = self.document.createElement(\"span\");\n\t\t\tspan.className = \"tc-diff-invisible\";\n\t\t\tprintable = self.invisibleCharacters[match[0]] || (\"[0x\" + match[0].charCodeAt(0).toString(16) + \"]\");\n\t\t\tspan.appendChild(self.document.createTextNode(printable));\n\t\t\tdom.appendChild(span);\n\t\t\tcurrPos = match.index + match[0].length;\n\t\t\tmatch = re.exec(text);\n\t\t}\n\t\tif(currPos < text.length) {\n\t\t\tdom.appendChild(self.document.createTextNode(text.slice(currPos)));\n\t\t}\n\t\tdomCode.appendChild(dom);\n\t});\n\tdomPre.appendChild(domCode);\n\treturn domPre;\n};\n\n/*\nCompute the internal state of the widget\n*/\nDiffTextWidget.prototype.execute = function() {\n\t// Make child widgets\n\tvar parseTreeNodes;\n\tif(this.parseTreeNode && this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\tparseTreeNodes = this.parseTreeNode.children;\n\t} else {\n\t\tparseTreeNodes = [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: \"$:/language/Diffs/CountMessage\"}\n\t\t\t}\n\t\t}];\n\t}\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDiffTextWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.source || changedAttributes.dest || changedAttributes.cleanup) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports[\"diff-text\"] = DiffTextWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/draggable.js": {
"title": "$:/core/modules/widgets/draggable.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/draggable.js\ntype: application/javascript\nmodule-type: widget\n\nDraggable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DraggableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDraggableWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDraggableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Sanitise the specified tag\n\tvar tag = this.draggableTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"div\";\n\t}\n\t// Create our element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = [\"tc-draggable\"];\n\tif(this.draggableClasses) {\n\t\tclasses.push(this.draggableClasses);\n\t}\n\tdomNode.setAttribute(\"class\",classes.join(\" \"));\n\t// Add event handlers\n\t$tw.utils.makeDraggable({\n\t\tdomNode: domNode,\n\t\tdragTiddlerFn: function() {return self.getAttribute(\"tiddler\");},\n\t\tdragFilterFn: function() {return self.getAttribute(\"filter\");},\n\t\tstartActions: self.startActions,\n\t\tendActions: self.endActions,\n\t\twidget: this\n\t});\n\t// Insert the link into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nDraggableWidget.prototype.execute = function() {\n\t// Pick up our attributes\n\tthis.draggableTag = this.getAttribute(\"tag\",\"div\");\n\tthis.draggableClasses = this.getAttribute(\"class\");\n\tthis.startActions = this.getAttribute(\"startactions\");\n\tthis.endActions = this.getAttribute(\"endactions\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDraggableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tag || changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.draggable = DraggableWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/droppable.js": {
"title": "$:/core/modules/widgets/droppable.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/droppable.js\ntype: application/javascript\nmodule-type: widget\n\nDroppable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DroppableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDroppableWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDroppableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.droppableTag && $tw.config.htmlUnsafeElements.indexOf(this.droppableTag) === -1) {\n\t\ttag = this.droppableTag;\n\t}\n\t// Create element and assign classes\n\tvar domNode = this.document.createElement(tag),\n\t\tclasses = (this[\"class\"] || \"\").split(\" \");\n\tclasses.push(\"tc-droppable\");\n\tdomNode.className = classes.join(\" \");\n\t// Add event handlers\n\tif(this.droppableEnable) {\n\t\t$tw.utils.addEventListeners(domNode,[\n\t\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"}\n\t\t]);\t\t\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n\t// Stack of outstanding enter/leave events\n\tthis.currentlyEntered = [];\n};\n\nDroppableWidget.prototype.enterDrag = function(event) {\n\tif(this.currentlyEntered.indexOf(event.target) === -1) {\n\t\tthis.currentlyEntered.push(event.target);\n\t}\n\t// If we're entering for the first time we need to apply highlighting\n\t$tw.utils.addClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDroppableWidget.prototype.leaveDrag = function(event) {\n\tvar pos = this.currentlyEntered.indexOf(event.target);\n\tif(pos !== -1) {\n\t\tthis.currentlyEntered.splice(pos,1);\n\t}\n\t// Remove highlighting if we're leaving externally. The hacky second condition is to resolve a problem with Firefox whereby there is an erroneous dragenter event if the node being dragged is within the dropzone\n\tif(this.currentlyEntered.length === 0 || (this.currentlyEntered.length === 1 && this.currentlyEntered[0] === $tw.dragInProgress)) {\n\t\tthis.currentlyEntered = [];\n\t\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t}\n};\n\nDroppableWidget.prototype.handleDragEnterEvent = function(event) {\n\tthis.enterDrag(event);\n\t// Tell the browser that we're ready to handle the drop\n\tevent.preventDefault();\n\t// Tell the browser not to ripple the drag up to any parent drop handlers\n\tevent.stopPropagation();\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDragOverEvent = function(event) {\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Tell the browser that we're still interested in the drop\n\tevent.preventDefault();\n\t// Set the drop effect\n\tevent.dataTransfer.dropEffect = this.droppableEffect;\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDragLeaveEvent = function(event) {\n\tthis.leaveDrag(event);\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDropEvent = function(event) {\n\tvar self = this;\n\tthis.leaveDrag(event);\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\tvar dataTransfer = event.dataTransfer;\n\t// Remove highlighting\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t// Try to import the various data types we understand\n\t$tw.utils.importDataTransfer(dataTransfer,null,function(fieldsArray) {\n\t\tfieldsArray.forEach(function(fields) {\n\t\t\tself.performActions(fields.title || fields.text,event);\n\t\t});\n\t});\n\t// Tell the browser that we handled the drop\n\tevent.preventDefault();\n\t// Stop the drop ripple up to any parent handlers\n\tevent.stopPropagation();\n\treturn false;\n};\n\nDroppableWidget.prototype.performActions = function(title,event) {\n\tif(this.droppableActions) {\n\t\tvar modifierKey = event.ctrlKey && ! event.shiftKey ? \"ctrl\" : event.shiftKey && !event.ctrlKey ? \"shift\" : \n\t\t\t\tevent.ctrlKey && event.shiftKey ? \"ctrl-shift\" : \"normal\" ;\n\t\tthis.invokeActionString(this.droppableActions,this,event,{actionTiddler: title, modifier: modifierKey});\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nDroppableWidget.prototype.execute = function() {\n\tthis.droppableActions = this.getAttribute(\"actions\");\n\tthis.droppableEffect = this.getAttribute(\"effect\",\"copy\");\n\tthis.droppableTag = this.getAttribute(\"tag\");\n\tthis.droppableClass = this.getAttribute(\"class\");\n\tthis.droppableEnable = (this.getAttribute(\"enable\") || \"yes\") === \"yes\";\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDroppableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"class\"] || changedAttributes.tag || changedAttributes.enable) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.droppable = DroppableWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/dropzone.js": {
"title": "$:/core/modules/widgets/dropzone.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/dropzone.js\ntype: application/javascript\nmodule-type: widget\n\nDropzone widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DropZoneWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDropZoneWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDropZoneWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar domNode = this.document.createElement(\"div\");\n\tdomNode.className = this.dropzoneClass || \"tc-dropzone\";\n\t// Add event handlers\n\tif(this.dropzoneEnable) {\n\t\t$tw.utils.addEventListeners(domNode,[\n\t\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"},\n\t\t\t{name: \"paste\", handlerObject: this, handlerMethod: \"handlePasteEvent\"},\n\t\t\t{name: \"dragend\", handlerObject: this, handlerMethod: \"handleDragEndEvent\"}\n\t\t]);\t\t\n\t}\n\tdomNode.addEventListener(\"click\",function (event) {\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n\t// Stack of outstanding enter/leave events\n\tthis.currentlyEntered = [];\n};\n\nDropZoneWidget.prototype.enterDrag = function(event) {\n\tif(this.currentlyEntered.indexOf(event.target) === -1) {\n\t\tthis.currentlyEntered.push(event.target);\n\t}\n\t// If we're entering for the first time we need to apply highlighting\n\t$tw.utils.addClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDropZoneWidget.prototype.leaveDrag = function(event) {\n\tvar pos = this.currentlyEntered.indexOf(event.target);\n\tif(pos !== -1) {\n\t\tthis.currentlyEntered.splice(pos,1);\n\t}\n\t// Remove highlighting if we're leaving externally\n\tif(this.currentlyEntered.length === 0) {\n\t\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t}\n};\n\nDropZoneWidget.prototype.handleDragEnterEvent = function(event) {\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\tthis.enterDrag(event);\n\t// Tell the browser that we're ready to handle the drop\n\tevent.preventDefault();\n\t// Tell the browser not to ripple the drag up to any parent drop handlers\n\tevent.stopPropagation();\n};\n\nDropZoneWidget.prototype.handleDragOverEvent = function(event) {\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\t// Tell the browser that we're still interested in the drop\n\tevent.preventDefault();\n\tevent.dataTransfer.dropEffect = \"copy\"; // Explicitly show this is a copy\n};\n\nDropZoneWidget.prototype.handleDragLeaveEvent = function(event) {\n\tthis.leaveDrag(event);\n};\n\nDropZoneWidget.prototype.handleDragEndEvent = function(event) {\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDropZoneWidget.prototype.handleDropEvent = function(event) {\n\tvar self = this,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray)});\n\t\t};\n\tthis.leaveDrag(event);\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\tvar self = this,\n\t\tdataTransfer = event.dataTransfer;\n\t// Remove highlighting\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t// Import any files in the drop\n\tvar numFiles = 0;\n\tif(dataTransfer.files) {\n\t\tnumFiles = this.wiki.readFiles(dataTransfer.files,{\n\t\t\tcallback: readFileCallback,\n\t\t\tdeserializer: this.dropzoneDeserializer\n\t\t});\n\t}\n\t// Try to import the various data types we understand\n\tif(numFiles === 0) {\n\t\t$tw.utils.importDataTransfer(dataTransfer,this.wiki.generateNewTitle(\"Untitled\"),readFileCallback);\n\t}\n\t// Tell the browser that we handled the drop\n\tevent.preventDefault();\n\t// Stop the drop ripple up to any parent handlers\n\tevent.stopPropagation();\n};\n\nDropZoneWidget.prototype.handlePasteEvent = function(event) {\n\tvar self = this,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray)});\n\t\t};\n\t// Let the browser handle it if we're in a textarea or input box\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) == -1 && !event.target.isContentEditable) {\n\t\tvar self = this,\n\t\t\titems = event.clipboardData.items;\n\t\t// Enumerate the clipboard items\n\t\tfor(var t = 0; t<items.length; t++) {\n\t\t\tvar item = items[t];\n\t\t\tif(item.kind === \"file\") {\n\t\t\t\t// Import any files\n\t\t\t\tthis.wiki.readFile(item.getAsFile(),{\n\t\t\t\t\tcallback: readFileCallback,\n\t\t\t\t\tdeserializer: this.dropzoneDeserializer\n\t\t\t\t});\n\t\t\t} else if(item.kind === \"string\") {\n\t\t\t\t// Create tiddlers from string items\n\t\t\t\tvar type = item.type;\n\t\t\t\titem.getAsString(function(str) {\n\t\t\t\t\tvar tiddlerFields = {\n\t\t\t\t\t\ttitle: self.wiki.generateNewTitle(\"Untitled\"),\n\t\t\t\t\t\ttext: str,\n\t\t\t\t\t\ttype: type\n\t\t\t\t\t};\n\t\t\t\t\tif($tw.log.IMPORT) {\n\t\t\t\t\t\tconsole.log(\"Importing string '\" + str + \"', type: '\" + type + \"'\");\n\t\t\t\t\t}\n\t\t\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify([tiddlerFields])});\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\t// Tell the browser that we've handled the paste\n\t\tevent.stopPropagation();\n\t\tevent.preventDefault();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nDropZoneWidget.prototype.execute = function() {\n\tthis.dropzoneClass = this.getAttribute(\"class\");\n\tthis.dropzoneDeserializer = this.getAttribute(\"deserializer\");\n\tthis.dropzoneEnable = (this.getAttribute(\"enable\") || \"yes\") === \"yes\";\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDropZoneWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.enable) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.dropzone = DropZoneWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/edit-binary.js": {
"title": "$:/core/modules/widgets/edit-binary.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/edit-binary.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-binary widget; placeholder for editing binary tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar BINARY_WARNING_MESSAGE = \"$:/core/ui/BinaryWarning\";\nvar EXPORT_BUTTON_IMAGE = \"$:/core/images/export-button\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditBinaryWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditBinaryWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditBinaryWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditBinaryWidget.prototype.execute = function() {\n\t// Get our parameters\n\tvar editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tvar tiddler = this.wiki.getTiddler(editTitle);\n\tvar type = tiddler.fields.type;\n\tvar text = tiddler.fields.text;\n\t// Transclude the binary data tiddler warning message\n\tvar warn = {\n\t\ttype: \"element\",\n\t\ttag: \"p\",\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: BINARY_WARNING_MESSAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Create download link based on draft tiddler title\n\tvar link = {\n\t\ttype: \"element\",\n\t\ttag: \"a\",\n\t\tattributes: {\n\t\t\ttitle: {type: \"indirect\", textReference: \"!!draft.title\"},\n\t\t\tdownload: {type: \"indirect\", textReference: \"!!draft.title\"}\n\t\t},\n\t\tchildren: [{\n\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: EXPORT_BUTTON_IMAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Set the link href to internal data URI (no external)\n\tif(text) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: \"data:\" + type + \";base64,\" + text\n\t\t};\n\t}\n\t// Combine warning message and download link in a div\n\tvar element = {\n\t\ttype: \"element\",\n\t\ttag: \"div\",\n\t\tattributes: {\n\t\t\tclass: {type: \"string\", value: \"tc-binary-warning\"}\n\t\t},\n\t\tchildren: [warn, link]\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets([element]);\n};\n\n/*\nRefresh by refreshing our child widget\n*/\nEditBinaryWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports[\"edit-binary\"] = EditBinaryWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/edit-bitmap.js": {
"title": "$:/core/modules/widgets/edit-bitmap.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/edit-bitmap.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-bitmap widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Default image sizes\nvar DEFAULT_IMAGE_WIDTH = 600,\n\tDEFAULT_IMAGE_HEIGHT = 370,\n\tDEFAULT_IMAGE_TYPE = \"image/png\";\n\n// Configuration tiddlers\nvar LINE_WIDTH_TITLE = \"$:/config/BitmapEditor/LineWidth\",\n\tLINE_COLOUR_TITLE = \"$:/config/BitmapEditor/Colour\",\n\tLINE_OPACITY_TITLE = \"$:/config/BitmapEditor/Opacity\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditBitmapWidget = function(parseTreeNode,options) {\n\t// Initialise the editor operations if they've not been done already\n\tif(!this.editorOperations) {\n\t\tEditBitmapWidget.prototype.editorOperations = {};\n\t\t$tw.modules.applyMethods(\"bitmapeditoroperation\",this.editorOperations);\n\t}\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditBitmapWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditBitmapWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create the wrapper for the toolbar and render its content\n\tthis.toolbarNode = this.document.createElement(\"div\");\n\tthis.toolbarNode.className = \"tc-editor-toolbar\";\n\tparent.insertBefore(this.toolbarNode,nextSibling);\n\tthis.domNodes.push(this.toolbarNode);\n\t// Create the on-screen canvas\n\tthis.canvasDomNode = $tw.utils.domMaker(\"canvas\",{\n\t\tdocument: this.document,\n\t\t\"class\":\"tc-edit-bitmapeditor\",\n\t\teventListeners: [{\n\t\t\tname: \"touchstart\", handlerObject: this, handlerMethod: \"handleTouchStartEvent\"\n\t\t},{\n\t\t\tname: \"touchmove\", handlerObject: this, handlerMethod: \"handleTouchMoveEvent\"\n\t\t},{\n\t\t\tname: \"touchend\", handlerObject: this, handlerMethod: \"handleTouchEndEvent\"\n\t\t},{\n\t\t\tname: \"mousedown\", handlerObject: this, handlerMethod: \"handleMouseDownEvent\"\n\t\t},{\n\t\t\tname: \"mousemove\", handlerObject: this, handlerMethod: \"handleMouseMoveEvent\"\n\t\t},{\n\t\t\tname: \"mouseup\", handlerObject: this, handlerMethod: \"handleMouseUpEvent\"\n\t\t}]\n\t});\n\t// Set the width and height variables\n\tthis.setVariable(\"tv-bitmap-editor-width\",this.canvasDomNode.width + \"px\");\n\tthis.setVariable(\"tv-bitmap-editor-height\",this.canvasDomNode.height + \"px\");\n\t// Render toolbar child widgets\n\tthis.renderChildren(this.toolbarNode,null);\n\t// // Insert the elements into the DOM\n\tparent.insertBefore(this.canvasDomNode,nextSibling);\n\tthis.domNodes.push(this.canvasDomNode);\n\t// Load the image into the canvas\n\tif($tw.browser) {\n\t\tthis.loadCanvas();\n\t}\n\t// Add widget message listeners\n\tthis.addEventListeners([\n\t\t{type: \"tm-edit-bitmap-operation\", handler: \"handleEditBitmapOperationMessage\"}\n\t]);\n};\n\n/*\nHandle an edit bitmap operation message from the toolbar\n*/\nEditBitmapWidget.prototype.handleEditBitmapOperationMessage = function(event) {\n\t// Invoke the handler\n\tvar handler = this.editorOperations[event.param];\n\tif(handler) {\n\t\thandler.call(this,event);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditBitmapWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nJust refresh the toolbar\n*/\nEditBitmapWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nSet the bitmap size variables and refresh the toolbar\n*/\nEditBitmapWidget.prototype.refreshToolbar = function() {\n\t// Set the width and height variables\n\tthis.setVariable(\"tv-bitmap-editor-width\",this.canvasDomNode.width + \"px\");\n\tthis.setVariable(\"tv-bitmap-editor-height\",this.canvasDomNode.height + \"px\");\n\t// Refresh each of our child widgets\n\t$tw.utils.each(this.children,function(childWidget) {\n\t\tchildWidget.refreshSelf();\n\t});\n};\n\nEditBitmapWidget.prototype.loadCanvas = function() {\n\tvar tiddler = this.wiki.getTiddler(this.editTitle),\n\t\tcurrImage = new Image();\n\t// Set up event handlers for loading the image\n\tvar self = this;\n\tcurrImage.onload = function() {\n\t\t// Copy the image to the on-screen canvas\n\t\tself.initCanvas(self.canvasDomNode,currImage.width,currImage.height,currImage);\n\t\t// And also copy the current bitmap to the off-screen canvas\n\t\tself.currCanvas = self.document.createElement(\"canvas\");\n\t\tself.initCanvas(self.currCanvas,currImage.width,currImage.height,currImage);\n\t\t// Set the width and height input boxes\n\t\tself.refreshToolbar();\n\t};\n\tcurrImage.onerror = function() {\n\t\t// Set the on-screen canvas size and clear it\n\t\tself.initCanvas(self.canvasDomNode,DEFAULT_IMAGE_WIDTH,DEFAULT_IMAGE_HEIGHT);\n\t\t// Set the off-screen canvas size and clear it\n\t\tself.currCanvas = self.document.createElement(\"canvas\");\n\t\tself.initCanvas(self.currCanvas,DEFAULT_IMAGE_WIDTH,DEFAULT_IMAGE_HEIGHT);\n\t\t// Set the width and height input boxes\n\t\tself.refreshToolbar();\n\t};\n\t// Get the current bitmap into an image object\n\tif(tiddler && tiddler.fields.type && tiddler.fields.text) {\n\t\tcurrImage.src = \"data:\" + tiddler.fields.type + \";base64,\" + tiddler.fields.text;\t\t\n\t} else {\n\t\tcurrImage.width = DEFAULT_IMAGE_WIDTH;\n\t\tcurrImage.height = DEFAULT_IMAGE_HEIGHT;\n\t\tcurrImage.onerror();\n\t}\n};\n\nEditBitmapWidget.prototype.initCanvas = function(canvas,width,height,image) {\n\tcanvas.width = width;\n\tcanvas.height = height;\n\tvar ctx = canvas.getContext(\"2d\");\n\tif(image) {\n\t\tctx.drawImage(image,0,0);\n\t} else {\n\t\tctx.fillStyle = \"#fff\";\n\t\tctx.fillRect(0,0,canvas.width,canvas.height);\n\t}\n};\n\n/*\n** Change the size of the canvas, preserving the current image\n*/\nEditBitmapWidget.prototype.changeCanvasSize = function(newWidth,newHeight) {\n\t// Create and size a new canvas\n\tvar newCanvas = this.document.createElement(\"canvas\");\n\tthis.initCanvas(newCanvas,newWidth,newHeight);\n\t// Copy the old image\n\tvar ctx = newCanvas.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n\t// Set the new canvas as the current one\n\tthis.currCanvas = newCanvas;\n\t// Set the size of the onscreen canvas\n\tthis.canvasDomNode.width = newWidth;\n\tthis.canvasDomNode.height = newHeight;\n\t// Paint the onscreen canvas with the offscreen canvas\n\tctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n};\n\n/*\n** Rotate the canvas left by 90 degrees\n*/\nEditBitmapWidget.prototype.rotateCanvasLeft = function() {\n\t// Get the current size of the image\n\tvar origWidth = this.currCanvas.width,\n\t\torigHeight = this.currCanvas.height;\n\t// Create and size a new canvas\n\tvar newCanvas = this.document.createElement(\"canvas\"),\n\t\tnewWidth = origHeight,\n\t\tnewHeight = origWidth;\n\tthis.initCanvas(newCanvas,newWidth,newHeight);\n\t// Copy the old image\n\tvar ctx = newCanvas.getContext(\"2d\");\n\tctx.save();\n\tctx.translate(newWidth / 2,newHeight / 2);\n\tctx.rotate(-Math.PI / 2);\n\tctx.drawImage(this.currCanvas,-origWidth / 2,-origHeight / 2);\n\tctx.restore();\n\t// Set the new canvas as the current one\n\tthis.currCanvas = newCanvas;\n\t// Set the size of the onscreen canvas\n\tthis.canvasDomNode.width = newWidth;\n\tthis.canvasDomNode.height = newHeight;\n\t// Paint the onscreen canvas with the offscreen canvas\n\tctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n};\n\nEditBitmapWidget.prototype.handleTouchStartEvent = function(event) {\n\tthis.brushDown = true;\n\tthis.strokeStart(event.touches[0].clientX,event.touches[0].clientY);\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleTouchMoveEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.strokeMove(event.touches[0].clientX,event.touches[0].clientY);\n\t}\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleTouchEndEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.brushDown = false;\n\t\tthis.strokeEnd();\n\t}\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleMouseDownEvent = function(event) {\n\tthis.strokeStart(event.clientX,event.clientY);\n\tthis.brushDown = true;\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleMouseMoveEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.strokeMove(event.clientX,event.clientY);\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nEditBitmapWidget.prototype.handleMouseUpEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.brushDown = false;\n\t\tthis.strokeEnd();\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nEditBitmapWidget.prototype.adjustCoordinates = function(x,y) {\n\tvar canvasRect = this.canvasDomNode.getBoundingClientRect(),\n\t\tscale = this.canvasDomNode.width/canvasRect.width;\n\treturn {x: (x - canvasRect.left) * scale, y: (y - canvasRect.top) * scale};\n};\n\nEditBitmapWidget.prototype.strokeStart = function(x,y) {\n\t// Start off a new stroke\n\tthis.stroke = [this.adjustCoordinates(x,y)];\n};\n\nEditBitmapWidget.prototype.strokeMove = function(x,y) {\n\tvar ctx = this.canvasDomNode.getContext(\"2d\"),\n\t\tt;\n\t// Add the new position to the end of the stroke\n\tthis.stroke.push(this.adjustCoordinates(x,y));\n\t// Redraw the previous image\n\tctx.drawImage(this.currCanvas,0,0);\n\t// Render the stroke\n\tctx.globalAlpha = parseFloat(this.wiki.getTiddlerText(LINE_OPACITY_TITLE,\"1.0\"));\n\tctx.strokeStyle = this.wiki.getTiddlerText(LINE_COLOUR_TITLE,\"#ff0\");\n\tctx.lineWidth = parseFloat(this.wiki.getTiddlerText(LINE_WIDTH_TITLE,\"3\"));\n\tctx.lineCap = \"round\";\n\tctx.lineJoin = \"round\";\n\tctx.beginPath();\n\tctx.moveTo(this.stroke[0].x,this.stroke[0].y);\n\tfor(t=1; t<this.stroke.length-1; t++) {\n\t\tvar s1 = this.stroke[t],\n\t\t\ts2 = this.stroke[t-1],\n\t\t\ttx = (s1.x + s2.x)/2,\n\t\t\tty = (s1.y + s2.y)/2;\n\t\tctx.quadraticCurveTo(s2.x,s2.y,tx,ty);\n\t}\n\tctx.stroke();\n};\n\nEditBitmapWidget.prototype.strokeEnd = function() {\n\t// Copy the bitmap to the off-screen canvas\n\tvar ctx = this.currCanvas.getContext(\"2d\");\n\tctx.drawImage(this.canvasDomNode,0,0);\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\nEditBitmapWidget.prototype.saveChanges = function() {\n\tvar tiddler = this.wiki.getTiddler(this.editTitle) || new $tw.Tiddler({title: this.editTitle,type: DEFAULT_IMAGE_TYPE});\n\t// data URIs look like \"data:<type>;base64,<text>\"\n\tvar dataURL = this.canvasDomNode.toDataURL(tiddler.fields.type),\n\t\tposColon = dataURL.indexOf(\":\"),\n\t\tposSemiColon = dataURL.indexOf(\";\"),\n\t\tposComma = dataURL.indexOf(\",\"),\n\t\ttype = dataURL.substring(posColon+1,posSemiColon),\n\t\ttext = dataURL.substring(posComma+1);\n\tvar update = {type: type, text: text};\n\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getModificationFields(),tiddler,update,this.wiki.getCreationFields()));\n};\n\nexports[\"edit-bitmap\"] = EditBitmapWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/edit-shortcut.js": {
"title": "$:/core/modules/widgets/edit-shortcut.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/edit-shortcut.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to display an editable keyboard shortcut\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditShortcutWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditShortcutWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditShortcutWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.inputNode = this.document.createElement(\"input\");\n\t// Assign classes\n\tif(this.shortcutClass) {\n\t\tthis.inputNode.className = this.shortcutClass;\t\t\n\t}\n\t// Assign other attributes\n\tif(this.shortcutStyle) {\n\t\tthis.inputNode.setAttribute(\"style\",this.shortcutStyle);\n\t}\n\tif(this.shortcutTooltip) {\n\t\tthis.inputNode.setAttribute(\"title\",this.shortcutTooltip);\n\t}\n\tif(this.shortcutPlaceholder) {\n\t\tthis.inputNode.setAttribute(\"placeholder\",this.shortcutPlaceholder);\n\t}\n\tif(this.shortcutAriaLabel) {\n\t\tthis.inputNode.setAttribute(\"aria-label\",this.shortcutAriaLabel);\n\t}\n\t// Assign the current shortcut\n\tthis.updateInputNode();\n\t// Add event handlers\n\t$tw.utils.addEventListeners(this.inputNode,[\n\t\t{name: \"keydown\", handlerObject: this, handlerMethod: \"handleKeydownEvent\"}\n\t]);\n\t// Link into the DOM\n\tparent.insertBefore(this.inputNode,nextSibling);\n\tthis.domNodes.push(this.inputNode);\n\t// Focus the input Node if focus === \"yes\" or focus === \"true\"\n\tif(this.shortcutFocus === \"yes\" || this.shortcutFocus === \"true\") {\n\t\tthis.focus();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditShortcutWidget.prototype.execute = function() {\n\tthis.shortcutTiddler = this.getAttribute(\"tiddler\");\n\tthis.shortcutField = this.getAttribute(\"field\");\n\tthis.shortcutIndex = this.getAttribute(\"index\");\n\tthis.shortcutPlaceholder = this.getAttribute(\"placeholder\");\n\tthis.shortcutDefault = this.getAttribute(\"default\",\"\");\n\tthis.shortcutClass = this.getAttribute(\"class\");\n\tthis.shortcutStyle = this.getAttribute(\"style\");\n\tthis.shortcutTooltip = this.getAttribute(\"tooltip\");\n\tthis.shortcutAriaLabel = this.getAttribute(\"aria-label\");\n\tthis.shortcutFocus = this.getAttribute(\"focus\");\n};\n\n/*\nUpdate the value of the input node\n*/\nEditShortcutWidget.prototype.updateInputNode = function() {\n\tif(this.shortcutField) {\n\t\tvar tiddler = this.wiki.getTiddler(this.shortcutTiddler);\n\t\tif(tiddler && $tw.utils.hop(tiddler.fields,this.shortcutField)) {\n\t\t\tthis.inputNode.value = tiddler.getFieldString(this.shortcutField);\n\t\t} else {\n\t\t\tthis.inputNode.value = this.shortcutDefault;\n\t\t}\n\t} else if(this.shortcutIndex) {\n\t\tthis.inputNode.value = this.wiki.extractTiddlerDataItem(this.shortcutTiddler,this.shortcutIndex,this.shortcutDefault);\n\t} else {\n\t\tthis.inputNode.value = this.wiki.getTiddlerText(this.shortcutTiddler,this.shortcutDefault);\n\t}\n};\n\n/*\nHandle a dom \"keydown\" event\n*/\nEditShortcutWidget.prototype.handleKeydownEvent = function(event) {\n\t// Ignore shift, ctrl, meta, alt\n\tif(event.keyCode && $tw.keyboardManager.getModifierKeys().indexOf(event.keyCode) === -1) {\n\t\t// Get the shortcut text representation\n\t\tvar value = $tw.keyboardManager.getPrintableShortcuts([{\n\t\t\tctrlKey: event.ctrlKey,\n\t\t\tshiftKey: event.shiftKey,\n\t\t\taltKey: event.altKey,\n\t\t\tmetaKey: event.metaKey,\n\t\t\tkeyCode: event.keyCode\n\t\t}]);\n\t\tif(value.length > 0) {\n\t\t\tthis.wiki.setText(this.shortcutTiddler,this.shortcutField,this.shortcutIndex,value[0]);\n\t\t}\n\t\t// Ignore the keydown if it was already handled\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn true;\t\t\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nfocus the input node\n*/\nEditShortcutWidget.prototype.focus = function() {\n\tif(this.inputNode.focus && this.inputNode.select) {\n\t\tthis.inputNode.focus();\n\t\tthis.inputNode.select();\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget needed re-rendering\n*/\nEditShortcutWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.placeholder || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.style || changedAttributes.tooltip || changedAttributes[\"aria-label\"] || changedAttributes.focus) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedTiddlers[this.shortcutTiddler]) {\n\t\tthis.updateInputNode();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports[\"edit-shortcut\"] = EditShortcutWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/edit-text.js": {
"title": "$:/core/modules/widgets/edit-text.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/edit-text.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-text widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar editTextWidgetFactory = require(\"$:/core/modules/editor/factory.js\").editTextWidgetFactory,\n\tFramedEngine = require(\"$:/core/modules/editor/engines/framed.js\").FramedEngine,\n\tSimpleEngine = require(\"$:/core/modules/editor/engines/simple.js\").SimpleEngine;\n\nexports[\"edit-text\"] = editTextWidgetFactory(FramedEngine,SimpleEngine);\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/edit.js": {
"title": "$:/core/modules/widgets/edit.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/edit.js\ntype: application/javascript\nmodule-type: widget\n\nEdit widget is a meta-widget chooses the appropriate actual editting widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n// Mappings from content type to editor type are stored in tiddlers with this prefix\nvar EDITOR_MAPPING_PREFIX = \"$:/config/EditorTypeMappings/\";\n\n/*\nCompute the internal state of the widget\n*/\nEditWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.editField = this.getAttribute(\"field\",\"text\");\n\tthis.editIndex = this.getAttribute(\"index\");\n\tthis.editClass = this.getAttribute(\"class\");\n\tthis.editPlaceholder = this.getAttribute(\"placeholder\");\n\tthis.editTabIndex = this.getAttribute(\"tabindex\");\n\tthis.editFocus = this.getAttribute(\"focus\",\"\");\n\t// Choose the appropriate edit widget\n\tthis.editorType = this.getEditorType();\n\t// Make the child widgets\n\tthis.makeChildWidgets([{\n\t\ttype: \"edit-\" + this.editorType,\n\t\tattributes: {\n\t\t\ttiddler: {type: \"string\", value: this.editTitle},\n\t\t\tfield: {type: \"string\", value: this.editField},\n\t\t\tindex: {type: \"string\", value: this.editIndex},\n\t\t\t\"class\": {type: \"string\", value: this.editClass},\n\t\t\t\"placeholder\": {type: \"string\", value: this.editPlaceholder},\n\t\t\t\"tabindex\": {type: \"string\", value: this.editTabIndex},\n\t\t\t\"focus\": {type: \"string\", value: this.editFocus}\n\t\t},\n\t\tchildren: this.parseTreeNode.children\n\t}]);\n};\n\nEditWidget.prototype.getEditorType = function() {\n\t// Get the content type of the thing we're editing\n\tvar type;\n\tif(this.editField === \"text\") {\n\t\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\t\tif(tiddler) {\n\t\t\ttype = tiddler.fields.type;\n\t\t}\n\t}\n\ttype = type || \"text/vnd.tiddlywiki\";\n\tvar editorType = this.wiki.getTiddlerText(EDITOR_MAPPING_PREFIX + type);\n\tif(!editorType) {\n\t\tvar typeInfo = $tw.config.contentTypeInfo[type];\n\t\tif(typeInfo && typeInfo.encoding === \"base64\") {\n\t\t\teditorType = \"binary\";\n\t\t} else {\n\t\t\teditorType = \"text\";\n\t\t}\n\t}\n\treturn editorType;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEditWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// Refresh if an attribute has changed, or the type associated with the target tiddler has changed\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.tabindex || (changedTiddlers[this.editTitle] && this.getEditorType() !== this.editorType)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.edit = EditWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/element.js": {
"title": "$:/core/modules/widgets/element.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/element.js\ntype: application/javascript\nmodule-type: widget\n\nElement widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ElementWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nElementWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nElementWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Neuter blacklisted elements\n\tvar tag = this.parseTreeNode.tag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"safe-\" + tag;\n\t}\n\t// Adjust headings by the current base level\n\tvar headingLevel = [\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\"].indexOf(tag);\n\tif(headingLevel !== -1) {\n\t\tvar baseLevel = parseInt(this.getVariable(\"tv-adjust-heading-level\",\"0\"),10) || 0;\n\t\theadingLevel = Math.min(Math.max(headingLevel + 1 + baseLevel,1),6);\n\t\ttag = \"h\" + headingLevel;\n\t}\n\t// Create the DOM node\n\tvar domNode = this.document.createElementNS(this.namespace,tag);\n\tthis.assignAttributes(domNode,{excludeEventAttributes: true});\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nElementWidget.prototype.execute = function() {\n\t// Select the namespace for the tag\n\tvar tagNamespaces = {\n\t\t\tsvg: \"http://www.w3.org/2000/svg\",\n\t\t\tmath: \"http://www.w3.org/1998/Math/MathML\",\n\t\t\tbody: \"http://www.w3.org/1999/xhtml\"\n\t\t};\n\tthis.namespace = tagNamespaces[this.parseTreeNode.tag];\n\tif(this.namespace) {\n\t\tthis.setVariable(\"namespace\",this.namespace);\n\t} else {\n\t\tthis.namespace = this.getVariable(\"namespace\",{defaultValue: \"http://www.w3.org/1999/xhtml\"});\n\t}\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nElementWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\thasChangedAttributes = $tw.utils.count(changedAttributes) > 0;\n\tif(hasChangedAttributes) {\n\t\t// Update our attributes\n\t\tthis.assignAttributes(this.domNodes[0],{excludeEventAttributes: true});\n\t}\n\treturn this.refreshChildren(changedTiddlers) || hasChangedAttributes;\n};\n\nexports.element = ElementWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/encrypt.js": {
"title": "$:/core/modules/widgets/encrypt.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/encrypt.js\ntype: application/javascript\nmodule-type: widget\n\nEncrypt widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EncryptWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEncryptWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEncryptWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.encryptedText);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEncryptWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.filter = this.getAttribute(\"filter\",\"[!is[system]]\");\n\t// Encrypt the filtered tiddlers\n\tvar tiddlers = this.wiki.filterTiddlers(this.filter),\n\t\tjson = {},\n\t\tself = this;\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title),\n\t\t\tjsonTiddler = {};\n\t\tfor(var f in tiddler.fields) {\n\t\t\tjsonTiddler[f] = tiddler.getFieldString(f);\n\t\t}\n\t\tjson[title] = jsonTiddler;\n\t});\n\tthis.encryptedText = $tw.utils.htmlEncode($tw.crypto.encrypt(JSON.stringify(json)));\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEncryptWidget.prototype.refresh = function(changedTiddlers) {\n\t// We don't need to worry about refreshing because the encrypt widget isn't for interactive use\n\treturn false;\n};\n\nexports.encrypt = EncryptWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/entity.js": {
"title": "$:/core/modules/widgets/entity.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/entity.js\ntype: application/javascript\nmodule-type: widget\n\nHTML entity widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EntityWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEntityWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEntityWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tvar entityString = this.getAttribute(\"entity\",this.parseTreeNode.entity || \"\"),\n\t\ttextNode = this.document.createTextNode($tw.utils.entityDecode(entityString));\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEntityWidget.prototype.execute = function() {\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEntityWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.entity) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.entity = EntityWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/fieldmangler.js": {
"title": "$:/core/modules/widgets/fieldmangler.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/fieldmangler.js\ntype: application/javascript\nmodule-type: widget\n\nField mangler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar FieldManglerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-remove-field\", handler: \"handleRemoveFieldEvent\"},\n\t\t{type: \"tm-add-field\", handler: \"handleAddFieldEvent\"},\n\t\t{type: \"tm-remove-tag\", handler: \"handleRemoveTagEvent\"},\n\t\t{type: \"tm-add-tag\", handler: \"handleAddTagEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nFieldManglerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nFieldManglerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nFieldManglerWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.mangleTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nFieldManglerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nFieldManglerWidget.prototype.handleRemoveFieldEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tdeletion = {};\n\tdeletion[event.param] = undefined;\n\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,deletion));\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleAddFieldEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\taddition = this.wiki.getModificationFields(),\n\t\thadInvalidFieldName = false,\n\t\taddField = function(name,value) {\n\t\t\tvar trimmedName = name.toLowerCase().trim();\n\t\t\tif(!$tw.utils.isValidFieldName(trimmedName)) {\n\t\t\t\tif(!hadInvalidFieldName) {\n\t\t\t\t\talert($tw.language.getString(\n\t\t\t\t\t\t\"InvalidFieldName\",\n\t\t\t\t\t\t{variables:\n\t\t\t\t\t\t\t{fieldName: trimmedName}\n\t\t\t\t\t\t}\n\t\t\t\t\t));\n\t\t\t\t\thadInvalidFieldName = true;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif(!value && tiddler) {\n\t\t\t\t\tvalue = tiddler.fields[trimmedName];\n\t\t\t\t}\n\t\t\t\taddition[trimmedName] = value || \"\";\n\t\t\t}\n\t\t\treturn;\n\t\t};\n\taddition.title = this.mangleTitle;\n\tif(typeof event.param === \"string\") {\n\t\taddField(event.param,\"\");\n\t}\n\tif(typeof event.paramObject === \"object\") {\n\t\tfor(var name in event.paramObject) {\n\t\t\taddField(name,event.paramObject[name]);\n\t\t}\n\t}\n\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,addition));\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleRemoveTagEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tmodification = this.wiki.getModificationFields();\n\tif(tiddler && tiddler.fields.tags) {\n\t\tvar p = tiddler.fields.tags.indexOf(event.param);\n\t\tif(p !== -1) {\n\t\t\tmodification.tags = (tiddler.fields.tags || []).slice(0);\n\t\t\tmodification.tags.splice(p,1);\n\t\t\tif(modification.tags.length === 0) {\n\t\t\t\tmodification.tags = undefined;\n\t\t\t}\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,modification));\n\t\t}\n\t}\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleAddTagEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tmodification = this.wiki.getModificationFields();\n\tif(tiddler && typeof event.param === \"string\") {\n\t\tvar tag = event.param.trim();\n\t\tif(tag !== \"\") {\n\t\t\tmodification.tags = (tiddler.fields.tags || []).slice(0);\n\t\t\t$tw.utils.pushTop(modification.tags,tag);\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,modification));\t\t\t\n\t\t}\n\t} else if(typeof event.param === \"string\" && event.param.trim() !== \"\" && this.mangleTitle.trim() !== \"\") {\n\t\tvar tag = [];\n\t\ttag.push(event.param.trim());\n\t\tthis.wiki.addTiddler(new $tw.Tiddler({title: this.mangleTitle, tags: tag},modification));\n\t}\n\treturn true;\n};\n\nexports.fieldmangler = FieldManglerWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/fields.js": {
"title": "$:/core/modules/widgets/fields.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/fields.js\ntype: application/javascript\nmodule-type: widget\n\nFields widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar FieldsWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nFieldsWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nFieldsWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.text);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nFieldsWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.template = this.getAttribute(\"template\");\n\tthis.sort = this.getAttribute(\"sort\",\"yes\") === \"yes\";\n\tthis.sortReverse = this.getAttribute(\"sortReverse\",\"no\") === \"yes\";\n\tthis.exclude = this.getAttribute(\"exclude\");\n\tthis.include = this.getAttribute(\"include\",null);\n\tthis.stripTitlePrefix = this.getAttribute(\"stripTitlePrefix\",\"no\") === \"yes\";\n\t// Get the value to display\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle);\n\n\t// Get the inclusion and exclusion list\n\tvar excludeArr = (this.exclude) ? this.exclude.split(\" \") : [\"text\"];\n\t// Include takes precedence\n\tvar includeArr = (this.include) ? this.include.split(\" \") : null;\n\n\t// Compose the template\n\tvar text = [];\n\tif(this.template && tiddler) {\n\t\tvar fields = [];\n\t\tif (includeArr) { // Include takes precedence\n\t\t\tfor(var i=0; i<includeArr.length; i++) {\n\t\t\t\tif(tiddler.fields[includeArr[i]]) {\n\t\t\t\t\tfields.push(includeArr[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor(var fieldName in tiddler.fields) {\n\t\t\t\tif(excludeArr.indexOf(fieldName) === -1) {\n\t\t\t\t\tfields.push(fieldName);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.sort) fields.sort();\n\t\tif (this.sortReverse) fields.reverse();\n\t\tfor(var f=0, fmax=fields.length; f<fmax; f++) {\n\t\t\tfieldName = fields[f];\n\t\t\tvar row = this.template,\n\t\t\t\tvalue = tiddler.getFieldString(fieldName);\n\t\t\tif(this.stripTitlePrefix && fieldName === \"title\") {\n\t\t\t\tvar reStrip = /^\\{[^\\}]+\\}(.+)/mg,\n\t\t\t\t\treMatch = reStrip.exec(value);\n\t\t\t\tif(reMatch) {\n\t\t\t\t\tvalue = reMatch[1];\n\t\t\t\t}\n\t\t\t}\n\t\t\trow = $tw.utils.replaceString(row,\"$name$\",fieldName);\n\t\t\trow = $tw.utils.replaceString(row,\"$value$\",value);\n\t\t\trow = $tw.utils.replaceString(row,\"$encoded_value$\",$tw.utils.htmlEncode(value));\n\t\t\ttext.push(row);\n\t\t}\n\t}\n\tthis.text = text.join(\"\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nFieldsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif( changedAttributes.tiddler || changedAttributes.template || changedAttributes.exclude ||\n\t\tchangedAttributes.include || changedAttributes.sort || changedAttributes.sortReverse ||\n\t\tchangedTiddlers[this.tiddlerTitle] || changedAttributes.stripTitlePrefix) {\n\t\t\tthis.refreshSelf();\n\t\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\nexports.fields = FieldsWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/image.js": {
"title": "$:/core/modules/widgets/image.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/image.js\ntype: application/javascript\nmodule-type: widget\n\nThe image widget displays an image referenced with an external URI or with a local tiddler title.\n\n```\n<$image src=\"TiddlerTitle\" width=\"320\" height=\"400\" class=\"classnames\">\n```\n\nThe image source can be the title of an existing tiddler or the URL of an external image.\n\nExternal images always generate an HTML `<img>` tag.\n\nTiddlers that have a _canonical_uri field generate an HTML `<img>` tag with the src attribute containing the URI.\n\nTiddlers that contain image data generate an HTML `<img>` tag with the src attribute containing a base64 representation of the image.\n\nTiddlers that contain wikitext could be rendered to a DIV of the usual size of a tiddler, and then transformed to the size requested.\n\nThe width and height attributes are interpreted as a number of pixels, and do not need to include the \"px\" suffix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ImageWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nImageWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nImageWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\t// Determine what type of image it is\n\tvar tag = \"img\", src = \"\",\n\t\ttiddler = this.wiki.getTiddler(this.imageSource);\n\tif(!tiddler) {\n\t\t// The source isn't the title of a tiddler, so we'll assume it's a URL\n\t\tsrc = this.getVariable(\"tv-get-export-image-link\",{params: [{name: \"src\",value: this.imageSource}],defaultValue: this.imageSource});\n\t} else {\n\t\t// Check if it is an image tiddler\n\t\tif(this.wiki.isImageTiddler(this.imageSource)) {\n\t\t\tvar type = tiddler.fields.type,\n\t\t\t\ttext = tiddler.fields.text,\n\t\t\t\t_canonical_uri = tiddler.fields._canonical_uri;\n\t\t\t// If the tiddler has body text then it doesn't need to be lazily loaded\n\t\t\tif(text) {\n\t\t\t\t// Render the appropriate element for the image type\n\t\t\t\tswitch(type) {\n\t\t\t\t\tcase \"application/pdf\":\n\t\t\t\t\t\ttag = \"embed\";\n\t\t\t\t\t\tsrc = \"data:application/pdf;base64,\" + text;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image/svg+xml\":\n\t\t\t\t\t\tsrc = \"data:image/svg+xml,\" + encodeURIComponent(text);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsrc = \"data:\" + type + \";base64,\" + text;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if(_canonical_uri) {\n\t\t\t\tswitch(type) {\n\t\t\t\t\tcase \"application/pdf\":\n\t\t\t\t\t\ttag = \"embed\";\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image/svg+xml\":\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\t\n\t\t\t} else {\n\t\t\t\t// Just trigger loading of the tiddler\n\t\t\t\tthis.wiki.getTiddlerText(this.imageSource);\n\t\t\t}\n\t\t}\n\t}\n\t// Create the element and assign the attributes\n\tvar domNode = this.document.createElement(tag);\n\tdomNode.setAttribute(\"src\",src);\n\tif(this.imageClass) {\n\t\tdomNode.setAttribute(\"class\",this.imageClass);\t\t\n\t}\n\tif(this.imageWidth) {\n\t\tdomNode.setAttribute(\"width\",this.imageWidth);\n\t}\n\tif(this.imageHeight) {\n\t\tdomNode.setAttribute(\"height\",this.imageHeight);\n\t}\n\tif(this.imageTooltip) {\n\t\tdomNode.setAttribute(\"title\",this.imageTooltip);\t\t\n\t}\n\tif(this.imageAlt) {\n\t\tdomNode.setAttribute(\"alt\",this.imageAlt);\t\t\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nImageWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.imageSource = this.getAttribute(\"source\");\n\tthis.imageWidth = this.getAttribute(\"width\");\n\tthis.imageHeight = this.getAttribute(\"height\");\n\tthis.imageClass = this.getAttribute(\"class\");\n\tthis.imageTooltip = this.getAttribute(\"tooltip\");\n\tthis.imageAlt = this.getAttribute(\"alt\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nImageWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.source || changedAttributes.width || changedAttributes.height || changedAttributes[\"class\"] || changedAttributes.tooltip || changedTiddlers[this.imageSource]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\t\n\t}\n};\n\nexports.image = ImageWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/importvariables.js": {
"title": "$:/core/modules/widgets/importvariables.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/importvariables.js\ntype: application/javascript\nmodule-type: widget\n\nImport variable definitions from other tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ImportVariablesWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nImportVariablesWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nImportVariablesWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nImportVariablesWidget.prototype.execute = function(tiddlerList) {\n\tvar widgetPointer = this;\n\t// Get our parameters\n\tthis.filter = this.getAttribute(\"filter\");\n\t// Compute the filter\n\tthis.tiddlerList = tiddlerList || this.wiki.filterTiddlers(this.filter,this);\n\t// Accumulate the <$set> widgets from each tiddler\n\t$tw.utils.each(this.tiddlerList,function(title) {\n\t\tvar parser = widgetPointer.wiki.parseTiddler(title);\n\t\tif(parser) {\n\t\t\tvar parseTreeNode = parser.tree[0];\n\t\t\twhile(parseTreeNode && parseTreeNode.type === \"set\") {\n\t\t\t\tvar node = {\n\t\t\t\t\ttype: \"set\",\n\t\t\t\t\tattributes: parseTreeNode.attributes,\n\t\t\t\t\tparams: parseTreeNode.params,\n\t\t\t\t\tisMacroDefinition: parseTreeNode.isMacroDefinition\n\t\t\t\t};\n\t\t\t\tif (parseTreeNode.isMacroDefinition) {\n\t\t\t\t\t// Macro definitions can be folded into\n\t\t\t\t\t// current widget instead of adding\n\t\t\t\t\t// another link to the chain.\n\t\t\t\t\tvar widget = widgetPointer.makeChildWidget(node);\n\t\t\t\t\twidget.computeAttributes();\n\t\t\t\t\twidget.execute();\n\t\t\t\t\t// We SHALLOW copy over all variables\n\t\t\t\t\t// in widget. We can't use\n\t\t\t\t\t// $tw.utils.assign, because that copies\n\t\t\t\t\t// up the prototype chain, which we\n\t\t\t\t\t// don't want.\n\t\t\t\t\t$tw.utils.each(Object.keys(widget.variables), function(key) {\n\t\t\t\t\t\twidgetPointer.variables[key] = widget.variables[key];\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\twidgetPointer.makeChildWidgets([node]);\n\t\t\t\t\twidgetPointer = widgetPointer.children[0];\n\t\t\t\t}\n\t\t\t\tparseTreeNode = parseTreeNode.children && parseTreeNode.children[0];\n\t\t\t}\n\t\t} \n\t});\n\n\tif (widgetPointer != this) {\n\t\twidgetPointer.parseTreeNode.children = this.parseTreeNode.children;\n\t} else {\n\t\twidgetPointer.makeChildWidgets();\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nImportVariablesWidget.prototype.refresh = function(changedTiddlers) {\n\t// Recompute our attributes and the filter list\n\tvar changedAttributes = this.computeAttributes(),\n\t\ttiddlerList = this.wiki.filterTiddlers(this.getAttribute(\"filter\"),this);\n\t// Refresh if the filter has changed, or the list of tiddlers has changed, or any of the tiddlers in the list has changed\n\tfunction haveListedTiddlersChanged() {\n\t\tvar changed = false;\n\t\ttiddlerList.forEach(function(title) {\n\t\t\tif(changedTiddlers[title]) {\n\t\t\t\tchanged = true;\n\t\t\t}\n\t\t});\n\t\treturn changed;\n\t}\n\tif(changedAttributes.filter || !$tw.utils.isArrayEqual(this.tiddlerList,tiddlerList) || haveListedTiddlersChanged()) {\n\t\t// Compute the filter\n\t\tthis.removeChildDomNodes();\n\t\tthis.execute(tiddlerList);\n\t\tthis.renderChildren(this.parentDomNode,this.findNextSiblingDomNode());\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.importvariables = ImportVariablesWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/keyboard.js": {
"title": "$:/core/modules/widgets/keyboard.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/keyboard.js\ntype: application/javascript\nmodule-type: widget\n\nKeyboard shortcut widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar KeyboardWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nKeyboardWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nKeyboardWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.tag && $tw.config.htmlUnsafeElements.indexOf(this.tag) === -1) {\n\t\ttag = this.tag;\n\t}\n\t// Create element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = (this[\"class\"] || \"\").split(\" \");\n\tclasses.push(\"tc-keyboard\");\n\tdomNode.className = classes.join(\" \");\n\t// Add a keyboard event handler\n\tdomNode.addEventListener(\"keydown\",function (event) {\n\t\tif($tw.keyboardManager.checkKeyDescriptors(event,self.keyInfoArray)) {\n\t\t\tself.invokeActions(self,event);\n\t\t\tif(self.actions) {\n\t\t\t\tself.invokeActionString(self.actions,self,event);\n\t\t\t}\n\t\t\tself.dispatchMessage(event);\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nKeyboardWidget.prototype.dispatchMessage = function(event) {\n\tthis.dispatchEvent({type: this.message, param: this.param, tiddlerTitle: this.getVariable(\"currentTiddler\")});\n};\n\n/*\nCompute the internal state of the widget\n*/\nKeyboardWidget.prototype.execute = function() {\n\tvar self = this;\n\t// Get attributes\n\tthis.actions = this.getAttribute(\"actions\",\"\");\n\tthis.message = this.getAttribute(\"message\",\"\");\n\tthis.param = this.getAttribute(\"param\",\"\");\n\tthis.key = this.getAttribute(\"key\",\"\");\n\tthis.tag = this.getAttribute(\"tag\",\"\");\n\tthis.keyInfoArray = $tw.keyboardManager.parseKeyDescriptors(this.key);\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tif(this.key.substr(0,2) === \"((\" && this.key.substr(-2,2) === \"))\") {\n\t\tthis.shortcutTiddlers = [];\n\t\tvar name = this.key.substring(2,this.key.length -2);\n\t\t$tw.utils.each($tw.keyboardManager.lookupNames,function(platformDescriptor) {\n\t\t\tself.shortcutTiddlers.push(\"$:/config/\" + platformDescriptor + \"/\" + name);\n\t\t});\n\t}\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nKeyboardWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.message || changedAttributes.param || changedAttributes.key || changedAttributes[\"class\"] || changedAttributes.tag) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\t// Update the keyInfoArray if one of its shortcut-config-tiddlers has changed\n\tif(this.shortcutTiddlers && $tw.utils.hopArray(changedTiddlers,this.shortcutTiddlers)) {\n\t\tthis.keyInfoArray = $tw.keyboardManager.parseKeyDescriptors(this.key);\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.keyboard = KeyboardWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/link.js": {
"title": "$:/core/modules/widgets/link.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/link.js\ntype: application/javascript\nmodule-type: widget\n\nLink widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LinkWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nLinkWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLinkWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Get the value of the tv-wikilinks configuration macro\n\tvar wikiLinksMacro = this.getVariable(\"tv-wikilinks\"),\n\t\tuseWikiLinks = wikiLinksMacro ? (wikiLinksMacro.trim() !== \"no\") : true,\n\t\tmissingLinksEnabled = !(this.hideMissingLinks && this.isMissing && !this.isShadow);\n\t// Render the link if required\n\tif(useWikiLinks && missingLinksEnabled) {\n\t\tthis.renderLink(parent,nextSibling);\n\t} else {\n\t\t// Just insert the link text\n\t\tvar domNode = this.document.createElement(\"span\");\n\t\tparent.insertBefore(domNode,nextSibling);\n\t\tthis.renderChildren(domNode,null);\n\t\tthis.domNodes.push(domNode);\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nLinkWidget.prototype.renderLink = function(parent,nextSibling) {\n\tvar self = this;\n\t// Sanitise the specified tag\n\tvar tag = this.linkTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"a\";\n\t}\n\t// Create our element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = [];\n\tif(this.overrideClasses === undefined) {\n\t\tclasses.push(\"tc-tiddlylink\");\n\t\tif(this.isShadow) {\n\t\t\tclasses.push(\"tc-tiddlylink-shadow\");\n\t\t}\n\t\tif(this.isMissing && !this.isShadow) {\n\t\t\tclasses.push(\"tc-tiddlylink-missing\");\n\t\t} else {\n\t\t\tif(!this.isMissing) {\n\t\t\t\tclasses.push(\"tc-tiddlylink-resolves\");\n\t\t\t}\n\t\t}\n\t\tif(this.linkClasses) {\n\t\t\tclasses.push(this.linkClasses);\t\t\t\n\t\t}\n\t} else if(this.overrideClasses !== \"\") {\n\t\tclasses.push(this.overrideClasses)\n\t}\n\tif(classes.length > 0) {\n\t\tdomNode.setAttribute(\"class\",classes.join(\" \"));\n\t}\n\t// Set an href\n\tvar wikilinkTransformFilter = this.getVariable(\"tv-filter-export-link\"),\n\t\twikiLinkText;\n\tif(wikilinkTransformFilter) {\n\t\t// Use the filter to construct the href\n\t\twikiLinkText = this.wiki.filterTiddlers(wikilinkTransformFilter,this,function(iterator) {\n\t\t\titerator(self.wiki.getTiddler(self.to),self.to)\n\t\t})[0];\n\t} else {\n\t\t// Expand the tv-wikilink-template variable to construct the href\n\t\tvar wikiLinkTemplateMacro = this.getVariable(\"tv-wikilink-template\"),\n\t\t\twikiLinkTemplate = wikiLinkTemplateMacro ? wikiLinkTemplateMacro.trim() : \"#$uri_encoded$\";\n\t\twikiLinkText = $tw.utils.replaceString(wikiLinkTemplate,\"$uri_encoded$\",encodeURIComponent(this.to));\n\t\twikiLinkText = $tw.utils.replaceString(wikiLinkText,\"$uri_doubleencoded$\",encodeURIComponent(encodeURIComponent(this.to)));\n\t}\n\t// Override with the value of tv-get-export-link if defined\n\twikiLinkText = this.getVariable(\"tv-get-export-link\",{params: [{name: \"to\",value: this.to}],defaultValue: wikiLinkText});\n\tif(tag === \"a\") {\n\t\tdomNode.setAttribute(\"href\",wikiLinkText);\n\t}\n\t// Set the tabindex\n\tif(this.tabIndex) {\n\t\tdomNode.setAttribute(\"tabindex\",this.tabIndex);\n\t}\n\t// Set the tooltip\n\t// HACK: Performance issues with re-parsing the tooltip prevent us defaulting the tooltip to \"<$transclude field='tooltip'><$transclude field='title'/></$transclude>\"\n\tvar tooltipWikiText = this.tooltip || this.getVariable(\"tv-wikilink-tooltip\");\n\tif(tooltipWikiText) {\n\t\tvar tooltipText = this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",tooltipWikiText,{\n\t\t\t\tparseAsInline: true,\n\t\t\t\tvariables: {\n\t\t\t\t\tcurrentTiddler: this.to\n\t\t\t\t},\n\t\t\t\tparentWidget: this\n\t\t\t});\n\t\tdomNode.setAttribute(\"title\",tooltipText);\n\t}\n\tif(this[\"aria-label\"]) {\n\t\tdomNode.setAttribute(\"aria-label\",this[\"aria-label\"]);\n\t}\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"click\", handlerObject: this, handlerMethod: \"handleClickEvent\"},\n\t]);\n\t// Make the link draggable if required\n\tif(this.draggable === \"yes\") {\n\t\t$tw.utils.makeDraggable({\n\t\t\tdomNode: domNode,\n\t\t\tdragTiddlerFn: function() {return self.to;},\n\t\t\twidget: this\n\t\t});\n\t}\n\t// Insert the link into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nLinkWidget.prototype.handleClickEvent = function(event) {\n\t// Send the click on its way as a navigate event\n\tvar bounds = this.domNodes[0].getBoundingClientRect();\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.to,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: this,\n\t\tnavigateFromClientRect: { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: event.metaKey || event.ctrlKey || (event.button === 1),\n\t\tmetaKey: event.metaKey,\n\t\tctrlKey: event.ctrlKey,\n\t\taltKey: event.altKey,\n\t\tshiftKey: event.shiftKey\n\t});\n\tif(this.domNodes[0].hasAttribute(\"href\")) {\n\t\tevent.preventDefault();\n\t}\n\tevent.stopPropagation();\n\treturn false;\n};\n\n/*\nCompute the internal state of the widget\n*/\nLinkWidget.prototype.execute = function() {\n\t// Pick up our attributes\n\tthis.to = this.getAttribute(\"to\",this.getVariable(\"currentTiddler\"));\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis[\"aria-label\"] = this.getAttribute(\"aria-label\");\n\tthis.linkClasses = this.getAttribute(\"class\");\n\tthis.overrideClasses = this.getAttribute(\"overrideClass\");\n\tthis.tabIndex = this.getAttribute(\"tabindex\");\n\tthis.draggable = this.getAttribute(\"draggable\",\"yes\");\n\tthis.linkTag = this.getAttribute(\"tag\",\"a\");\n\t// Determine the link characteristics\n\tthis.isMissing = !this.wiki.tiddlerExists(this.to);\n\tthis.isShadow = this.wiki.isShadowTiddler(this.to);\n\tthis.hideMissingLinks = (this.getVariable(\"tv-show-missing-links\") || \"yes\") === \"no\";\n\t// Make the child widgets\n\tvar templateTree;\n\tif(this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\ttemplateTree = this.parseTreeNode.children;\n\t} else {\n\t\t// Default template is a link to the title\n\t\ttemplateTree = [{type: \"text\", text: this.to}];\n\t}\n\tthis.makeChildWidgets(templateTree);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nLinkWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.to || changedTiddlers[this.to] || changedAttributes[\"aria-label\"] || changedAttributes.tooltip) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.link = LinkWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/linkcatcher.js": {
"title": "$:/core/modules/widgets/linkcatcher.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/linkcatcher.js\ntype: application/javascript\nmodule-type: widget\n\nLinkcatcher widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LinkCatcherWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-navigate\", handler: \"handleNavigateEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nLinkCatcherWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLinkCatcherWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nLinkCatcherWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.catchTo = this.getAttribute(\"to\");\n\tthis.catchMessage = this.getAttribute(\"message\");\n\tthis.catchSet = this.getAttribute(\"set\");\n\tthis.catchSetTo = this.getAttribute(\"setTo\");\n\tthis.catchActions = this.getAttribute(\"actions\");\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n\t// When executing actions we avoid trapping navigate events, so that we don't trigger ourselves recursively\n\tthis.executingActions = false;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nLinkCatcherWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.to || changedAttributes.message || changedAttributes.set || changedAttributes.setTo) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\n/*\nHandle a tm-navigate event\n*/\nLinkCatcherWidget.prototype.handleNavigateEvent = function(event) {\n\tif(!this.executingActions) {\n\t\t// Execute the actions\n\t\tif(this.catchTo) {\n\t\t\tthis.wiki.setTextReference(this.catchTo,event.navigateTo,this.getVariable(\"currentTiddler\"));\n\t\t}\n\t\tif(this.catchMessage && this.parentWidget) {\n\t\t\tthis.parentWidget.dispatchEvent({\n\t\t\t\ttype: this.catchMessage,\n\t\t\t\tparam: event.navigateTo,\n\t\t\t\tnavigateTo: event.navigateTo\n\t\t\t});\n\t\t}\n\t\tif(this.catchSet) {\n\t\t\tvar tiddler = this.wiki.getTiddler(this.catchSet);\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,{title: this.catchSet, text: this.catchSetTo}));\n\t\t}\n\t\tif(this.catchActions) {\n\t\t\tthis.executingActions = true;\n\t\t\tthis.invokeActionString(this.catchActions,this,event,{navigateTo: event.navigateTo});\n\t\t\tthis.executingActions = false;\n\t\t}\n\t} else {\n\t\t// This is a navigate event generated by the actions of this linkcatcher, so we don't trap it again, but just pass it to the parent\n\t\tthis.parentWidget.dispatchEvent({\n\t\t\ttype: \"tm-navigate\",\n\t\t\tparam: event.navigateTo,\n\t\t\tnavigateTo: event.navigateTo\n\t\t});\n\t}\n\treturn false;\n};\n\nexports.linkcatcher = LinkCatcherWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/list.js": {
"title": "$:/core/modules/widgets/list.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/list.js\ntype: application/javascript\nmodule-type: widget\n\nList and list item widgets\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\n/*\nThe list widget creates list element sub-widgets that reach back into the list widget for their configuration\n*/\n\nvar ListWidget = function(parseTreeNode,options) {\n\t// Initialise the storyviews if they've not been done already\n\tif(!this.storyViews) {\n\t\tListWidget.prototype.storyViews = {};\n\t\t$tw.modules.applyMethods(\"storyview\",this.storyViews);\n\t}\n\t// Main initialisation inherited from widget.js\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nListWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nListWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n\t// Construct the storyview\n\tvar StoryView = this.storyViews[this.storyViewName];\n\tif(this.storyViewName && !StoryView) {\n\t\tStoryView = this.storyViews[\"classic\"];\n\t}\n\tif(StoryView && !this.document.isTiddlyWikiFakeDom) {\n\t\tthis.storyview = new StoryView(this);\n\t} else {\n\t\tthis.storyview = null;\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nListWidget.prototype.execute = function() {\n\t// Get our attributes\n\tthis.template = this.getAttribute(\"template\");\n\tthis.editTemplate = this.getAttribute(\"editTemplate\");\n\tthis.variableName = this.getAttribute(\"variable\",\"currentTiddler\");\n\tthis.storyViewName = this.getAttribute(\"storyview\");\n\tthis.historyTitle = this.getAttribute(\"history\");\n\t// Compose the list elements\n\tthis.list = this.getTiddlerList();\n\tvar members = [],\n\t\tself = this;\n\t// Check for an empty list\n\tif(this.list.length === 0) {\n\t\tmembers = this.getEmptyMessage();\n\t} else {\n\t\t$tw.utils.each(this.list,function(title,index) {\n\t\t\tmembers.push(self.makeItemTemplate(title));\n\t\t});\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(members);\n\t// Clear the last history\n\tthis.history = [];\n};\n\nListWidget.prototype.getTiddlerList = function() {\n\tvar defaultFilter = \"[!is[system]sort[title]]\";\n\treturn this.wiki.filterTiddlers(this.getAttribute(\"filter\",defaultFilter),this);\n};\n\nListWidget.prototype.getEmptyMessage = function() {\n\tvar emptyMessage = this.getAttribute(\"emptyMessage\",\"\"),\n\t\tparser = this.wiki.parseText(\"text/vnd.tiddlywiki\",emptyMessage,{parseAsInline: true});\n\tif(parser) {\n\t\treturn parser.tree;\n\t} else {\n\t\treturn [];\n\t}\n};\n\n/*\nCompose the template for a list item\n*/\nListWidget.prototype.makeItemTemplate = function(title) {\n\t// Check if the tiddler is a draft\n\tvar tiddler = this.wiki.getTiddler(title),\n\t\tisDraft = tiddler && tiddler.hasField(\"draft.of\"),\n\t\ttemplate = this.template,\n\t\ttemplateTree;\n\tif(isDraft && this.editTemplate) {\n\t\ttemplate = this.editTemplate;\n\t}\n\t// Compose the transclusion of the template\n\tif(template) {\n\t\ttemplateTree = [{type: \"transclude\", attributes: {tiddler: {type: \"string\", value: template}}}];\n\t} else {\n\t\tif(this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\t\ttemplateTree = this.parseTreeNode.children;\n\t\t} else {\n\t\t\t// Default template is a link to the title\n\t\t\ttemplateTree = [{type: \"element\", tag: this.parseTreeNode.isBlock ? \"div\" : \"span\", children: [{type: \"link\", attributes: {to: {type: \"string\", value: title}}, children: [\n\t\t\t\t\t{type: \"text\", text: title}\n\t\t\t]}]}];\n\t\t}\n\t}\n\t// Return the list item\n\treturn {type: \"listitem\", itemTitle: title, variableName: this.variableName, children: templateTree};\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nListWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\tresult;\n\t// Call the storyview\n\tif(this.storyview && this.storyview.refreshStart) {\n\t\tthis.storyview.refreshStart(changedTiddlers,changedAttributes);\n\t}\n\t// Completely refresh if any of our attributes have changed\n\tif(changedAttributes.filter || changedAttributes.template || changedAttributes.editTemplate || changedAttributes.emptyMessage || changedAttributes.storyview || changedAttributes.history) {\n\t\tthis.refreshSelf();\n\t\tresult = true;\n\t} else {\n\t\t// Handle any changes to the list\n\t\tresult = this.handleListChanges(changedTiddlers);\n\t\t// Handle any changes to the history stack\n\t\tif(this.historyTitle && changedTiddlers[this.historyTitle]) {\n\t\t\tthis.handleHistoryChanges();\n\t\t}\n\t}\n\t// Call the storyview\n\tif(this.storyview && this.storyview.refreshEnd) {\n\t\tthis.storyview.refreshEnd(changedTiddlers,changedAttributes);\n\t}\n\treturn result;\n};\n\n/*\nHandle any changes to the history list\n*/\nListWidget.prototype.handleHistoryChanges = function() {\n\t// Get the history data\n\tvar newHistory = this.wiki.getTiddlerDataCached(this.historyTitle,[]);\n\t// Ignore any entries of the history that match the previous history\n\tvar entry = 0;\n\twhile(entry < newHistory.length && entry < this.history.length && newHistory[entry].title === this.history[entry].title) {\n\t\tentry++;\n\t}\n\t// Navigate forwards to each of the new tiddlers\n\twhile(entry < newHistory.length) {\n\t\tif(this.storyview && this.storyview.navigateTo) {\n\t\t\tthis.storyview.navigateTo(newHistory[entry]);\n\t\t}\n\t\tentry++;\n\t}\n\t// Update the history\n\tthis.history = newHistory;\n};\n\n/*\nProcess any changes to the list\n*/\nListWidget.prototype.handleListChanges = function(changedTiddlers) {\n\t// Get the new list\n\tvar prevList = this.list;\n\tthis.list = this.getTiddlerList();\n\t// Check for an empty list\n\tif(this.list.length === 0) {\n\t\t// Check if it was empty before\n\t\tif(prevList.length === 0) {\n\t\t\t// If so, just refresh the empty message\n\t\t\treturn this.refreshChildren(changedTiddlers);\n\t\t} else {\n\t\t\t// Replace the previous content with the empty message\n\t\t\tfor(t=this.children.length-1; t>=0; t--) {\n\t\t\t\tthis.removeListItem(t);\n\t\t\t}\n\t\t\tvar nextSibling = this.findNextSiblingDomNode();\n\t\t\tthis.makeChildWidgets(this.getEmptyMessage());\n\t\t\tthis.renderChildren(this.parentDomNode,nextSibling);\n\t\t\treturn true;\n\t\t}\n\t} else {\n\t\t// If the list was empty then we need to remove the empty message\n\t\tif(prevList.length === 0) {\n\t\t\tthis.removeChildDomNodes();\n\t\t\tthis.children = [];\n\t\t}\n\t\t// Cycle through the list, inserting and removing list items as needed\n\t\tvar hasRefreshed = false;\n\t\tfor(var t=0; t<this.list.length; t++) {\n\t\t\tvar index = this.findListItem(t,this.list[t]);\n\t\t\tif(index === undefined) {\n\t\t\t\t// The list item must be inserted\n\t\t\t\tthis.insertListItem(t,this.list[t]);\n\t\t\t\thasRefreshed = true;\n\t\t\t} else {\n\t\t\t\t// There are intervening list items that must be removed\n\t\t\t\tfor(var n=index-1; n>=t; n--) {\n\t\t\t\t\tthis.removeListItem(n);\n\t\t\t\t\thasRefreshed = true;\n\t\t\t\t}\n\t\t\t\t// Refresh the item we're reusing\n\t\t\t\tvar refreshed = this.children[t].refresh(changedTiddlers);\n\t\t\t\thasRefreshed = hasRefreshed || refreshed;\n\t\t\t}\n\t\t}\n\t\t// Remove any left over items\n\t\tfor(t=this.children.length-1; t>=this.list.length; t--) {\n\t\t\tthis.removeListItem(t);\n\t\t\thasRefreshed = true;\n\t\t}\n\t\treturn hasRefreshed;\n\t}\n};\n\n/*\nFind the list item with a given title, starting from a specified position\n*/\nListWidget.prototype.findListItem = function(startIndex,title) {\n\twhile(startIndex < this.children.length) {\n\t\tif(this.children[startIndex].parseTreeNode.itemTitle === title) {\n\t\t\treturn startIndex;\n\t\t}\n\t\tstartIndex++;\n\t}\n\treturn undefined;\n};\n\n/*\nInsert a new list item at the specified index\n*/\nListWidget.prototype.insertListItem = function(index,title) {\n\t// Create, insert and render the new child widgets\n\tvar widget = this.makeChildWidget(this.makeItemTemplate(title));\n\twidget.parentDomNode = this.parentDomNode; // Hack to enable findNextSiblingDomNode() to work\n\tthis.children.splice(index,0,widget);\n\tvar nextSibling = widget.findNextSiblingDomNode();\n\twidget.render(this.parentDomNode,nextSibling);\n\t// Animate the insertion if required\n\tif(this.storyview && this.storyview.insert) {\n\t\tthis.storyview.insert(widget);\n\t}\n\treturn true;\n};\n\n/*\nRemove the specified list item\n*/\nListWidget.prototype.removeListItem = function(index) {\n\tvar widget = this.children[index];\n\t// Animate the removal if required\n\tif(this.storyview && this.storyview.remove) {\n\t\tthis.storyview.remove(widget);\n\t} else {\n\t\twidget.removeChildDomNodes();\n\t}\n\t// Remove the child widget\n\tthis.children.splice(index,1);\n};\n\nexports.list = ListWidget;\n\nvar ListItemWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nListItemWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nListItemWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nListItemWidget.prototype.execute = function() {\n\t// Set the current list item title\n\tthis.setVariable(this.parseTreeNode.variableName,this.parseTreeNode.itemTitle);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nListItemWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.listitem = ListItemWidget;\n\n})();",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/macrocall.js": {
"title": "$:/core/modules/widgets/macrocall.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/macrocall.js\ntype: application/javascript\nmodule-type: widget\n\nMacrocall widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar MacroCallWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nMacroCallWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nMacroCallWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nMacroCallWidget.prototype.execute = function() {\n\t// Get the parse type if specified\n\tthis.parseType = this.getAttribute(\"$type\",\"text/vnd.tiddlywiki\");\n\tthis.renderOutput = this.getAttribute(\"$output\",\"text/html\");\n\t// Merge together the parameters specified in the parse tree with the specified attributes\n\tvar params = this.parseTreeNode.params ? this.parseTreeNode.params.slice(0) : [];\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tparams.push({name: name, value: attribute});\t\t\t\n\t\t}\n\t});\n\t// Get the macro value\n\tvar macroName = this.parseTreeNode.name || this.getAttribute(\"$name\"),\n\t\tvariableInfo = this.getVariableInfo(macroName,{params: params}),\n\t\ttext = variableInfo.text,\n\t\tparseTreeNodes;\n\t// Are we rendering to HTML?\n\tif(this.renderOutput === \"text/html\") {\n\t\t// If so we'll return the parsed macro\n\t\tvar parser = this.wiki.parseText(this.parseType,text,\n\t\t\t\t\t\t\t{parseAsInline: !this.parseTreeNode.isBlock});\n\t\tparseTreeNodes = parser ? parser.tree : [];\n\t\t// Wrap the parse tree in a vars widget assigning the parameters to variables named \"__paramname__\"\n\t\tvar attributes = {};\n\t\t$tw.utils.each(variableInfo.params,function(param) {\n\t\t\tvar name = \"__\" + param.name + \"__\";\n\t\t\tattributes[name] = {\n\t\t\t\tname: name,\n\t\t\t\ttype: \"string\",\n\t\t\t\tvalue: param.value\n\t\t\t};\n\t\t});\n\t\tparseTreeNodes = [{\n\t\t\ttype: \"vars\",\n\t\t\tattributes: attributes,\n\t\t\tchildren: parseTreeNodes\n\t\t}];\n\t} else {\n\t\t// Otherwise, we'll render the text\n\t\tvar plainText = this.wiki.renderText(\"text/plain\",this.parseType,text,{parentWidget: this});\n\t\tparseTreeNodes = [{type: \"text\", text: plainText}];\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nMacroCallWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\t// Rerender ourselves\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.macrocall = MacroCallWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/navigator.js": {
"title": "$:/core/modules/widgets/navigator.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/navigator.js\ntype: application/javascript\nmodule-type: widget\n\nNavigator widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar IMPORT_TITLE = \"$:/Import\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar NavigatorWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-navigate\", handler: \"handleNavigateEvent\"},\n\t\t{type: \"tm-edit-tiddler\", handler: \"handleEditTiddlerEvent\"},\n\t\t{type: \"tm-delete-tiddler\", handler: \"handleDeleteTiddlerEvent\"},\n\t\t{type: \"tm-save-tiddler\", handler: \"handleSaveTiddlerEvent\"},\n\t\t{type: \"tm-cancel-tiddler\", handler: \"handleCancelTiddlerEvent\"},\n\t\t{type: \"tm-close-tiddler\", handler: \"handleCloseTiddlerEvent\"},\n\t\t{type: \"tm-close-all-tiddlers\", handler: \"handleCloseAllTiddlersEvent\"},\n\t\t{type: \"tm-close-other-tiddlers\", handler: \"handleCloseOtherTiddlersEvent\"},\n\t\t{type: \"tm-new-tiddler\", handler: \"handleNewTiddlerEvent\"},\n\t\t{type: \"tm-import-tiddlers\", handler: \"handleImportTiddlersEvent\"},\n\t\t{type: \"tm-perform-import\", handler: \"handlePerformImportEvent\"},\n\t\t{type: \"tm-fold-tiddler\", handler: \"handleFoldTiddlerEvent\"},\n\t\t{type: \"tm-fold-other-tiddlers\", handler: \"handleFoldOtherTiddlersEvent\"},\n\t\t{type: \"tm-fold-all-tiddlers\", handler: \"handleFoldAllTiddlersEvent\"},\n\t\t{type: \"tm-unfold-all-tiddlers\", handler: \"handleUnfoldAllTiddlersEvent\"},\n\t\t{type: \"tm-rename-tiddler\", handler: \"handleRenameTiddlerEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nNavigatorWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nNavigatorWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nNavigatorWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.storyTitle = this.getAttribute(\"story\");\n\tthis.historyTitle = this.getAttribute(\"history\");\n\tthis.setVariable(\"tv-story-list\",this.storyTitle);\n\tthis.setVariable(\"tv-history-list\",this.historyTitle);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nNavigatorWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.story || changedAttributes.history) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nNavigatorWidget.prototype.getStoryList = function() {\n\treturn this.storyTitle ? this.wiki.getTiddlerList(this.storyTitle) : null;\n};\n\nNavigatorWidget.prototype.saveStoryList = function(storyList) {\n\tif(this.storyTitle) {\n\t\tvar storyTiddler = this.wiki.getTiddler(this.storyTitle);\n\t\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\t\t{title: this.storyTitle},\n\t\t\tstoryTiddler,\n\t\t\t{list: storyList}\n\t\t));\t\t\n\t}\n};\n\nNavigatorWidget.prototype.removeTitleFromStory = function(storyList,title) {\n\tif(storyList) {\n\t\tvar p = storyList.indexOf(title);\n\t\twhile(p !== -1) {\n\t\t\tstoryList.splice(p,1);\n\t\t\tp = storyList.indexOf(title);\n\t\t}\t\t\n\t}\n};\n\nNavigatorWidget.prototype.replaceFirstTitleInStory = function(storyList,oldTitle,newTitle) {\n\tif(storyList) {\n\t\tvar pos = storyList.indexOf(oldTitle);\n\t\tif(pos !== -1) {\n\t\t\tstoryList[pos] = newTitle;\n\t\t\tdo {\n\t\t\t\tpos = storyList.indexOf(oldTitle,pos + 1);\n\t\t\t\tif(pos !== -1) {\n\t\t\t\t\tstoryList.splice(pos,1);\n\t\t\t\t}\n\t\t\t} while(pos !== -1);\n\t\t} else {\n\t\t\tstoryList.splice(0,0,newTitle);\n\t\t}\t\t\n\t}\n};\n\nNavigatorWidget.prototype.addToStory = function(title,fromTitle) {\n\tif(this.storyTitle) {\n\t\tthis.wiki.addToStory(title,fromTitle,this.storyTitle,{\n\t\t\topenLinkFromInsideRiver: this.getAttribute(\"openLinkFromInsideRiver\",\"top\"),\n\t\t\topenLinkFromOutsideRiver: this.getAttribute(\"openLinkFromOutsideRiver\",\"top\")\n\t\t});\n\t}\n};\n\n/*\nAdd a new record to the top of the history stack\ntitle: a title string or an array of title strings\nfromPageRect: page coordinates of the origin of the navigation\n*/\nNavigatorWidget.prototype.addToHistory = function(title,fromPageRect) {\n\tthis.wiki.addToHistory(title,fromPageRect,this.historyTitle);\n};\n\n/*\nHandle a tm-navigate event\n*/\nNavigatorWidget.prototype.handleNavigateEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-navigating\",event);\n\tif(event.navigateTo) {\n\t\tthis.addToStory(event.navigateTo,event.navigateFromTitle);\n\t\tif(!event.navigateSuppressNavigation) {\n\t\t\tthis.addToHistory(event.navigateTo,event.navigateFromClientRect);\n\t\t}\n\t}\n\treturn false;\n};\n\n// Close a specified tiddler\nNavigatorWidget.prototype.handleCloseTiddlerEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle,\n\t\tstoryList = this.getStoryList();\n\t// Look for tiddlers with this title to close\n\tthis.removeTitleFromStory(storyList,title);\n\tthis.saveStoryList(storyList);\n\treturn false;\n};\n\n// Close all tiddlers\nNavigatorWidget.prototype.handleCloseAllTiddlersEvent = function(event) {\n\tthis.saveStoryList([]);\n\treturn false;\n};\n\n// Close other tiddlers\nNavigatorWidget.prototype.handleCloseOtherTiddlersEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle;\n\tthis.saveStoryList([title]);\n\treturn false;\n};\n\n// Place a tiddler in edit mode\nNavigatorWidget.prototype.handleEditTiddlerEvent = function(event) {\n\tvar editTiddler = $tw.hooks.invokeHook(\"th-editing-tiddler\",event);\n\tif(!editTiddler) {\n\t\treturn false;\n\t}\n\tvar self = this;\n\tfunction isUnmodifiedShadow(title) {\n\t\treturn self.wiki.isShadowTiddler(title) && !self.wiki.tiddlerExists(title);\n\t}\n\tfunction confirmEditShadow(title) {\n\t\treturn confirm($tw.language.getString(\n\t\t\t\"ConfirmEditShadowTiddler\",\n\t\t\t{variables:\n\t\t\t\t{title: title}\n\t\t\t}\n\t\t));\n\t}\n\tvar title = event.param || event.tiddlerTitle;\n\tif(isUnmodifiedShadow(title) && !confirmEditShadow(title)) {\n\t\treturn false;\n\t}\n\t// Replace the specified tiddler with a draft in edit mode\n\tvar draftTiddler = this.makeDraftTiddler(title);\n\t// Update the story and history if required\n\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\tvar draftTitle = draftTiddler.fields.title,\n\t\t\tstoryList = this.getStoryList();\n\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\tthis.replaceFirstTitleInStory(storyList,title,draftTitle);\n\t\tthis.addToHistory(draftTitle,event.navigateFromClientRect);\n\t\tthis.saveStoryList(storyList);\n\t\treturn false;\n\t}\n};\n\n// Delete a tiddler\nNavigatorWidget.prototype.handleDeleteTiddlerEvent = function(event) {\n\t// Get the tiddler we're deleting\n\tvar title = event.param || event.tiddlerTitle,\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tstoryList = this.getStoryList(),\n\t\toriginalTitle = tiddler ? tiddler.fields[\"draft.of\"] : \"\",\n\t\toriginalTiddler = originalTitle ? this.wiki.getTiddler(originalTitle) : undefined,\n\t\tconfirmationTitle;\n\tif(!tiddler) {\n\t\treturn false;\n\t}\n\t// Check if the tiddler we're deleting is in draft mode\n\tif(originalTitle) {\n\t\t// If so, we'll prompt for confirmation referencing the original tiddler\n\t\tconfirmationTitle = originalTitle;\n\t} else {\n\t\t// If not a draft, then prompt for confirmation referencing the specified tiddler\n\t\tconfirmationTitle = title;\n\t}\n\t// Seek confirmation\n\tif((this.wiki.getTiddler(originalTitle) || (tiddler.fields.text || \"\") !== \"\") && !confirm($tw.language.getString(\n\t\t\t\t\"ConfirmDeleteTiddler\",\n\t\t\t\t{variables:\n\t\t\t\t\t{title: confirmationTitle}\n\t\t\t\t}\n\t\t\t))) {\n\t\treturn false;\n\t}\n\t// Delete the original tiddler\n\tif(originalTitle) {\n\t\tif(originalTiddler) {\n\t\t\t$tw.hooks.invokeHook(\"th-deleting-tiddler\",originalTiddler);\n\t\t}\n\t\tthis.wiki.deleteTiddler(originalTitle);\n\t\tthis.removeTitleFromStory(storyList,originalTitle);\n\t}\n\t// Invoke the hook function and delete this tiddler\n\t$tw.hooks.invokeHook(\"th-deleting-tiddler\",tiddler);\n\tthis.wiki.deleteTiddler(title);\n\t// Remove the closed tiddler from the story\n\tthis.removeTitleFromStory(storyList,title);\n\tthis.saveStoryList(storyList);\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\treturn false;\n};\n\n/*\nCreate/reuse the draft tiddler for a given title\n*/\nNavigatorWidget.prototype.makeDraftTiddler = function(targetTitle) {\n\t// See if there is already a draft tiddler for this tiddler\n\tvar draftTitle = this.wiki.findDraft(targetTitle);\n\tif(draftTitle) {\n\t\treturn this.wiki.getTiddler(draftTitle);\n\t}\n\t// Get the current value of the tiddler we're editing\n\tvar tiddler = this.wiki.getTiddler(targetTitle);\n\t// Save the initial value of the draft tiddler\n\tdraftTitle = this.generateDraftTitle(targetTitle);\n\tvar draftTiddler = new $tw.Tiddler(\n\t\t\ttiddler,\n\t\t\t{\n\t\t\t\ttitle: draftTitle,\n\t\t\t\t\"draft.title\": targetTitle,\n\t\t\t\t\"draft.of\": targetTitle\n\t\t\t},\n\t\t\tthis.wiki.getModificationFields()\n\t\t);\n\tthis.wiki.addTiddler(draftTiddler);\n\treturn draftTiddler;\n};\n\n/*\nGenerate a title for the draft of a given tiddler\n*/\nNavigatorWidget.prototype.generateDraftTitle = function(title) {\n\treturn this.wiki.generateDraftTitle(title);\n};\n\n// Take a tiddler out of edit mode, saving the changes\nNavigatorWidget.prototype.handleSaveTiddlerEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle,\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tstoryList = this.getStoryList();\n\t// Replace the original tiddler with the draft\n\tif(tiddler) {\n\t\tvar draftTitle = (tiddler.fields[\"draft.title\"] || \"\").trim(),\n\t\t\tdraftOf = (tiddler.fields[\"draft.of\"] || \"\").trim();\n\t\tif(draftTitle) {\n\t\t\tvar isRename = draftOf !== draftTitle,\n\t\t\t\tisConfirmed = true;\n\t\t\tif(isRename && this.wiki.tiddlerExists(draftTitle)) {\n\t\t\t\tisConfirmed = confirm($tw.language.getString(\n\t\t\t\t\t\"ConfirmOverwriteTiddler\",\n\t\t\t\t\t{variables:\n\t\t\t\t\t\t{title: draftTitle}\n\t\t\t\t\t}\n\t\t\t\t));\n\t\t\t}\n\t\t\tif(isConfirmed) {\n\t\t\t\t// Create the new tiddler and pass it through the th-saving-tiddler hook\n\t\t\t\tvar newTiddler = new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,{\n\t\t\t\t\ttitle: draftTitle,\n\t\t\t\t\t\"draft.title\": undefined,\n\t\t\t\t\t\"draft.of\": undefined\n\t\t\t\t},this.wiki.getModificationFields());\n\t\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-saving-tiddler\",newTiddler);\n\t\t\t\tthis.wiki.addTiddler(newTiddler);\n\t\t\t\t// If enabled, relink references to renamed tiddler\n\t\t\t\tvar shouldRelink = this.getAttribute(\"relinkOnRename\",\"no\").toLowerCase().trim() === \"yes\";\n\t\t\t\tif(isRename && shouldRelink && this.wiki.tiddlerExists(draftOf)) {\nconsole.log(\"Relinking '\" + draftOf + \"' to '\" + draftTitle + \"'\");\n\t\t\t\t\tthis.wiki.relinkTiddler(draftOf,draftTitle);\n\t\t\t\t}\n\t\t\t\t// Remove the draft tiddler\n\t\t\t\tthis.wiki.deleteTiddler(title);\n\t\t\t\t// Remove the original tiddler if we're renaming it\n\t\t\t\tif(isRename) {\n\t\t\t\t\tthis.wiki.deleteTiddler(draftOf);\n\t\t\t\t}\n\t\t\t\t// #2381 always remove new title & old\n\t\t\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\t\t\tthis.removeTitleFromStory(storyList,draftOf);\n\t\t\t\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\t\t\t\t// Replace the draft in the story with the original\n\t\t\t\t\tthis.replaceFirstTitleInStory(storyList,title,draftTitle);\n\t\t\t\t\tthis.addToHistory(draftTitle,event.navigateFromClientRect);\n\t\t\t\t\tif(draftTitle !== this.storyTitle) {\n\t\t\t\t\t\tthis.saveStoryList(storyList);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Trigger an autosave\n\t\t\t\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\n// Take a tiddler out of edit mode without saving the changes\nNavigatorWidget.prototype.handleCancelTiddlerEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-cancelling-tiddler\", event);\n\t// Flip the specified tiddler from draft back to the original\n\tvar draftTitle = event.param || event.tiddlerTitle,\n\t\tdraftTiddler = this.wiki.getTiddler(draftTitle),\n\t\toriginalTitle = draftTiddler && draftTiddler.fields[\"draft.of\"];\n\tif(draftTiddler && originalTitle) {\n\t\t// Ask for confirmation if the tiddler text has changed\n\t\tvar isConfirmed = true,\n\t\t\toriginalTiddler = this.wiki.getTiddler(originalTitle),\n\t\t\tstoryList = this.getStoryList();\n\t\tif(this.wiki.isDraftModified(draftTitle)) {\n\t\t\tisConfirmed = confirm($tw.language.getString(\n\t\t\t\t\"ConfirmCancelTiddler\",\n\t\t\t\t{variables:\n\t\t\t\t\t{title: draftTitle}\n\t\t\t\t}\n\t\t\t));\n\t\t}\n\t\t// Remove the draft tiddler\n\t\tif(isConfirmed) {\n\t\t\tthis.wiki.deleteTiddler(draftTitle);\n\t\t\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\t\t\tif(originalTiddler) {\n\t\t\t\t\tthis.replaceFirstTitleInStory(storyList,draftTitle,originalTitle);\n\t\t\t\t\tthis.addToHistory(originalTitle,event.navigateFromClientRect);\n\t\t\t\t} else {\n\t\t\t\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\t\t\t}\n\t\t\t\tthis.saveStoryList(storyList);\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\n// Create a new draft tiddler\n// event.param can either be the title of a template tiddler, or a hashmap of fields.\n//\n// The title of the newly created tiddler follows these rules:\n// * If a hashmap was used and a title field was specified, use that title\n// * If a hashmap was used without a title field, use a default title, if necessary making it unique with a numeric suffix\n// * If a template tiddler was used, use the title of the template, if necessary making it unique with a numeric suffix\n//\n// If a draft of the target tiddler already exists then it is reused\nNavigatorWidget.prototype.handleNewTiddlerEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-new-tiddler\", event);\n\t// Get the story details\n\tvar storyList = this.getStoryList(),\n\t\ttemplateTiddler, additionalFields, title, draftTitle, existingTiddler;\n\t// Get the template tiddler (if any)\n\tif(typeof event.param === \"string\") {\n\t\t// Get the template tiddler\n\t\ttemplateTiddler = this.wiki.getTiddler(event.param);\n\t\t// Generate a new title\n\t\ttitle = this.wiki.generateNewTitle(event.param || $tw.language.getString(\"DefaultNewTiddlerTitle\"));\n\t}\n\t// Get the specified additional fields\n\tif(typeof event.paramObject === \"object\") {\n\t\tadditionalFields = event.paramObject;\n\t}\n\tif(typeof event.param === \"object\") { // Backwards compatibility with 5.1.3\n\t\tadditionalFields = event.param;\n\t}\n\tif(additionalFields && additionalFields.title) {\n\t\ttitle = additionalFields.title;\n\t}\n\t// Make a copy of the additional fields excluding any blank ones\n\tvar filteredAdditionalFields = $tw.utils.extend({},additionalFields);\n\tObject.keys(filteredAdditionalFields).forEach(function(fieldName) {\n\t\tif(filteredAdditionalFields[fieldName] === \"\") {\n\t\t\tdelete filteredAdditionalFields[fieldName];\n\t\t}\n\t});\n\t// Generate a title if we don't have one\n\ttitle = title || this.wiki.generateNewTitle($tw.language.getString(\"DefaultNewTiddlerTitle\"));\n\t// Find any existing draft for this tiddler\n\tdraftTitle = this.wiki.findDraft(title);\n\t// Pull in any existing tiddler\n\tif(draftTitle) {\n\t\texistingTiddler = this.wiki.getTiddler(draftTitle);\n\t} else {\n\t\tdraftTitle = this.generateDraftTitle(title);\n\t\texistingTiddler = this.wiki.getTiddler(title);\n\t}\n\t// Merge the tags\n\tvar mergedTags = [];\n\tif(existingTiddler && existingTiddler.fields.tags) {\n\t\t$tw.utils.pushTop(mergedTags,existingTiddler.fields.tags);\n\t}\n\tif(additionalFields && additionalFields.tags) {\n\t\t// Merge tags\n\t\tmergedTags = $tw.utils.pushTop(mergedTags,$tw.utils.parseStringArray(additionalFields.tags));\n\t}\n\tif(templateTiddler && templateTiddler.fields.tags) {\n\t\t// Merge tags\n\t\tmergedTags = $tw.utils.pushTop(mergedTags,templateTiddler.fields.tags);\n\t}\n\t// Save the draft tiddler\n\tvar draftTiddler = new $tw.Tiddler({\n\t\t\ttext: \"\",\n\t\t\t\"draft.title\": title\n\t\t},\n\t\ttemplateTiddler,\n\t\tadditionalFields,\n\t\tthis.wiki.getCreationFields(),\n\t\texistingTiddler,\n\t\tfilteredAdditionalFields,\n\t\t{\n\t\t\ttitle: draftTitle,\n\t\t\t\"draft.of\": title,\n\t\t\ttags: mergedTags\n\t\t},this.wiki.getModificationFields());\n\tthis.wiki.addTiddler(draftTiddler);\n\t// Update the story to insert the new draft at the top and remove any existing tiddler\n\tif(storyList && storyList.indexOf(draftTitle) === -1) {\n\t\tvar slot = storyList.indexOf(event.navigateFromTitle);\n\t\tif(slot === -1) {\n\t\t\tslot = this.getAttribute(\"openLinkFromOutsideRiver\",\"top\") === \"bottom\" ? storyList.length - 1 : slot;\n\t\t}\n\t\tstoryList.splice(slot + 1,0,draftTitle);\n\t}\n\tif(storyList && storyList.indexOf(title) !== -1) {\n\t\tstoryList.splice(storyList.indexOf(title),1);\n\t}\n\tthis.saveStoryList(storyList);\n\t// Add a new record to the top of the history stack\n\tthis.addToHistory(draftTitle);\n\treturn false;\n};\n\n// Import JSON tiddlers into a pending import tiddler\nNavigatorWidget.prototype.handleImportTiddlersEvent = function(event) {\n\t// Get the tiddlers\n\tvar tiddlers = [];\n\ttry {\n\t\ttiddlers = JSON.parse(event.param);\n\t} catch(e) {\n\t}\n\t// Get the current $:/Import tiddler\n\tvar importTiddler = this.wiki.getTiddler(IMPORT_TITLE),\n\t\timportData = this.wiki.getTiddlerData(IMPORT_TITLE,{}),\n\t\tnewFields = new Object({\n\t\t\ttitle: IMPORT_TITLE,\n\t\t\ttype: \"application/json\",\n\t\t\t\"plugin-type\": \"import\",\n\t\t\t\"status\": \"pending\"\n\t\t}),\n\t\tincomingTiddlers = [];\n\t// Process each tiddler\n\timportData.tiddlers = importData.tiddlers || {};\n\t$tw.utils.each(tiddlers,function(tiddlerFields) {\n\t\ttiddlerFields.title = $tw.utils.trim(tiddlerFields.title);\n\t\tvar title = tiddlerFields.title;\n\t\tif(title) {\n\t\t\tincomingTiddlers.push(title);\n\t\t\timportData.tiddlers[title] = tiddlerFields;\n\t\t}\n\t});\n\t// Give the active upgrader modules a chance to process the incoming tiddlers\n\tvar messages = this.wiki.invokeUpgraders(incomingTiddlers,importData.tiddlers);\n\t$tw.utils.each(messages,function(message,title) {\n\t\tnewFields[\"message-\" + title] = message;\n\t});\n\t// Deselect any suppressed tiddlers\n\t$tw.utils.each(importData.tiddlers,function(tiddler,title) {\n\t\tif($tw.utils.count(tiddler) === 0) {\n\t\t\tnewFields[\"selection-\" + title] = \"unchecked\";\n\t\t}\n\t});\n\t// Save the $:/Import tiddler\n\tnewFields.text = JSON.stringify(importData,null,$tw.config.preferences.jsonSpaces);\n\tthis.wiki.addTiddler(new $tw.Tiddler(importTiddler,newFields));\n\t// Update the story and history details\n\tif(this.getVariable(\"tv-auto-open-on-import\") !== \"no\") {\n\t\tvar storyList = this.getStoryList(),\n\t\t\thistory = [];\n\t\t// Add it to the story\n\t\tif(storyList && storyList.indexOf(IMPORT_TITLE) === -1) {\n\t\t\tstoryList.unshift(IMPORT_TITLE);\n\t\t}\n\t\t// And to history\n\t\thistory.push(IMPORT_TITLE);\n\t\t// Save the updated story and history\n\t\tthis.saveStoryList(storyList);\n\t\tthis.addToHistory(history);\n\t}\n\treturn false;\n};\n\n//\nNavigatorWidget.prototype.handlePerformImportEvent = function(event) {\n\tvar self = this,\n\t\timportTiddler = this.wiki.getTiddler(event.param),\n\t\timportData = this.wiki.getTiddlerDataCached(event.param,{tiddlers: {}}),\n\t\timportReport = [];\n\t// Add the tiddlers to the store\n\timportReport.push($tw.language.getString(\"Import/Imported/Hint\") + \"\\n\");\n\t$tw.utils.each(importData.tiddlers,function(tiddlerFields) {\n\t\tvar title = tiddlerFields.title;\n\t\tif(title && importTiddler && importTiddler.fields[\"selection-\" + title] !== \"unchecked\") {\n\t\t\tvar tiddler = new $tw.Tiddler(tiddlerFields);\n\t\t\ttiddler = $tw.hooks.invokeHook(\"th-importing-tiddler\",tiddler);\n\t\t\tself.wiki.addTiddler(tiddler);\n\t\t\timportReport.push(\"# [[\" + tiddlerFields.title + \"]]\");\n\t\t}\n\t});\n\t// Replace the $:/Import tiddler with an import report\n\tthis.wiki.addTiddler(new $tw.Tiddler({\n\t\ttitle: event.param,\n\t\ttext: importReport.join(\"\\n\"),\n\t\t\"status\": \"complete\"\n\t}));\n\t// Navigate to the $:/Import tiddler\n\tthis.addToHistory([event.param]);\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n};\n\nNavigatorWidget.prototype.handleFoldTiddlerEvent = function(event) {\n\tvar paramObject = event.paramObject || {};\n\tif(paramObject.foldedState) {\n\t\tvar foldedState = this.wiki.getTiddlerText(paramObject.foldedState,\"show\") === \"show\" ? \"hide\" : \"show\";\n\t\tthis.wiki.setText(paramObject.foldedState,\"text\",null,foldedState);\n\t}\n};\n\nNavigatorWidget.prototype.handleFoldOtherTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix;\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,event.param === title ? \"show\" : \"hide\");\n\t});\n};\n\nNavigatorWidget.prototype.handleFoldAllTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix || \"$:/state/folded/\";\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,\"hide\");\n\t});\n};\n\nNavigatorWidget.prototype.handleUnfoldAllTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix;\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,\"show\");\n\t});\n};\n\nNavigatorWidget.prototype.handleRenameTiddlerEvent = function(event) {\n\tvar paramObject = event.paramObject || {},\n\t\tfrom = paramObject.from || event.tiddlerTitle,\n\t\tto = paramObject.to;\n\tthis.wiki.renameTiddler(from,to);\n};\n\nexports.navigator = NavigatorWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/password.js": {
"title": "$:/core/modules/widgets/password.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/password.js\ntype: application/javascript\nmodule-type: widget\n\nPassword widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar PasswordWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nPasswordWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nPasswordWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Get the current password\n\tvar password = $tw.browser ? $tw.utils.getPassword(this.passwordName) || \"\" : \"\";\n\t// Create our element\n\tvar domNode = this.document.createElement(\"input\");\n\tdomNode.setAttribute(\"type\",\"password\");\n\tdomNode.setAttribute(\"value\",password);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nPasswordWidget.prototype.handleChangeEvent = function(event) {\n\tvar password = this.domNodes[0].value;\n\treturn $tw.utils.savePassword(this.passwordName,password);\n};\n\n/*\nCompute the internal state of the widget\n*/\nPasswordWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.passwordName = this.getAttribute(\"name\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nPasswordWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.password = PasswordWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/qualify.js": {
"title": "$:/core/modules/widgets/qualify.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/qualify.js\ntype: application/javascript\nmodule-type: widget\n\nQualify text to a variable \n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar QualifyWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nQualifyWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nQualifyWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nQualifyWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.qualifyName = this.getAttribute(\"name\");\n\tthis.qualifyTitle = this.getAttribute(\"title\");\n\t// Set context variable\n\tif(this.qualifyName) {\n\t\tthis.setVariable(this.qualifyName,this.qualifyTitle + \"-\" + this.getStateQualifier());\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nQualifyWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name || changedAttributes.title) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.qualify = QualifyWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/radio.js": {
"title": "$:/core/modules/widgets/radio.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/radio.js\ntype: application/javascript\nmodule-type: widget\n\nSet a field or index at a given tiddler via radio buttons\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RadioWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRadioWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRadioWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\tvar isChecked = this.getValue() === this.radioValue;\n\t// Create our elements\n\tthis.labelDomNode = this.document.createElement(\"label\");\n\tthis.labelDomNode.setAttribute(\"class\",\n \t\t\"tc-radio \" + this.radioClass + (isChecked ? \" tc-radio-selected\" : \"\")\n \t);\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"radio\");\n\tif(isChecked) {\n\t\tthis.inputDomNode.setAttribute(\"checked\",\"true\");\n\t}\n\tthis.labelDomNode.appendChild(this.inputDomNode);\n\tthis.spanDomNode = this.document.createElement(\"span\");\n\tthis.labelDomNode.appendChild(this.spanDomNode);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.labelDomNode,nextSibling);\n\tthis.renderChildren(this.spanDomNode,null);\n\tthis.domNodes.push(this.labelDomNode);\n};\n\nRadioWidget.prototype.getValue = function() {\n\tvar value,\n\t\ttiddler = this.wiki.getTiddler(this.radioTitle);\n\tif (this.radioIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.radioTitle,this.radioIndex);\n\t} else {\n\t\tvalue = tiddler && tiddler.getFieldString(this.radioField);\n\t}\n\treturn value;\n};\n\nRadioWidget.prototype.setValue = function() {\n\tif(this.radioIndex) {\n\t\tthis.wiki.setText(this.radioTitle,\"\",this.radioIndex,this.radioValue);\n\t} else {\n\t\tvar tiddler = this.wiki.getTiddler(this.radioTitle),\n\t\t\taddition = {};\n\t\taddition[this.radioField] = this.radioValue;\n\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),{title: this.radioTitle},tiddler,addition,this.wiki.getModificationFields()));\n\t}\n};\n\nRadioWidget.prototype.handleChangeEvent = function(event) {\n\tif(this.inputDomNode.checked) {\n\t\tthis.setValue();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nRadioWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.radioTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.radioField = this.getAttribute(\"field\",\"text\");\n\tthis.radioIndex = this.getAttribute(\"index\");\n\tthis.radioValue = this.getAttribute(\"value\");\n\tthis.radioClass = this.getAttribute(\"class\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRadioWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.value || changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.radioTitle]) {\n\t\t\tthis.inputDomNode.checked = this.getValue() === this.radioValue;\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.radio = RadioWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/range.js": {
"title": "$:/core/modules/widgets/range.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/range.js\ntype: application/javascript\nmodule-type: widget\n\nRange widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RangeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRangeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRangeWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create our elements\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"range\");\n\tthis.inputDomNode.setAttribute(\"class\",this.elementClass);\n\tif(this.minValue){\n\t\tthis.inputDomNode.setAttribute(\"min\", this.minValue);\n\t}\n\tif(this.maxValue){\n\t\tthis.inputDomNode.setAttribute(\"max\", this.maxValue);\n\t}\n\tif(this.increment){\n\t\tthis.inputDomNode.setAttribute(\"step\", this.increment);\n\t}\n\tthis.inputDomNode.value = this.getValue();\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"input\", handlerObject: this, handlerMethod: \"handleInputEvent\"},\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleInputEvent\"}\t\t\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.inputDomNode,nextSibling);\n\tthis.domNodes.push(this.inputDomNode);\n};\n\nRangeWidget.prototype.getValue = function() {\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle),\n\t\tfieldName = this.tiddlerField || \"text\",\n\t\tvalue = this.defaultValue;\n\tif(tiddler) {\n\t\tif(this.tiddlerIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(tiddler,this.tiddlerIndex,this.defaultValue || \"\");\n\t\t} else {\n\t\t\tif($tw.utils.hop(tiddler.fields,fieldName)) {\n\t\t\t\tvalue = tiddler.fields[fieldName] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = this.defaultValue || \"\";\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nRangeWidget.prototype.handleInputEvent = function(event) {\n\tif(this.getValue() !== this.inputDomNode.value) {\n\t\tif(this.tiddlerIndex) {\n\t\t\tthis.wiki.setText(this.tiddlerTitle,\"\",this.tiddlerIndex,this.inputDomNode.value);\n\t\t} else {\n\t\t\tthis.wiki.setText(this.tiddlerTitle,this.tiddlerField,null,this.inputDomNode.value);\n\t\t}\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nRangeWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.tiddlerField = this.getAttribute(\"field\");\n\tthis.tiddlerIndex = this.getAttribute(\"index\");\n\tthis.minValue = this.getAttribute(\"min\");\n\tthis.maxValue = this.getAttribute(\"max\");\n\tthis.increment = this.getAttribute(\"increment\");\n\tthis.defaultValue = this.getAttribute(\"default\");\n\tthis.elementClass = this.getAttribute(\"class\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRangeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes['min'] || changedAttributes['max'] || changedAttributes['increment'] || changedAttributes[\"default\"] || changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.tiddlerTitle]) {\n\t\t\tvar value = this.getValue();\n\t\t\tif(this.inputDomNode.value !== value) {\n\t\t\t\tthis.inputDomNode.value = value;\t\t\t\t\n\t\t\t}\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.range = RangeWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/raw.js": {
"title": "$:/core/modules/widgets/raw.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/raw.js\ntype: application/javascript\nmodule-type: widget\n\nRaw widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RawWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRawWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRawWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tvar div = this.document.createElement(\"div\");\n\tdiv.innerHTML=this.parseTreeNode.html;\n\tparent.insertBefore(div,nextSibling);\n\tthis.domNodes.push(div);\t\n};\n\n/*\nCompute the internal state of the widget\n*/\nRawWidget.prototype.execute = function() {\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRawWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.raw = RawWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/reveal.js": {
"title": "$:/core/modules/widgets/reveal.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/reveal.js\ntype: application/javascript\nmodule-type: widget\n\nReveal widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RevealWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRevealWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRevealWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.revealTag && $tw.config.htmlUnsafeElements.indexOf(this.revealTag) === -1) {\n\t\ttag = this.revealTag;\n\t}\n\tvar domNode = this.document.createElement(tag);\n\tvar classes = this[\"class\"].split(\" \") || [];\n\tclasses.push(\"tc-reveal\");\n\tdomNode.className = classes.join(\" \");\n\tif(this.style) {\n\t\tdomNode.setAttribute(\"style\",this.style);\n\t}\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tif(!domNode.isTiddlyWikiFakeDom && this.type === \"popup\" && this.isOpen) {\n\t\tthis.positionPopup(domNode);\n\t\t$tw.utils.addClass(domNode,\"tc-popup\"); // Make sure that clicks don't dismiss popups within the revealed content\n\t}\n\tif(!this.isOpen) {\n\t\tdomNode.setAttribute(\"hidden\",\"true\");\n\t}\n\tthis.domNodes.push(domNode);\n};\n\nRevealWidget.prototype.positionPopup = function(domNode) {\n\tdomNode.style.position = \"absolute\";\n\tdomNode.style.zIndex = \"1000\";\n\tvar left,top;\n\tswitch(this.position) {\n\t\tcase \"left\":\n\t\t\tleft = this.popup.left - domNode.offsetWidth;\n\t\t\ttop = this.popup.top;\n\t\t\tbreak;\n\t\tcase \"above\":\n\t\t\tleft = this.popup.left;\n\t\t\ttop = this.popup.top - domNode.offsetHeight;\n\t\t\tbreak;\n\t\tcase \"aboveright\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top + this.popup.height - domNode.offsetHeight;\n\t\t\tbreak;\n\t\tcase \"right\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top;\n\t\t\tbreak;\n\t\tcase \"belowleft\":\n\t\t\tleft = this.popup.left + this.popup.width - domNode.offsetWidth;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\n\t\tdefault: // Below\n\t\t\tleft = this.popup.left;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\n\t}\n\tif(!this.positionAllowNegative) {\n\t\tleft = Math.max(0,left);\n\t\ttop = Math.max(0,top);\n\t}\n\tdomNode.style.left = left + \"px\";\n\tdomNode.style.top = top + \"px\";\n};\n\n/*\nCompute the internal state of the widget\n*/\nRevealWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.state = this.getAttribute(\"state\");\n\tthis.revealTag = this.getAttribute(\"tag\");\n\tthis.type = this.getAttribute(\"type\");\n\tthis.text = this.getAttribute(\"text\");\n\tthis.position = this.getAttribute(\"position\");\n\tthis.positionAllowNegative = this.getAttribute(\"positionAllowNegative\") === \"yes\";\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tthis.style = this.getAttribute(\"style\",\"\");\n\tthis[\"default\"] = this.getAttribute(\"default\",\"\");\n\tthis.animate = this.getAttribute(\"animate\",\"no\");\n\tthis.retain = this.getAttribute(\"retain\",\"no\");\n\tthis.openAnimation = this.animate === \"no\" ? undefined : \"open\";\n\tthis.closeAnimation = this.animate === \"no\" ? undefined : \"close\";\n\t// Compute the title of the state tiddler and read it\n\tthis.stateTiddlerTitle = this.state;\n\tthis.stateTitle = this.getAttribute(\"stateTitle\");\n\tthis.stateField = this.getAttribute(\"stateField\");\n\tthis.stateIndex = this.getAttribute(\"stateIndex\");\n\tthis.readState();\n\t// Construct the child widgets\n\tvar childNodes = this.isOpen ? this.parseTreeNode.children : [];\n\tthis.hasChildNodes = this.isOpen;\n\tthis.makeChildWidgets(childNodes);\n};\n\n/*\nRead the state tiddler\n*/\nRevealWidget.prototype.readState = function() {\n\t// Read the information from the state tiddler\n\tvar state,\n\t defaultState = this[\"default\"];\n\tif(this.stateTitle) {\n\t\tvar stateTitleTiddler = this.wiki.getTiddler(this.stateTitle);\n\t\tif(this.stateField) {\n\t\t\tstate = stateTitleTiddler ? stateTitleTiddler.getFieldString(this.stateField) || defaultState : defaultState;\n\t\t} else if(this.stateIndex) {\n\t\t\tstate = stateTitleTiddler ? this.wiki.extractTiddlerDataItem(this.stateTitle,this.stateIndex) || defaultState : defaultState;\n\t\t} else if(stateTitleTiddler) {\n\t\t\tstate = this.wiki.getTiddlerText(this.stateTitle) || defaultState;\n\t\t} else {\n\t\t\tstate = defaultState;\n\t\t}\n\t} else {\n\t\tstate = this.stateTiddlerTitle ? this.wiki.getTextReference(this.state,this[\"default\"],this.getVariable(\"currentTiddler\")) : this[\"default\"];\n\t}\n\tif(state === null) {\n\t\tstate = this[\"default\"];\n\t}\n\tswitch(this.type) {\n\t\tcase \"popup\":\n\t\t\tthis.readPopupState(state);\n\t\t\tbreak;\n\t\tcase \"match\":\n\t\t\tthis.isOpen = this.text === state;\n\t\t\tbreak;\n\t\tcase \"nomatch\":\n\t\t\tthis.isOpen = this.text !== state;\n\t\t\tbreak;\n\t\tcase \"lt\":\n\t\t\tthis.isOpen = !!(this.compareStateText(state) < 0);\n\t\t\tbreak;\n\t\tcase \"gt\":\n\t\t\tthis.isOpen = !!(this.compareStateText(state) > 0);\n\t\t\tbreak;\n\t\tcase \"lteq\":\n\t\t\tthis.isOpen = !(this.compareStateText(state) > 0);\n\t\t\tbreak;\n\t\tcase \"gteq\":\n\t\t\tthis.isOpen = !(this.compareStateText(state) < 0);\n\t\t\tbreak;\n\t}\n};\n\nRevealWidget.prototype.compareStateText = function(state) {\n\treturn state.localeCompare(this.text,undefined,{numeric: true,sensitivity: \"case\"});\n};\n\nRevealWidget.prototype.readPopupState = function(state) {\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/,\n\t\tmatch = popupLocationRegExp.exec(state);\n\t// Check if the state matches the location regexp\n\tif(match) {\n\t\t// If so, we're open\n\t\tthis.isOpen = true;\n\t\t// Get the location\n\t\tthis.popup = {\n\t\t\tleft: parseFloat(match[1]),\n\t\t\ttop: parseFloat(match[2]),\n\t\t\twidth: parseFloat(match[3]),\n\t\t\theight: parseFloat(match[4])\n\t\t};\n\t} else {\n\t\t// If not, we're closed\n\t\tthis.isOpen = false;\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRevealWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.state || changedAttributes.type || changedAttributes.text || changedAttributes.position || changedAttributes.positionAllowNegative || changedAttributes[\"default\"] || changedAttributes.animate || changedAttributes.stateTitle || changedAttributes.stateField || changedAttributes.stateIndex) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar currentlyOpen = this.isOpen;\n\t\tthis.readState();\n\t\tif(this.isOpen !== currentlyOpen) {\n\t\t\tif(this.retain === \"yes\") {\n\t\t\t\tthis.updateState();\n\t\t\t} else {\n\t\t\t\tthis.refreshSelf();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\n/*\nCalled by refresh() to dynamically show or hide the content\n*/\nRevealWidget.prototype.updateState = function() {\n\tvar self = this;\n\t// Read the current state\n\tthis.readState();\n\t// Construct the child nodes if needed\n\tvar domNode = this.domNodes[0];\n\tif(this.isOpen && !this.hasChildNodes) {\n\t\tthis.hasChildNodes = true;\n\t\tthis.makeChildWidgets(this.parseTreeNode.children);\n\t\tthis.renderChildren(domNode,null);\n\t}\n\t// Animate our DOM node\n\tif(!domNode.isTiddlyWikiFakeDom && this.type === \"popup\" && this.isOpen) {\n\t\tthis.positionPopup(domNode);\n\t\t$tw.utils.addClass(domNode,\"tc-popup\"); // Make sure that clicks don't dismiss popups within the revealed content\n\n\t}\n\tif(this.isOpen) {\n\t\tdomNode.removeAttribute(\"hidden\");\n $tw.anim.perform(this.openAnimation,domNode);\n\t} else {\n\t\t$tw.anim.perform(this.closeAnimation,domNode,{callback: function() {\n\t\t\t//make sure that the state hasn't changed during the close animation\n\t\t\tself.readState()\n\t\t\tif(!self.isOpen) {\n\t\t\t\tdomNode.setAttribute(\"hidden\",\"true\");\n\t\t\t}\n\t\t}});\n\t}\n};\n\nexports.reveal = RevealWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/scrollable.js": {
"title": "$:/core/modules/widgets/scrollable.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/scrollable.js\ntype: application/javascript\nmodule-type: widget\n\nScrollable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ScrollableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.scaleFactor = 1;\n\tthis.addEventListeners([\n\t\t{type: \"tm-scroll\", handler: \"handleScrollEvent\"}\n\t]);\n\tif($tw.browser) {\n\t\tthis.requestAnimationFrame = window.requestAnimationFrame ||\n\t\t\twindow.webkitRequestAnimationFrame ||\n\t\t\twindow.mozRequestAnimationFrame ||\n\t\t\tfunction(callback) {\n\t\t\t\treturn window.setTimeout(callback, 1000/60);\n\t\t\t};\n\t\tthis.cancelAnimationFrame = window.cancelAnimationFrame ||\n\t\t\twindow.webkitCancelAnimationFrame ||\n\t\t\twindow.webkitCancelRequestAnimationFrame ||\n\t\t\twindow.mozCancelAnimationFrame ||\n\t\t\twindow.mozCancelRequestAnimationFrame ||\n\t\t\tfunction(id) {\n\t\t\t\twindow.clearTimeout(id);\n\t\t\t};\n\t}\n};\n\n/*\nInherit from the base widget class\n*/\nScrollableWidget.prototype = new Widget();\n\nScrollableWidget.prototype.cancelScroll = function() {\n\tif(this.idRequestFrame) {\n\t\tthis.cancelAnimationFrame.call(window,this.idRequestFrame);\n\t\tthis.idRequestFrame = null;\n\t}\n};\n\n/*\nHandle a scroll event\n*/\nScrollableWidget.prototype.handleScrollEvent = function(event) {\n\t// Pass the scroll event through if our offsetsize is larger than our scrollsize\n\tif(this.outerDomNode.scrollWidth <= this.outerDomNode.offsetWidth && this.outerDomNode.scrollHeight <= this.outerDomNode.offsetHeight && this.fallthrough === \"yes\") {\n\t\treturn true;\n\t}\n\tthis.scrollIntoView(event.target);\n\treturn false; // Handled event\n};\n\n/*\nScroll an element into view\n*/\nScrollableWidget.prototype.scrollIntoView = function(element) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tthis.cancelScroll();\n\tthis.startTime = Date.now();\n\tvar scrollPosition = {\n\t\tx: this.outerDomNode.scrollLeft,\n\t\ty: this.outerDomNode.scrollTop\n\t};\n\t// Get the client bounds of the element and adjust by the scroll position\n\tvar scrollableBounds = this.outerDomNode.getBoundingClientRect(),\n\t\tclientTargetBounds = element.getBoundingClientRect(),\n\t\tbounds = {\n\t\t\tleft: clientTargetBounds.left + scrollPosition.x - scrollableBounds.left,\n\t\t\ttop: clientTargetBounds.top + scrollPosition.y - scrollableBounds.top,\n\t\t\twidth: clientTargetBounds.width,\n\t\t\theight: clientTargetBounds.height\n\t\t};\n\t// We'll consider the horizontal and vertical scroll directions separately via this function\n\tvar getEndPos = function(targetPos,targetSize,currentPos,currentSize) {\n\t\t\t// If the target is already visible then stay where we are\n\t\t\tif(targetPos >= currentPos && (targetPos + targetSize) <= (currentPos + currentSize)) {\n\t\t\t\treturn currentPos;\n\t\t\t// If the target is above/left of the current view, then scroll to its top/left\n\t\t\t} else if(targetPos <= currentPos) {\n\t\t\t\treturn targetPos;\n\t\t\t// If the target is smaller than the window and the scroll position is too far up, then scroll till the target is at the bottom of the window\n\t\t\t} else if(targetSize < currentSize && currentPos < (targetPos + targetSize - currentSize)) {\n\t\t\t\treturn targetPos + targetSize - currentSize;\n\t\t\t// If the target is big, then just scroll to the top\n\t\t\t} else if(currentPos < targetPos) {\n\t\t\t\treturn targetPos;\n\t\t\t// Otherwise, stay where we are\n\t\t\t} else {\n\t\t\t\treturn currentPos;\n\t\t\t}\n\t\t},\n\t\tendX = getEndPos(bounds.left,bounds.width,scrollPosition.x,this.outerDomNode.offsetWidth),\n\t\tendY = getEndPos(bounds.top,bounds.height,scrollPosition.y,this.outerDomNode.offsetHeight);\n\t// Only scroll if necessary\n\tif(endX !== scrollPosition.x || endY !== scrollPosition.y) {\n\t\tvar self = this,\n\t\t\tdrawFrame;\n\t\tdrawFrame = function () {\n\t\t\tvar t;\n\t\t\tif(duration <= 0) {\n\t\t\t\tt = 1;\n\t\t\t} else {\n\t\t\t\tt = ((Date.now()) - self.startTime) / duration;\t\n\t\t\t}\n\t\t\tif(t >= 1) {\n\t\t\t\tself.cancelScroll();\n\t\t\t\tt = 1;\n\t\t\t}\n\t\t\tt = $tw.utils.slowInSlowOut(t);\n\t\t\tself.outerDomNode.scrollLeft = scrollPosition.x + (endX - scrollPosition.x) * t;\n\t\t\tself.outerDomNode.scrollTop = scrollPosition.y + (endY - scrollPosition.y) * t;\n\t\t\tif(t < 1) {\n\t\t\t\tself.idRequestFrame = self.requestAnimationFrame.call(window,drawFrame);\n\t\t\t}\n\t\t};\n\t\tdrawFrame();\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nScrollableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create elements\n\tthis.outerDomNode = this.document.createElement(\"div\");\n\t$tw.utils.setStyle(this.outerDomNode,[\n\t\t{overflowY: \"auto\"},\n\t\t{overflowX: \"auto\"},\n\t\t{webkitOverflowScrolling: \"touch\"}\n\t]);\n\tthis.innerDomNode = this.document.createElement(\"div\");\n\tthis.outerDomNode.appendChild(this.innerDomNode);\n\t// Assign classes\n\tthis.outerDomNode.className = this[\"class\"] || \"\";\n\t// Insert element\n\tparent.insertBefore(this.outerDomNode,nextSibling);\n\tthis.renderChildren(this.innerDomNode,null);\n\tthis.domNodes.push(this.outerDomNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nScrollableWidget.prototype.execute = function() {\n\t// Get attributes\n\tthis.fallthrough = this.getAttribute(\"fallthrough\",\"yes\");\n\tthis[\"class\"] = this.getAttribute(\"class\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nScrollableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.scrollable = ScrollableWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/select.js": {
"title": "$:/core/modules/widgets/select.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/select.js\ntype: application/javascript\nmodule-type: widget\n\nSelect widget:\n\n```\n<$select tiddler=\"MyTiddler\" field=\"text\">\n<$list filter=\"[tag[chapter]]\">\n<option value=<<currentTiddler>>>\n<$view field=\"description\"/>\n</option>\n</$list>\n</$select>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SelectWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSelectWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSelectWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n\tthis.setSelectValue();\n\t$tw.utils.addEventListeners(this.getSelectDomNode(),[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n};\n\n/*\nHandle a change event\n*/\nSelectWidget.prototype.handleChangeEvent = function(event) {\n\t// Get the new value and assign it to the tiddler\n\tif(this.selectMultiple == false) {\n\t\tvar value = this.getSelectDomNode().value;\n\t} else {\n\t\tvar value = this.getSelectValues()\n\t\t\t\tvalue = $tw.utils.stringifyList(value);\n\t}\n\tthis.wiki.setText(this.selectTitle,this.selectField,this.selectIndex,value);\n\t// Trigger actions\n\tif(this.selectActions) {\n\t\tthis.invokeActionString(this.selectActions,this,event);\n\t}\n};\n\n/*\nIf necessary, set the value of the select element to the current value\n*/\nSelectWidget.prototype.setSelectValue = function() {\n\tvar value = this.selectDefault;\n\t// Get the value\n\tif(this.selectIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.selectTitle,this.selectIndex,value);\n\t} else {\n\t\tvar tiddler = this.wiki.getTiddler(this.selectTitle);\n\t\tif(tiddler) {\n\t\t\tif(this.selectField === \"text\") {\n\t\t\t\t// Calling getTiddlerText() triggers lazy loading of skinny tiddlers\n\t\t\t\tvalue = this.wiki.getTiddlerText(this.selectTitle);\n\t\t\t} else {\n\t\t\t\tif($tw.utils.hop(tiddler.fields,this.selectField)) {\n\t\t\t\t\tvalue = tiddler.getFieldString(this.selectField);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif(this.selectField === \"title\") {\n\t\t\t\tvalue = this.selectTitle;\n\t\t\t}\n\t\t}\n\t}\n\t// Assign it to the select element if it's different than the current value\n\tif (this.selectMultiple) {\n\t\tvalue = value === undefined ? \"\" : value;\n\t\tvar select = this.getSelectDomNode();\n\t\tvar values = Array.isArray(value) ? value : $tw.utils.parseStringArray(value);\n\t\tfor(var i=0; i < select.children.length; i++){\n\t\t\tselect.children[i].selected = values.indexOf(select.children[i].value) !== -1\n\t\t}\n\t} else {\n\t\tvar domNode = this.getSelectDomNode();\n\t\tif(domNode.value !== value) {\n\t\t\tdomNode.value = value;\n\t\t}\n\t}\n};\n\n/*\nGet the DOM node of the select element\n*/\nSelectWidget.prototype.getSelectDomNode = function() {\n\treturn this.children[0].domNodes[0];\n};\n\n// Return an array of the selected opion values\n// select is an HTML select element\nSelectWidget.prototype.getSelectValues = function() {\n\tvar select, result, options, opt;\n\tselect = this.getSelectDomNode();\n\tresult = [];\n\toptions = select && select.options;\n\tfor (var i=0; i<options.length; i++) {\n\t\topt = options[i];\n\t\tif (opt.selected) {\n\t\t\tresult.push(opt.value || opt.text);\n\t\t}\n\t}\n\treturn result;\n}\n\n/*\nCompute the internal state of the widget\n*/\nSelectWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.selectActions = this.getAttribute(\"actions\");\n\tthis.selectTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.selectField = this.getAttribute(\"field\",\"text\");\n\tthis.selectIndex = this.getAttribute(\"index\");\n\tthis.selectClass = this.getAttribute(\"class\");\n\tthis.selectDefault = this.getAttribute(\"default\");\n\tthis.selectMultiple = this.getAttribute(\"multiple\", false);\n\tthis.selectSize = this.getAttribute(\"size\");\n\tthis.selectTooltip = this.getAttribute(\"tooltip\");\n\t// Make the child widgets\n\tvar selectNode = {\n\t\ttype: \"element\",\n\t\ttag: \"select\",\n\t\tchildren: this.parseTreeNode.children\n\t};\n\tif(this.selectClass) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"class\",this.selectClass);\n\t}\n\tif(this.selectMultiple) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"multiple\",\"multiple\");\n\t}\n\tif(this.selectSize) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"size\",this.selectSize);\n\t}\n\tif(this.selectTooltip) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"title\",this.selectTooltip);\n\t}\n\tthis.makeChildWidgets([selectNode]);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nSelectWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// If we're using a different tiddler/field/index then completely refresh ourselves\n\tif(changedAttributes.selectTitle || changedAttributes.selectField || changedAttributes.selectIndex || changedAttributes.selectTooltip) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t// If the target tiddler value has changed, just update setting and refresh the children\n\t} else {\n\t\tvar childrenRefreshed = this.refreshChildren(changedTiddlers);\n\t\tif(changedTiddlers[this.selectTitle] || childrenRefreshed) {\n\t\t\tthis.setSelectValue();\n\t\t} \n\t\treturn childrenRefreshed;\n\t}\n};\n\nexports.select = SelectWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/set.js": {
"title": "$:/core/modules/widgets/set.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/set.js\ntype: application/javascript\nmodule-type: widget\n\nSet variable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SetWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSetWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSetWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nSetWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.setName = this.getAttribute(\"name\",\"currentTiddler\");\n\tthis.setFilter = this.getAttribute(\"filter\");\n\tthis.setSelect = this.getAttribute(\"select\");\n\tthis.setTiddler = this.getAttribute(\"tiddler\");\n\tthis.setSubTiddler = this.getAttribute(\"subtiddler\");\n\tthis.setField = this.getAttribute(\"field\");\n\tthis.setIndex = this.getAttribute(\"index\");\n\tthis.setValue = this.getAttribute(\"value\");\n\tthis.setEmptyValue = this.getAttribute(\"emptyValue\");\n\t// Set context variable\n\tthis.setVariable(this.setName,this.getValue(),this.parseTreeNode.params,!!this.parseTreeNode.isMacroDefinition);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nGet the value to be assigned\n*/\nSetWidget.prototype.getValue = function() {\n\tvar value = this.setValue;\n\tif(this.setTiddler) {\n\t\tvar tiddler;\n\t\tif(this.setSubTiddler) {\n\t\t\ttiddler = this.wiki.getSubTiddler(this.setTiddler,this.setSubTiddler);\n\t\t} else {\n\t\t\ttiddler = this.wiki.getTiddler(this.setTiddler);\t\t\t\n\t\t}\n\t\tif(!tiddler) {\n\t\t\tvalue = this.setEmptyValue;\n\t\t} else if(this.setField) {\n\t\t\tvalue = tiddler.getFieldString(this.setField) || this.setEmptyValue;\n\t\t} else if(this.setIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(this.setTiddler,this.setIndex,this.setEmptyValue);\n\t\t} else {\n\t\t\tvalue = tiddler.fields.text || this.setEmptyValue ;\n\t\t}\n\t} else if(this.setFilter) {\n\t\tvar results = this.wiki.filterTiddlers(this.setFilter,this);\n\t\tif(this.setValue == null) {\n\t\t\tvar select;\n\t\t\tif(this.setSelect) {\n\t\t\t\tselect = parseInt(this.setSelect,10);\n\t\t\t}\n\t\t\tif(select !== undefined) {\n\t\t\t\tvalue = results[select] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = $tw.utils.stringifyList(results);\t\t\t\n\t\t\t}\n\t\t}\n\t\tif(results.length === 0 && this.setEmptyValue !== undefined) {\n\t\t\tvalue = this.setEmptyValue;\n\t\t}\n\t} else if(!value && this.setEmptyValue) {\n\t\tvalue = this.setEmptyValue;\n\t}\n\treturn value || \"\";\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nSetWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name || changedAttributes.filter || changedAttributes.select || changedAttributes.tiddler || (this.setTiddler && changedTiddlers[this.setTiddler]) || changedAttributes.field || changedAttributes.index || changedAttributes.value || changedAttributes.emptyValue ||\n\t (this.setFilter && this.getValue() != this.variables[this.setName].value)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.setvariable = SetWidget;\nexports.set = SetWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/text.js": {
"title": "$:/core/modules/widgets/text.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/text.js\ntype: application/javascript\nmodule-type: widget\n\nText node widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TextNodeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTextNodeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTextNodeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar text = this.getAttribute(\"text\",this.parseTreeNode.text || \"\");\n\ttext = text.replace(/\\r/mg,\"\");\n\tvar textNode = this.document.createTextNode(text);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTextNodeWidget.prototype.execute = function() {\n\t// Nothing to do for a text node\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTextNodeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.text) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.text = TextNodeWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/tiddler.js": {
"title": "$:/core/modules/widgets/tiddler.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/tiddler.js\ntype: application/javascript\nmodule-type: widget\n\nTiddler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTiddlerWidget.prototype.execute = function() {\n\tthis.tiddlerState = this.computeTiddlerState();\n\tthis.setVariable(\"currentTiddler\",this.tiddlerState.currentTiddler);\n\tthis.setVariable(\"missingTiddlerClass\",this.tiddlerState.missingTiddlerClass);\n\tthis.setVariable(\"shadowTiddlerClass\",this.tiddlerState.shadowTiddlerClass);\n\tthis.setVariable(\"systemTiddlerClass\",this.tiddlerState.systemTiddlerClass);\n\tthis.setVariable(\"tiddlerTagClasses\",this.tiddlerState.tiddlerTagClasses);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nCompute the tiddler state flags\n*/\nTiddlerWidget.prototype.computeTiddlerState = function() {\n\t// Get our parameters\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Compute the state\n\tvar state = {\n\t\tcurrentTiddler: this.tiddlerTitle || \"\",\n\t\tmissingTiddlerClass: (this.wiki.tiddlerExists(this.tiddlerTitle) || this.wiki.isShadowTiddler(this.tiddlerTitle)) ? \"tc-tiddler-exists\" : \"tc-tiddler-missing\",\n\t\tshadowTiddlerClass: this.wiki.isShadowTiddler(this.tiddlerTitle) ? \"tc-tiddler-shadow\" : \"\",\n\t\tsystemTiddlerClass: this.wiki.isSystemTiddler(this.tiddlerTitle) ? \"tc-tiddler-system\" : \"\",\n\t\ttiddlerTagClasses: this.getTagClasses()\n\t};\n\t// Compute a simple hash to make it easier to detect changes\n\tstate.hash = state.currentTiddler + state.missingTiddlerClass + state.shadowTiddlerClass + state.systemTiddlerClass + state.tiddlerTagClasses;\n\treturn state;\n};\n\n/*\nCreate a string of CSS classes derived from the tags of the current tiddler\n*/\nTiddlerWidget.prototype.getTagClasses = function() {\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle);\n\tif(tiddler) {\n\t\tvar tags = [];\n\t\t$tw.utils.each(tiddler.fields.tags,function(tag) {\n\t\t\ttags.push(\"tc-tagged-\" + encodeURIComponent(tag));\n\t\t});\n\t\treturn tags.join(\" \");\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\tnewTiddlerState = this.computeTiddlerState();\n\tif(changedAttributes.tiddler || newTiddlerState.hash !== this.tiddlerState.hash) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.tiddler = TiddlerWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/transclude.js": {
"title": "$:/core/modules/widgets/transclude.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/transclude.js\ntype: application/javascript\nmodule-type: widget\n\nTransclude widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TranscludeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTranscludeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTranscludeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTranscludeWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.transcludeTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.transcludeSubTiddler = this.getAttribute(\"subtiddler\");\n\tthis.transcludeField = this.getAttribute(\"field\");\n\tthis.transcludeIndex = this.getAttribute(\"index\");\n\tthis.transcludeMode = this.getAttribute(\"mode\");\n\t// Parse the text reference\n\tvar parseAsInline = !this.parseTreeNode.isBlock;\n\tif(this.transcludeMode === \"inline\") {\n\t\tparseAsInline = true;\n\t} else if(this.transcludeMode === \"block\") {\n\t\tparseAsInline = false;\n\t}\n\tvar parser = this.wiki.parseTextReference(\n\t\t\t\t\t\tthis.transcludeTitle,\n\t\t\t\t\t\tthis.transcludeField,\n\t\t\t\t\t\tthis.transcludeIndex,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tparseAsInline: parseAsInline,\n\t\t\t\t\t\t\tsubTiddler: this.transcludeSubTiddler\n\t\t\t\t\t\t}),\n\t\tparseTreeNodes = parser ? parser.tree : this.parseTreeNode.children;\n\t// Set context variables for recursion detection\n\tvar recursionMarker = this.makeRecursionMarker();\n\tthis.setVariable(\"transclusion\",recursionMarker);\n\t// Check for recursion\n\tif(parser) {\n\t\tif(this.parentWidget && this.parentWidget.hasVariable(\"transclusion\",recursionMarker)) {\n\t\t\tparseTreeNodes = [{type: \"element\", tag: \"span\", attributes: {\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-error\"}\n\t\t\t}, children: [\n\t\t\t\t{type: \"text\", text: $tw.language.getString(\"Error/RecursiveTransclusion\")}\n\t\t\t]}];\n\t\t}\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nCompose a string comprising the title, field and/or index to identify this transclusion for recursion detection\n*/\nTranscludeWidget.prototype.makeRecursionMarker = function() {\n\tvar output = [];\n\toutput.push(\"{\");\n\toutput.push(this.getVariable(\"currentTiddler\",{defaultValue: \"\"}));\n\toutput.push(\"|\");\n\toutput.push(this.transcludeTitle || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeField || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeIndex || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeSubTiddler || \"\");\n\toutput.push(\"}\");\n\treturn output.join(\"\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTranscludeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedTiddlers[this.transcludeTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.transclude = TranscludeWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/vars.js": {
"title": "$:/core/modules/widgets/vars.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/vars.js\ntype: application/javascript\nmodule-type: widget\n\nThis widget allows multiple variables to be set in one go:\n\n```\n\\define helloworld() Hello world!\n<$vars greeting=\"Hi\" me={{!!title}} sentence=<<helloworld>>>\n <<greeting>>! I am <<me>> and I say: <<sentence>>\n</$vars>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar VarsWidget = function(parseTreeNode,options) {\n\t// Call the constructor\n\tWidget.call(this);\n\t// Initialise\t\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nVarsWidget.prototype = Object.create(Widget.prototype);\n\n/*\nRender this widget into the DOM\n*/\nVarsWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nVarsWidget.prototype.execute = function() {\n\t// Parse variables\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(val,key) {\n\t\tif(key.charAt(0) !== \"$\") {\n\t\t\tself.setVariable(key,val);\n\t\t}\n\t});\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nVarsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(Object.keys(changedAttributes).length) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports[\"vars\"] = VarsWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/view.js": {
"title": "$:/core/modules/widgets/view.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/view.js\ntype: application/javascript\nmodule-type: widget\n\nView widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ViewWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nViewWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nViewWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tif(this.text) {\n\t\tvar textNode = this.document.createTextNode(this.text);\n\t\tparent.insertBefore(textNode,nextSibling);\n\t\tthis.domNodes.push(textNode);\n\t} else {\n\t\tthis.makeChildWidgets();\n\t\tthis.renderChildren(parent,nextSibling);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nViewWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.viewTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.viewSubtiddler = this.getAttribute(\"subtiddler\");\n\tthis.viewField = this.getAttribute(\"field\",\"text\");\n\tthis.viewIndex = this.getAttribute(\"index\");\n\tthis.viewFormat = this.getAttribute(\"format\",\"text\");\n\tthis.viewTemplate = this.getAttribute(\"template\",\"\");\n\tthis.viewMode = this.getAttribute(\"mode\",\"block\");\n\tswitch(this.viewFormat) {\n\t\tcase \"htmlwikified\":\n\t\t\tthis.text = this.getValueAsHtmlWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"plainwikified\":\n\t\t\tthis.text = this.getValueAsPlainWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"htmlencodedplainwikified\":\n\t\t\tthis.text = this.getValueAsHtmlEncodedPlainWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"htmlencoded\":\n\t\t\tthis.text = this.getValueAsHtmlEncoded();\n\t\t\tbreak;\n\t\tcase \"urlencoded\":\n\t\t\tthis.text = this.getValueAsUrlEncoded();\n\t\t\tbreak;\n\t\tcase \"doubleurlencoded\":\n\t\t\tthis.text = this.getValueAsDoubleUrlEncoded();\n\t\t\tbreak;\n\t\tcase \"date\":\n\t\t\tthis.text = this.getValueAsDate(this.viewTemplate);\n\t\t\tbreak;\n\t\tcase \"relativedate\":\n\t\t\tthis.text = this.getValueAsRelativeDate();\n\t\t\tbreak;\n\t\tcase \"stripcomments\":\n\t\t\tthis.text = this.getValueAsStrippedComments();\n\t\t\tbreak;\n\t\tcase \"jsencoded\":\n\t\t\tthis.text = this.getValueAsJsEncoded();\n\t\t\tbreak;\n\t\tdefault: // \"text\"\n\t\t\tthis.text = this.getValueAsText();\n\t\t\tbreak;\n\t}\n};\n\n/*\nThe various formatter functions are baked into this widget for the moment. Eventually they will be replaced by macro functions\n*/\n\n/*\nRetrieve the value of the widget. Options are:\nasString: Optionally return the value as a string\n*/\nViewWidget.prototype.getValue = function(options) {\n\toptions = options || {};\n\tvar value = options.asString ? \"\" : undefined;\n\tif(this.viewIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.viewTitle,this.viewIndex);\n\t} else {\n\t\tvar tiddler;\n\t\tif(this.viewSubtiddler) {\n\t\t\ttiddler = this.wiki.getSubTiddler(this.viewTitle,this.viewSubtiddler);\t\n\t\t} else {\n\t\t\ttiddler = this.wiki.getTiddler(this.viewTitle);\n\t\t}\n\t\tif(tiddler) {\n\t\t\tif(this.viewField === \"text\" && !this.viewSubtiddler) {\n\t\t\t\t// Calling getTiddlerText() triggers lazy loading of skinny tiddlers\n\t\t\t\tvalue = this.wiki.getTiddlerText(this.viewTitle);\n\t\t\t} else {\n\t\t\t\tif($tw.utils.hop(tiddler.fields,this.viewField)) {\n\t\t\t\t\tif(options.asString) {\n\t\t\t\t\t\tvalue = tiddler.getFieldString(this.viewField);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvalue = tiddler.fields[this.viewField];\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif(this.viewField === \"title\") {\n\t\t\t\tvalue = this.viewTitle;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nViewWidget.prototype.getValueAsText = function() {\n\treturn this.getValue({asString: true});\n};\n\nViewWidget.prototype.getValueAsHtmlWikified = function(mode) {\n\treturn this.wiki.renderText(\"text/html\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t});\n};\n\nViewWidget.prototype.getValueAsPlainWikified = function(mode) {\n\treturn this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t});\n};\n\nViewWidget.prototype.getValueAsHtmlEncodedPlainWikified = function(mode) {\n\treturn $tw.utils.htmlEncode(this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t}));\n};\n\nViewWidget.prototype.getValueAsHtmlEncoded = function() {\n\treturn $tw.utils.htmlEncode(this.getValueAsText());\n};\n\nViewWidget.prototype.getValueAsUrlEncoded = function() {\n\treturn encodeURIComponent(this.getValueAsText());\n};\n\nViewWidget.prototype.getValueAsDoubleUrlEncoded = function() {\n\treturn encodeURIComponent(encodeURIComponent(this.getValueAsText()));\n};\n\nViewWidget.prototype.getValueAsDate = function(format) {\n\tformat = format || \"YYYY MM DD 0hh:0mm\";\n\tvar value = $tw.utils.parseDate(this.getValue());\n\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\treturn $tw.utils.formatDateString(value,format);\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\nViewWidget.prototype.getValueAsRelativeDate = function(format) {\n\tvar value = $tw.utils.parseDate(this.getValue());\n\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\treturn $tw.utils.getRelativeDate((new Date()) - (new Date(value))).description;\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\nViewWidget.prototype.getValueAsStrippedComments = function() {\n\tvar lines = this.getValueAsText().split(\"\\n\"),\n\t\tout = [];\n\tfor(var line=0; line<lines.length; line++) {\n\t\tvar text = lines[line];\n\t\tif(!/^\\s*\\/\\/#/.test(text)) {\n\t\t\tout.push(text);\n\t\t}\n\t}\n\treturn out.join(\"\\n\");\n};\n\nViewWidget.prototype.getValueAsJsEncoded = function() {\n\treturn $tw.utils.stringify(this.getValueAsText());\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nViewWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.template || changedAttributes.format || changedTiddlers[this.viewTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.view = ViewWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/widget.js": {
"title": "$:/core/modules/widgets/widget.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/widget.js\ntype: application/javascript\nmodule-type: widget\n\nWidget base class\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreate a widget object for a parse tree node\n\tparseTreeNode: reference to the parse tree node to be rendered\n\toptions: see below\nOptions include:\n\twiki: mandatory reference to wiki associated with this render tree\n\tparentWidget: optional reference to a parent renderer node for the context chain\n\tdocument: optional document object to use instead of global document\n*/\nvar Widget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInitialise widget properties. These steps are pulled out of the constructor so that we can reuse them in subclasses\n*/\nWidget.prototype.initialise = function(parseTreeNode,options) {\n\t// Bail if parseTreeNode is undefined, meaning that the widget constructor was called without any arguments so that it can be subclassed\n\tif(parseTreeNode === undefined) {\n\t\treturn;\n\t}\n\toptions = options || {};\n\t// Save widget info\n\tthis.parseTreeNode = parseTreeNode;\n\tthis.wiki = options.wiki;\n\tthis.parentWidget = options.parentWidget;\n\tthis.variablesConstructor = function() {};\n\tthis.variablesConstructor.prototype = this.parentWidget ? this.parentWidget.variables : {};\n\tthis.variables = new this.variablesConstructor();\n\tthis.document = options.document;\n\tthis.attributes = {};\n\tthis.children = [];\n\tthis.domNodes = [];\n\tthis.eventListeners = {};\n\t// Hashmap of the widget classes\n\tif(!this.widgetClasses) {\n\t\t// Get widget classes\n\t\tWidget.prototype.widgetClasses = $tw.modules.applyMethods(\"widget\");\n\t\t// Process any subclasses\n\t\t$tw.modules.forEachModuleOfType(\"widget-subclass\",function(title,module) {\n\t\t\tif(module.baseClass) {\n\t\t\t\tvar baseClass = Widget.prototype.widgetClasses[module.baseClass];\n\t\t\t\tif(!baseClass) {\n\t\t\t\t\tthrow \"Module '\" + title + \"' is attemping to extend a non-existent base class '\" + module.baseClass + \"'\";\n\t\t\t\t}\n\t\t\t\tvar subClass = module.constructor;\n\t\t\t\tsubClass.prototype = new baseClass();\n\t\t\t\t$tw.utils.extend(subClass.prototype,module.prototype);\n\t\t\t\tWidget.prototype.widgetClasses[module.name || module.baseClass] = subClass;\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nWidget.prototype.execute = function() {\n\tthis.makeChildWidgets();\n};\n\n/*\nSet the value of a context variable\nname: name of the variable\nvalue: value of the variable\nparams: array of {name:, default:} for each parameter\nisMacroDefinition: true if the variable is set via a \\define macro pragma (and hence should have variable substitution performed)\n*/\nWidget.prototype.setVariable = function(name,value,params,isMacroDefinition) {\n\tthis.variables[name] = {value: value, params: params, isMacroDefinition: !!isMacroDefinition};\n};\n\n/*\nGet the prevailing value of a context variable\nname: name of variable\noptions: see below\nOptions include\nparams: array of {name:, value:} for each parameter\ndefaultValue: default value if the variable is not defined\n\nReturns an object with the following fields:\n\nparams: array of {name:,value:} of parameters passed to wikitext variables\ntext: text of variable, with parameters properly substituted\n*/\nWidget.prototype.getVariableInfo = function(name,options) {\n\toptions = options || {};\n\tvar actualParams = options.params || [],\n\t\tparentWidget = this.parentWidget;\n\t// Check for the variable defined in the parent widget (or an ancestor in the prototype chain)\n\tif(parentWidget && name in parentWidget.variables) {\n\t\tvar variable = parentWidget.variables[name],\n\t\t\tvalue = variable.value,\n\t\t\tparams = this.resolveVariableParameters(variable.params,actualParams);\n\t\t// Substitute any parameters specified in the definition\n\t\t$tw.utils.each(params,function(param) {\n\t\t\tvalue = $tw.utils.replaceString(value,new RegExp(\"\\\\$\" + $tw.utils.escapeRegExp(param.name) + \"\\\\$\",\"mg\"),param.value);\n\t\t});\n\t\t// Only substitute variable references if this variable was defined with the \\define pragma\n\t\tif(variable.isMacroDefinition) {\n\t\t\tvalue = this.substituteVariableReferences(value);\t\t\t\n\t\t}\n\t\treturn {\n\t\t\ttext: value,\n\t\t\tparams: params\n\t\t};\n\t}\n\t// If the variable doesn't exist in the parent widget then look for a macro module\n\treturn {\n\t\ttext: this.evaluateMacroModule(name,actualParams,options.defaultValue)\n\t};\n};\n\n/*\nSimplified version of getVariableInfo() that just returns the text\n*/\nWidget.prototype.getVariable = function(name,options) {\n\treturn this.getVariableInfo(name,options).text;\n};\n\nWidget.prototype.resolveVariableParameters = function(formalParams,actualParams) {\n\tformalParams = formalParams || [];\n\tactualParams = actualParams || [];\n\tvar nextAnonParameter = 0, // Next candidate anonymous parameter in macro call\n\t\tparamInfo, paramValue,\n\t\tresults = [];\n\t// Step through each of the parameters in the macro definition\n\tfor(var p=0; p<formalParams.length; p++) {\n\t\t// Check if we've got a macro call parameter with the same name\n\t\tparamInfo = formalParams[p];\n\t\tparamValue = undefined;\n\t\tfor(var m=0; m<actualParams.length; m++) {\n\t\t\tif(actualParams[m].name === paramInfo.name) {\n\t\t\t\tparamValue = actualParams[m].value;\n\t\t\t}\n\t\t}\n\t\t// If not, use the next available anonymous macro call parameter\n\t\twhile(nextAnonParameter < actualParams.length && actualParams[nextAnonParameter].name) {\n\t\t\tnextAnonParameter++;\n\t\t}\n\t\tif(paramValue === undefined && nextAnonParameter < actualParams.length) {\n\t\t\tparamValue = actualParams[nextAnonParameter++].value;\n\t\t}\n\t\t// If we've still not got a value, use the default, if any\n\t\tparamValue = paramValue || paramInfo[\"default\"] || \"\";\n\t\t// Store the parameter name and value\n\t\tresults.push({name: paramInfo.name, value: paramValue});\n\t}\n\treturn results;\n};\n\nWidget.prototype.substituteVariableReferences = function(text) {\n\tvar self = this;\n\treturn (text || \"\").replace(/\\$\\(([^\\)\\$]+)\\)\\$/g,function(match,p1,offset,string) {\n\t\treturn self.getVariable(p1,{defaultValue: \"\"});\n\t});\n};\n\nWidget.prototype.evaluateMacroModule = function(name,actualParams,defaultValue) {\n\tif($tw.utils.hop($tw.macros,name)) {\n\t\tvar macro = $tw.macros[name],\n\t\t\targs = [];\n\t\tif(macro.params.length > 0) {\n\t\t\tvar nextAnonParameter = 0, // Next candidate anonymous parameter in macro call\n\t\t\t\tparamInfo, paramValue;\n\t\t\t// Step through each of the parameters in the macro definition\n\t\t\tfor(var p=0; p<macro.params.length; p++) {\n\t\t\t\t// Check if we've got a macro call parameter with the same name\n\t\t\t\tparamInfo = macro.params[p];\n\t\t\t\tparamValue = undefined;\n\t\t\t\tfor(var m=0; m<actualParams.length; m++) {\n\t\t\t\t\tif(actualParams[m].name === paramInfo.name) {\n\t\t\t\t\t\tparamValue = actualParams[m].value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// If not, use the next available anonymous macro call parameter\n\t\t\t\twhile(nextAnonParameter < actualParams.length && actualParams[nextAnonParameter].name) {\n\t\t\t\t\tnextAnonParameter++;\n\t\t\t\t}\n\t\t\t\tif(paramValue === undefined && nextAnonParameter < actualParams.length) {\n\t\t\t\t\tparamValue = actualParams[nextAnonParameter++].value;\n\t\t\t\t}\n\t\t\t\t// If we've still not got a value, use the default, if any\n\t\t\t\tparamValue = paramValue || paramInfo[\"default\"] || \"\";\n\t\t\t\t// Save the parameter\n\t\t\t\targs.push(paramValue);\n\t\t\t}\n\t\t}\n\t\telse for(var i=0; i<actualParams.length; ++i) {\n\t\t\targs.push(actualParams[i].value);\n\t\t}\n\t\treturn (macro.run.apply(this,args) || \"\").toString();\n\t} else {\n\t\treturn defaultValue;\n\t}\n};\n\n/*\nCheck whether a given context variable value exists in the parent chain\n*/\nWidget.prototype.hasVariable = function(name,value) {\n\tvar node = this;\n\twhile(node) {\n\t\tif($tw.utils.hop(node.variables,name) && node.variables[name].value === value) {\n\t\t\treturn true;\n\t\t}\n\t\tnode = node.parentWidget;\n\t}\n\treturn false;\n};\n\n/*\nConstruct a qualifying string based on a hash of concatenating the values of a given variable in the parent chain\n*/\nWidget.prototype.getStateQualifier = function(name) {\n\tthis.qualifiers = this.qualifiers || Object.create(null);\n\tname = name || \"transclusion\";\n\tif(this.qualifiers[name]) {\n\t\treturn this.qualifiers[name];\n\t} else {\n\t\tvar output = [],\n\t\t\tnode = this;\n\t\twhile(node && node.parentWidget) {\n\t\t\tif($tw.utils.hop(node.parentWidget.variables,name)) {\n\t\t\t\toutput.push(node.getVariable(name));\n\t\t\t}\n\t\t\tnode = node.parentWidget;\n\t\t}\n\t\tvar value = $tw.utils.hashString(output.join(\"\"));\n\t\tthis.qualifiers[name] = value;\n\t\treturn value;\n\t}\n};\n\n/*\nCompute the current values of the attributes of the widget. Returns a hashmap of the names of the attributes that have changed\n*/\nWidget.prototype.computeAttributes = function() {\n\tvar changedAttributes = {},\n\t\tself = this,\n\t\tvalue;\n\t$tw.utils.each(this.parseTreeNode.attributes,function(attribute,name) {\n\t\tif(attribute.type === \"filtered\") {\n\t\t\tvalue = self.wiki.filterTiddlers(attribute.filter,self)[0] || \"\";\n\t\t} else if(attribute.type === \"indirect\") {\n\t\t\tvalue = self.wiki.getTextReference(attribute.textReference,\"\",self.getVariable(\"currentTiddler\"));\n\t\t} else if(attribute.type === \"macro\") {\n\t\t\tvalue = self.getVariable(attribute.value.name,{params: attribute.value.params});\n\t\t} else { // String attribute\n\t\t\tvalue = attribute.value;\n\t\t}\n\t\t// Check whether the attribute has changed\n\t\tif(self.attributes[name] !== value) {\n\t\t\tself.attributes[name] = value;\n\t\t\tchangedAttributes[name] = true;\n\t\t}\n\t});\n\treturn changedAttributes;\n};\n\n/*\nCheck for the presence of an attribute\n*/\nWidget.prototype.hasAttribute = function(name) {\n\treturn $tw.utils.hop(this.attributes,name);\n};\n\n/*\nGet the value of an attribute\n*/\nWidget.prototype.getAttribute = function(name,defaultText) {\n\tif($tw.utils.hop(this.attributes,name)) {\n\t\treturn this.attributes[name];\n\t} else {\n\t\treturn defaultText;\n\t}\n};\n\n/*\nAssign the computed attributes of the widget to a domNode\noptions include:\nexcludeEventAttributes: ignores attributes whose name begins with \"on\"\n*/\nWidget.prototype.assignAttributes = function(domNode,options) {\n\toptions = options || {};\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(v,a) {\n\t\t// Check exclusions\n\t\tif(options.excludeEventAttributes && a.substr(0,2) === \"on\") {\n\t\t\tv = undefined;\n\t\t}\n\t\tif(v !== undefined) {\n\t\t\tvar b = a.split(\":\");\n\t\t\t// Setting certain attributes can cause a DOM error (eg xmlns on the svg element)\n\t\t\ttry {\n\t\t\t\tif (b.length == 2 && b[0] == \"xlink\"){\n\t\t\t\t\tdomNode.setAttributeNS(\"http://www.w3.org/1999/xlink\",b[1],v);\n\t\t\t\t} else {\n\t\t\t\t\tdomNode.setAttributeNS(null,a,v);\n\t\t\t\t}\n\t\t\t} catch(e) {\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nMake child widgets correspondng to specified parseTreeNodes\n*/\nWidget.prototype.makeChildWidgets = function(parseTreeNodes) {\n\tthis.children = [];\n\tvar self = this;\n\t$tw.utils.each(parseTreeNodes || (this.parseTreeNode && this.parseTreeNode.children),function(childNode) {\n\t\tself.children.push(self.makeChildWidget(childNode));\n\t});\n};\n\n/*\nConstruct the widget object for a parse tree node\n*/\nWidget.prototype.makeChildWidget = function(parseTreeNode) {\n\tvar WidgetClass = this.widgetClasses[parseTreeNode.type];\n\tif(!WidgetClass) {\n\t\tWidgetClass = this.widgetClasses.text;\n\t\tparseTreeNode = {type: \"text\", text: \"Undefined widget '\" + parseTreeNode.type + \"'\"};\n\t}\n\treturn new WidgetClass(parseTreeNode,{\n\t\twiki: this.wiki,\n\t\tvariables: {},\n\t\tparentWidget: this,\n\t\tdocument: this.document\n\t});\n};\n\n/*\nGet the next sibling of this widget\n*/\nWidget.prototype.nextSibling = function() {\n\tif(this.parentWidget) {\n\t\tvar index = this.parentWidget.children.indexOf(this);\n\t\tif(index !== -1 && index < this.parentWidget.children.length-1) {\n\t\t\treturn this.parentWidget.children[index+1];\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nGet the previous sibling of this widget\n*/\nWidget.prototype.previousSibling = function() {\n\tif(this.parentWidget) {\n\t\tvar index = this.parentWidget.children.indexOf(this);\n\t\tif(index !== -1 && index > 0) {\n\t\t\treturn this.parentWidget.children[index-1];\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRender the children of this widget into the DOM\n*/\nWidget.prototype.renderChildren = function(parent,nextSibling) {\n\tvar children = this.children;\n\tfor(var i = 0; i < children.length; i++) {\n\t\tchildren[i].render(parent,nextSibling);\n\t};\n};\n\n/*\nAdd a list of event listeners from an array [{type:,handler:},...]\n*/\nWidget.prototype.addEventListeners = function(listeners) {\n\tvar self = this;\n\t$tw.utils.each(listeners,function(listenerInfo) {\n\t\tself.addEventListener(listenerInfo.type,listenerInfo.handler);\n\t});\n};\n\n/*\nAdd an event listener\n*/\nWidget.prototype.addEventListener = function(type,handler) {\n\tvar self = this;\n\tif(typeof handler === \"string\") { // The handler is a method name on this widget\n\t\tthis.eventListeners[type] = function(event) {\n\t\t\treturn self[handler].call(self,event);\n\t\t};\n\t} else { // The handler is a function\n\t\tthis.eventListeners[type] = function(event) {\n\t\t\treturn handler.call(self,event);\n\t\t};\n\t}\n};\n\n/*\nDispatch an event to a widget. If the widget doesn't handle the event then it is also dispatched to the parent widget\n*/\nWidget.prototype.dispatchEvent = function(event) {\n\t// Dispatch the event if this widget handles it\n\tvar listener = this.eventListeners[event.type];\n\tif(listener) {\n\t\t// Don't propagate the event if the listener returned false\n\t\tif(!listener(event)) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Dispatch the event to the parent widget\n\tif(this.parentWidget) {\n\t\treturn this.parentWidget.dispatchEvent(event);\n\t}\n\treturn true;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nRebuild a previously rendered widget\n*/\nWidget.prototype.refreshSelf = function() {\n\tvar nextSibling = this.findNextSiblingDomNode();\n\tthis.removeChildDomNodes();\n\tthis.render(this.parentDomNode,nextSibling);\n};\n\n/*\nRefresh all the children of a widget\n*/\nWidget.prototype.refreshChildren = function(changedTiddlers) {\n\tvar children = this.children,\n\t\trefreshed = false;\n\tfor (var i = 0; i < children.length; i++) {\n\t\trefreshed = children[i].refresh(changedTiddlers) || refreshed;\n\t}\n\treturn refreshed;\n};\n\n/*\nFind the next sibling in the DOM to this widget. This is done by scanning the widget tree through all next siblings and their descendents that share the same parent DOM node\n*/\nWidget.prototype.findNextSiblingDomNode = function(startIndex) {\n\t// Refer to this widget by its index within its parents children\n\tvar parent = this.parentWidget,\n\t\tindex = startIndex !== undefined ? startIndex : parent.children.indexOf(this);\nif(index === -1) {\n\tthrow \"node not found in parents children\";\n}\n\t// Look for a DOM node in the later siblings\n\twhile(++index < parent.children.length) {\n\t\tvar domNode = parent.children[index].findFirstDomNode();\n\t\tif(domNode) {\n\t\t\treturn domNode;\n\t\t}\n\t}\n\t// Go back and look for later siblings of our parent if it has the same parent dom node\n\tvar grandParent = parent.parentWidget;\n\tif(grandParent && parent.parentDomNode === this.parentDomNode) {\n\t\tindex = grandParent.children.indexOf(parent);\n\t\tif(index !== -1) {\n\t\t\treturn parent.findNextSiblingDomNode(index);\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nFind the first DOM node generated by a widget or its children\n*/\nWidget.prototype.findFirstDomNode = function() {\n\t// Return the first dom node of this widget, if we've got one\n\tif(this.domNodes.length > 0) {\n\t\treturn this.domNodes[0];\n\t}\n\t// Otherwise, recursively call our children\n\tfor(var t=0; t<this.children.length; t++) {\n\t\tvar domNode = this.children[t].findFirstDomNode();\n\t\tif(domNode) {\n\t\t\treturn domNode;\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRemove any DOM nodes created by this widget or its children\n*/\nWidget.prototype.removeChildDomNodes = function() {\n\t// If this widget has directly created DOM nodes, delete them and exit. This assumes that any child widgets are contained within the created DOM nodes, which would normally be the case\n\tif(this.domNodes.length > 0) {\n\t\t$tw.utils.each(this.domNodes,function(domNode) {\n\t\t\tdomNode.parentNode.removeChild(domNode);\n\t\t});\n\t\tthis.domNodes = [];\n\t} else {\n\t\t// Otherwise, ask the child widgets to delete their DOM nodes\n\t\t$tw.utils.each(this.children,function(childWidget) {\n\t\t\tchildWidget.removeChildDomNodes();\n\t\t});\n\t}\n};\n\n/*\nInvoke the action widgets that are descendents of the current widget.\n*/\nWidget.prototype.invokeActions = function(triggeringWidget,event) {\n\tvar handled = false;\n\t// For each child widget\n\tfor(var t=0; t<this.children.length; t++) {\n\t\tvar child = this.children[t];\n\t\t// Invoke the child if it is an action widget\n\t\tif(child.invokeAction) {\n\t\t\tchild.refreshSelf();\n\t\t\tif(child.invokeAction(triggeringWidget,event)) {\n\t\t\t\thandled = true;\n\t\t\t}\n\t\t}\n\t\t// Propagate through through the child if it permits it\n\t\tif(child.allowActionPropagation() && child.invokeActions(triggeringWidget,event)) {\n\t\t\thandled = true;\n\t\t}\n\t}\n\treturn handled;\n};\n\n/*\nInvoke the action widgets defined in a string\n*/\nWidget.prototype.invokeActionString = function(actions,triggeringWidget,event,variables) {\n\tactions = actions || \"\";\n\tvar parser = this.wiki.parseText(\"text/vnd.tiddlywiki\",actions,{\n\t\t\tparentWidget: this,\n\t\t\tdocument: this.document\n\t\t}),\n\t\twidgetNode = this.wiki.makeWidget(parser,{\n\t\t\tparentWidget: this,\n\t\t\tdocument: this.document,\n\t\t\tvariables: variables\n\t\t});\n\tvar container = this.document.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn widgetNode.invokeActions(this,event);\n};\n\nWidget.prototype.allowActionPropagation = function() {\n\treturn true;\n};\n\nexports.widget = Widget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/wikify.js": {
"title": "$:/core/modules/widgets/wikify.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/wikify.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to wikify text into a variable\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar WikifyWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nWikifyWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nWikifyWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nWikifyWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.wikifyName = this.getAttribute(\"name\");\n\tthis.wikifyText = this.getAttribute(\"text\");\n\tthis.wikifyType = this.getAttribute(\"type\");\n\tthis.wikifyMode = this.getAttribute(\"mode\",\"block\");\n\tthis.wikifyOutput = this.getAttribute(\"output\",\"text\");\n\t// Create the parse tree\n\tthis.wikifyParser = this.wiki.parseText(this.wikifyType,this.wikifyText,{\n\t\t\tparseAsInline: this.wikifyMode === \"inline\"\n\t\t});\n\t// Create the widget tree \n\tthis.wikifyWidgetNode = this.wiki.makeWidget(this.wikifyParser,{\n\t\t\tdocument: $tw.fakeDocument,\n\t\t\tparentWidget: this\n\t\t});\n\t// Render the widget tree to the container\n\tthis.wikifyContainer = $tw.fakeDocument.createElement(\"div\");\n\tthis.wikifyWidgetNode.render(this.wikifyContainer,null);\n\tthis.wikifyResult = this.getResult();\n\t// Set context variable\n\tthis.setVariable(this.wikifyName,this.wikifyResult);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nReturn the result string\n*/\nWikifyWidget.prototype.getResult = function() {\n\tvar result;\n\tswitch(this.wikifyOutput) {\n\t\tcase \"text\":\n\t\t\tresult = this.wikifyContainer.textContent;\n\t\t\tbreak;\n\t\tcase \"formattedtext\":\n\t\t\tresult = this.wikifyContainer.formattedTextContent;\n\t\t\tbreak;\n\t\tcase \"html\":\n\t\t\tresult = this.wikifyContainer.innerHTML;\n\t\t\tbreak;\n\t\tcase \"parsetree\":\n\t\t\tresult = JSON.stringify(this.wikifyParser.tree,0,$tw.config.preferences.jsonSpaces);\n\t\t\tbreak;\n\t\tcase \"widgettree\":\n\t\t\tresult = JSON.stringify(this.getWidgetTree(),0,$tw.config.preferences.jsonSpaces);\n\t\t\tbreak;\n\t}\n\treturn result;\n};\n\n/*\nReturn a string of the widget tree\n*/\nWikifyWidget.prototype.getWidgetTree = function() {\n\tvar copyNode = function(widgetNode,resultNode) {\n\t\t\tvar type = widgetNode.parseTreeNode.type;\n\t\t\tresultNode.type = type;\n\t\t\tswitch(type) {\n\t\t\t\tcase \"element\":\n\t\t\t\t\tresultNode.tag = widgetNode.parseTreeNode.tag;\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"text\":\n\t\t\t\t\tresultNode.text = widgetNode.parseTreeNode.text;\n\t\t\t\t\tbreak;\t\n\t\t\t}\n\t\t\tif(Object.keys(widgetNode.attributes || {}).length > 0) {\n\t\t\t\tresultNode.attributes = {};\n\t\t\t\t$tw.utils.each(widgetNode.attributes,function(attr,attrName) {\n\t\t\t\t\tresultNode.attributes[attrName] = widgetNode.getAttribute(attrName);\n\t\t\t\t});\n\t\t\t}\n\t\t\tif(Object.keys(widgetNode.children || {}).length > 0) {\n\t\t\t\tresultNode.children = [];\n\t\t\t\t$tw.utils.each(widgetNode.children,function(widgetChildNode) {\n\t\t\t\t\tvar node = {};\n\t\t\t\t\tresultNode.children.push(node);\n\t\t\t\t\tcopyNode(widgetChildNode,node);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tresults = {};\n\tcopyNode(this.wikifyWidgetNode,results);\n\treturn results;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nWikifyWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// Refresh ourselves entirely if any of our attributes have changed\n\tif(changedAttributes.name || changedAttributes.text || changedAttributes.type || changedAttributes.mode || changedAttributes.output) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\t// Refresh the widget tree\n\t\tif(this.wikifyWidgetNode.refresh(changedTiddlers)) {\n\t\t\t// Check if there was any change\n\t\t\tvar result = this.getResult();\n\t\t\tif(result !== this.wikifyResult) {\n\t\t\t\t// If so, save the change\n\t\t\t\tthis.wikifyResult = result;\n\t\t\t\tthis.setVariable(this.wikifyName,this.wikifyResult);\n\t\t\t\t// Refresh each of our child widgets\n\t\t\t\t$tw.utils.each(this.children,function(childWidget) {\n\t\t\t\t\tchildWidget.refreshSelf();\n\t\t\t\t});\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\t// Just refresh the children\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.wikify = WikifyWidget;\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/wiki-bulkops.js": {
"title": "$:/core/modules/wiki-bulkops.js",
"text": "/*\\\ntitle: $:/core/modules/wiki-bulkops.js\ntype: application/javascript\nmodule-type: wikimethod\n\nBulk tiddler operations such as rename.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRename a tiddler, and relink any tags or lists that reference it.\n*/\nfunction renameTiddler(fromTitle,toTitle,options) {\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\toptions = options || {};\n\tif(fromTitle && toTitle && fromTitle !== toTitle) {\n\t\t// Rename the tiddler itself\n\t\tvar oldTiddler = this.getTiddler(fromTitle),\n\t\t\tnewTiddler = new $tw.Tiddler(oldTiddler,{title: toTitle},this.getModificationFields());\n\t\tnewTiddler = $tw.hooks.invokeHook(\"th-renaming-tiddler\",newTiddler,oldTiddler);\n\t\tthis.addTiddler(newTiddler);\n\t\tthis.deleteTiddler(fromTitle);\n\t\t// Rename any tags or lists that reference it\n\t\tthis.relinkTiddler(fromTitle,toTitle,options)\n\t}\n}\n\n/*\nRelink any tags or lists that reference a given tiddler\n*/\nfunction relinkTiddler(fromTitle,toTitle,options) {\n\tvar self = this;\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\toptions = options || {};\n\tif(fromTitle && toTitle && fromTitle !== toTitle) {\n\t\tthis.each(function(tiddler,title) {\n\t\t\tvar type = tiddler.fields.type || \"\";\n\t\t\t// Don't touch plugins or JavaScript modules\n\t\t\tif(!tiddler.fields[\"plugin-type\"] && type !== \"application/javascript\") {\n\t\t\t\tvar tags = tiddler.fields.tags ? tiddler.fields.tags.slice(0) : undefined,\n\t\t\t\t\tlist = tiddler.fields.list ? tiddler.fields.list.slice(0) : undefined,\n\t\t\t\t\tisModified = false;\n\t\t\t\tif(!options.dontRenameInTags) {\n\t\t\t\t\t// Rename tags\n\t\t\t\t\t$tw.utils.each(tags,function (title,index) {\n\t\t\t\t\t\tif(title === fromTitle) {\nconsole.log(\"Renaming tag '\" + tags[index] + \"' to '\" + toTitle + \"' of tiddler '\" + tiddler.fields.title + \"'\");\n\t\t\t\t\t\t\ttags[index] = toTitle;\n\t\t\t\t\t\t\tisModified = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif(!options.dontRenameInLists) {\n\t\t\t\t\t// Rename lists\n\t\t\t\t\t$tw.utils.each(list,function (title,index) {\n\t\t\t\t\t\tif(title === fromTitle) {\nconsole.log(\"Renaming list item '\" + list[index] + \"' to '\" + toTitle + \"' of tiddler '\" + tiddler.fields.title + \"'\");\n\t\t\t\t\t\t\tlist[index] = toTitle;\n\t\t\t\t\t\t\tisModified = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif(isModified) {\n\t\t\t\t\tvar newTiddler = new $tw.Tiddler(tiddler,{tags: tags, list: list},self.getModificationFields())\n\t\t\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-relinking-tiddler\",newTiddler,tiddler);\n\t\t\t\t\tself.addTiddler(newTiddler);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n};\n\nexports.renameTiddler = renameTiddler;\nexports.relinkTiddler = relinkTiddler;\n\n})();\n",
"type": "application/javascript",
"module-type": "wikimethod"
},
"$:/core/modules/wiki.js": {
"title": "$:/core/modules/wiki.js",
"text": "/*\\\ntitle: $:/core/modules/wiki.js\ntype: application/javascript\nmodule-type: wikimethod\n\nExtension methods for the $tw.Wiki object\n\nAdds the following properties to the wiki object:\n\n* `eventListeners` is a hashmap by type of arrays of listener functions\n* `changedTiddlers` is a hashmap describing changes to named tiddlers since wiki change events were last dispatched. Each entry is a hashmap containing two fields:\n\tmodified: true/false\n\tdeleted: true/false\n* `changeCount` is a hashmap by tiddler title containing a numerical index that starts at zero and is incremented each time a tiddler is created changed or deleted\n* `caches` is a hashmap by tiddler title containing a further hashmap of named cache objects. Caches are automatically cleared when a tiddler is modified or deleted\n* `globalCache` is a hashmap by cache name of cache objects that are cleared whenever any tiddler change occurs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar USER_NAME_TITLE = \"$:/status/UserName\",\n\tTIMESTAMP_DISABLE_TITLE = \"$:/config/TimestampDisable\";\n\n/*\nAdd available indexers to this wiki\n*/\nexports.addIndexersToWiki = function() {\n\tvar self = this;\n\t$tw.utils.each($tw.modules.applyMethods(\"indexer\"),function(Indexer,name) {\n\t\tself.addIndexer(new Indexer(self),name);\n\t});\n};\n\n/*\nGet the value of a text reference. Text references can have any of these forms:\n\t<tiddlertitle>\n\t<tiddlertitle>!!<fieldname>\n\t!!<fieldname> - specifies a field of the current tiddlers\n\t<tiddlertitle>##<index>\n*/\nexports.getTextReference = function(textRef,defaultText,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle = tr.title || currTiddlerTitle;\n\tif(tr.field) {\n\t\tvar tiddler = this.getTiddler(title);\n\t\tif(tr.field === \"title\") { // Special case so we can return the title of a non-existent tiddler\n\t\t\treturn title;\n\t\t} else if(tiddler && $tw.utils.hop(tiddler.fields,tr.field)) {\n\t\t\treturn tiddler.getFieldString(tr.field);\n\t\t} else {\n\t\t\treturn defaultText;\n\t\t}\n\t} else if(tr.index) {\n\t\treturn this.extractTiddlerDataItem(title,tr.index,defaultText);\n\t} else {\n\t\treturn this.getTiddlerText(title,defaultText);\n\t}\n};\n\nexports.setTextReference = function(textRef,value,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle = tr.title || currTiddlerTitle;\n\tthis.setText(title,tr.field,tr.index,value);\n};\n\nexports.setText = function(title,field,index,value,options) {\n\toptions = options || {};\n\tvar creationFields = options.suppressTimestamp ? {} : this.getCreationFields(),\n\t\tmodificationFields = options.suppressTimestamp ? {} : this.getModificationFields();\n\t// Check if it is a reference to a tiddler field\n\tif(index) {\n\t\tvar data = this.getTiddlerData(title,Object.create(null));\n\t\tif(value !== undefined) {\n\t\t\tdata[index] = value;\n\t\t} else {\n\t\t\tdelete data[index];\n\t\t}\n\t\tthis.setTiddlerData(title,data,modificationFields);\n\t} else {\n\t\tvar tiddler = this.getTiddler(title),\n\t\t\tfields = {title: title};\n\t\tfields[field || \"text\"] = value;\n\t\tthis.addTiddler(new $tw.Tiddler(creationFields,tiddler,fields,modificationFields));\n\t}\n};\n\nexports.deleteTextReference = function(textRef,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle,tiddler,fields;\n\t// Check if it is a reference to a tiddler\n\tif(tr.title && !tr.field) {\n\t\tthis.deleteTiddler(tr.title);\n\t// Else check for a field reference\n\t} else if(tr.field) {\n\t\ttitle = tr.title || currTiddlerTitle;\n\t\ttiddler = this.getTiddler(title);\n\t\tif(tiddler && $tw.utils.hop(tiddler.fields,tr.field)) {\n\t\t\tfields = Object.create(null);\n\t\t\tfields[tr.field] = undefined;\n\t\t\tthis.addTiddler(new $tw.Tiddler(tiddler,fields,this.getModificationFields()));\n\t\t}\n\t}\n};\n\nexports.addEventListener = function(type,listener) {\n\tthis.eventListeners = this.eventListeners || {};\n\tthis.eventListeners[type] = this.eventListeners[type] || [];\n\tthis.eventListeners[type].push(listener);\t\n};\n\nexports.removeEventListener = function(type,listener) {\n\tvar listeners = this.eventListeners[type];\n\tif(listeners) {\n\t\tvar p = listeners.indexOf(listener);\n\t\tif(p !== -1) {\n\t\t\tlisteners.splice(p,1);\n\t\t}\n\t}\n};\n\nexports.dispatchEvent = function(type /*, args */) {\n\tvar args = Array.prototype.slice.call(arguments,1),\n\t\tlisteners = this.eventListeners[type];\n\tif(listeners) {\n\t\tfor(var p=0; p<listeners.length; p++) {\n\t\t\tvar listener = listeners[p];\n\t\t\tlistener.apply(listener,args);\n\t\t}\n\t}\n};\n\n/*\nCauses a tiddler to be marked as changed, incrementing the change count, and triggers event handlers.\nThis method should be called after the changes it describes have been made to the wiki.tiddlers[] array.\n\ttitle: Title of tiddler\n\tisDeleted: defaults to false (meaning the tiddler has been created or modified),\n\t\ttrue if the tiddler has been deleted\n*/\nexports.enqueueTiddlerEvent = function(title,isDeleted) {\n\t// Record the touch in the list of changed tiddlers\n\tthis.changedTiddlers = this.changedTiddlers || Object.create(null);\n\tthis.changedTiddlers[title] = this.changedTiddlers[title] || Object.create(null);\n\tthis.changedTiddlers[title][isDeleted ? \"deleted\" : \"modified\"] = true;\n\t// Increment the change count\n\tthis.changeCount = this.changeCount || Object.create(null);\n\tif($tw.utils.hop(this.changeCount,title)) {\n\t\tthis.changeCount[title]++;\n\t} else {\n\t\tthis.changeCount[title] = 1;\n\t}\n\t// Trigger events\n\tthis.eventListeners = this.eventListeners || {};\n\tif(!this.eventsTriggered) {\n\t\tvar self = this;\n\t\t$tw.utils.nextTick(function() {\n\t\t\tvar changes = self.changedTiddlers;\n\t\t\tself.changedTiddlers = Object.create(null);\n\t\t\tself.eventsTriggered = false;\n\t\t\tif($tw.utils.count(changes) > 0) {\n\t\t\t\tself.dispatchEvent(\"change\",changes);\n\t\t\t}\n\t\t});\n\t\tthis.eventsTriggered = true;\n\t}\n};\n\nexports.getSizeOfTiddlerEventQueue = function() {\n\treturn $tw.utils.count(this.changedTiddlers);\n};\n\nexports.clearTiddlerEventQueue = function() {\n\tthis.changedTiddlers = Object.create(null);\n\tthis.changeCount = Object.create(null);\n};\n\nexports.getChangeCount = function(title) {\n\tthis.changeCount = this.changeCount || Object.create(null);\n\tif($tw.utils.hop(this.changeCount,title)) {\n\t\treturn this.changeCount[title];\n\t} else {\n\t\treturn 0;\n\t}\n};\n\n/*\nGenerate an unused title from the specified base\n*/\nexports.generateNewTitle = function(baseTitle,options) {\n\toptions = options || {};\n\tvar c = 0,\n\t\ttitle = baseTitle;\n\twhile(this.tiddlerExists(title) || this.isShadowTiddler(title) || this.findDraft(title)) {\n\t\ttitle = baseTitle + \n\t\t\t(options.prefix || \" \") + \n\t\t\t(++c);\n\t}\n\treturn title;\n};\n\nexports.isSystemTiddler = function(title) {\n\treturn title && title.indexOf(\"$:/\") === 0;\n};\n\nexports.isTemporaryTiddler = function(title) {\n\treturn title && title.indexOf(\"$:/temp/\") === 0;\n};\n\nexports.isImageTiddler = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\t\t\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/vnd.tiddlywiki\"];\n\t\treturn !!contentTypeInfo && contentTypeInfo.flags.indexOf(\"image\") !== -1;\n\t} else {\n\t\treturn null;\n\t}\n};\n\nexports.isBinaryTiddler = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\t\t\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/vnd.tiddlywiki\"];\n\t\treturn !!contentTypeInfo && contentTypeInfo.encoding === \"base64\";\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLike addTiddler() except it will silently reject any plugin tiddlers that are older than the currently loaded version. Returns true if the tiddler was imported\n*/\nexports.importTiddler = function(tiddler) {\n\tvar existingTiddler = this.getTiddler(tiddler.fields.title);\n\t// Check if we're dealing with a plugin\n\tif(tiddler && tiddler.hasField(\"plugin-type\") && tiddler.hasField(\"version\") && existingTiddler && existingTiddler.hasField(\"plugin-type\") && existingTiddler.hasField(\"version\")) {\n\t\t// Reject the incoming plugin if it is older\n\t\tif(!$tw.utils.checkVersions(tiddler.fields.version,existingTiddler.fields.version)) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Fall through to adding the tiddler\n\tthis.addTiddler(tiddler);\n\treturn true;\n};\n\n/*\nReturn a hashmap of the fields that should be set when a tiddler is created\n*/\nexports.getCreationFields = function() {\n\tif(this.getTiddlerText(TIMESTAMP_DISABLE_TITLE,\"\").toLowerCase() !== \"yes\") {\n\t\tvar fields = {\n\t\t\t\tcreated: new Date()\n\t\t\t},\n\t\t\tcreator = this.getTiddlerText(USER_NAME_TITLE);\n\t\tif(creator) {\n\t\t\tfields.creator = creator;\n\t\t}\n\t\treturn fields;\n\t} else {\n\t\treturn {};\n\t}\n};\n\n/*\nReturn a hashmap of the fields that should be set when a tiddler is modified\n*/\nexports.getModificationFields = function() {\n\tif(this.getTiddlerText(TIMESTAMP_DISABLE_TITLE,\"\").toLowerCase() !== \"yes\") {\n\t\tvar fields = Object.create(null),\n\t\t\tmodifier = this.getTiddlerText(USER_NAME_TITLE);\n\t\tfields.modified = new Date();\n\t\tif(modifier) {\n\t\t\tfields.modifier = modifier;\n\t\t}\n\t\treturn fields;\n\t} else {\n\t\treturn {};\n\t}\n};\n\n/*\nReturn a sorted array of tiddler titles. Options include:\nsortField: field to sort by\nexcludeTag: tag to exclude\nincludeSystem: whether to include system tiddlers (defaults to false)\n*/\nexports.getTiddlers = function(options) {\n\toptions = options || Object.create(null);\n\tvar self = this,\n\t\tsortField = options.sortField || \"title\",\n\t\ttiddlers = [], t, titles = [];\n\tthis.each(function(tiddler,title) {\n\t\tif(options.includeSystem || !self.isSystemTiddler(title)) {\n\t\t\tif(!options.excludeTag || !tiddler.hasTag(options.excludeTag)) {\n\t\t\t\ttiddlers.push(tiddler);\n\t\t\t}\n\t\t}\n\t});\n\ttiddlers.sort(function(a,b) {\n\t\tvar aa = a.fields[sortField].toLowerCase() || \"\",\n\t\t\tbb = b.fields[sortField].toLowerCase() || \"\";\n\t\tif(aa < bb) {\n\t\t\treturn -1;\n\t\t} else {\n\t\t\tif(aa > bb) {\n\t\t\t\treturn 1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t}\n\t});\n\tfor(t=0; t<tiddlers.length; t++) {\n\t\ttitles.push(tiddlers[t].fields.title);\n\t}\n\treturn titles;\n};\n\nexports.countTiddlers = function(excludeTag) {\n\tvar tiddlers = this.getTiddlers({excludeTag: excludeTag});\n\treturn $tw.utils.count(tiddlers);\n};\n\n/*\nReturns a function iterator(callback) that iterates through the specified titles, and invokes the callback with callback(tiddler,title)\n*/\nexports.makeTiddlerIterator = function(titles) {\n\tvar self = this;\n\tif(!$tw.utils.isArray(titles)) {\n\t\ttitles = Object.keys(titles);\n\t} else {\n\t\ttitles = titles.slice(0);\n\t}\n\treturn function(callback) {\n\t\ttitles.forEach(function(title) {\n\t\t\tcallback(self.getTiddler(title),title);\n\t\t});\n\t};\n};\n\n/*\nSort an array of tiddler titles by a specified field\n\ttitles: array of titles (sorted in place)\n\tsortField: name of field to sort by\n\tisDescending: true if the sort should be descending\n\tisCaseSensitive: true if the sort should consider upper and lower case letters to be different\n*/\nexports.sortTiddlers = function(titles,sortField,isDescending,isCaseSensitive,isNumeric,isAlphaNumeric) {\n\tvar self = this;\n\ttitles.sort(function(a,b) {\n\t\tvar x,y,\n\t\t\tcompareNumbers = function(x,y) {\n\t\t\t\tvar result = \n\t\t\t\t\tisNaN(x) && !isNaN(y) ? (isDescending ? -1 : 1) :\n\t\t\t\t\t!isNaN(x) && isNaN(y) ? (isDescending ? 1 : -1) :\n\t\t\t\t\t\t\t\t\t\t\t(isDescending ? y - x : x - y);\n\t\t\t\treturn result;\n\t\t\t};\n\t\tif(sortField !== \"title\") {\n\t\t\tvar tiddlerA = self.getTiddler(a),\n\t\t\t\ttiddlerB = self.getTiddler(b);\n\t\t\tif(tiddlerA) {\n\t\t\t\ta = tiddlerA.fields[sortField] || \"\";\n\t\t\t} else {\n\t\t\t\ta = \"\";\n\t\t\t}\n\t\t\tif(tiddlerB) {\n\t\t\t\tb = tiddlerB.fields[sortField] || \"\";\n\t\t\t} else {\n\t\t\t\tb = \"\";\n\t\t\t}\n\t\t}\n\t\tx = Number(a);\n\t\ty = Number(b);\n\t\tif(isNumeric && (!isNaN(x) || !isNaN(y))) {\n\t\t\treturn compareNumbers(x,y);\n\t\t} else if(isAlphaNumeric) {\n\t\t\treturn isDescending ? b.localeCompare(a,undefined,{numeric: true,sensitivity: \"base\"}) : a.localeCompare(b,undefined,{numeric: true,sensitivity: \"base\"});\n\t\t} else if($tw.utils.isDate(a) && $tw.utils.isDate(b)) {\n\t\t\treturn isDescending ? b - a : a - b;\n\t\t} else {\n\t\t\ta = String(a);\n\t\t\tb = String(b);\n\t\t\tif(!isCaseSensitive) {\n\t\t\t\ta = a.toLowerCase();\n\t\t\t\tb = b.toLowerCase();\n\t\t\t}\n\t\t\treturn isDescending ? b.localeCompare(a) : a.localeCompare(b);\n\t\t}\n\t});\n};\n\n/*\nFor every tiddler invoke a callback(title,tiddler) with `this` set to the wiki object. Options include:\nsortField: field to sort by\nexcludeTag: tag to exclude\nincludeSystem: whether to include system tiddlers (defaults to false)\n*/\nexports.forEachTiddler = function(/* [options,]callback */) {\n\tvar arg = 0,\n\t\toptions = arguments.length >= 2 ? arguments[arg++] : {},\n\t\tcallback = arguments[arg++],\n\t\ttitles = this.getTiddlers(options),\n\t\tt, tiddler;\n\tfor(t=0; t<titles.length; t++) {\n\t\ttiddler = this.getTiddler(titles[t]);\n\t\tif(tiddler) {\n\t\t\tcallback.call(this,tiddler.fields.title,tiddler);\n\t\t}\n\t}\n};\n\n/*\nReturn an array of tiddler titles that are directly linked within the given parse tree\n */\nexports.extractLinks = function(parseTreeRoot) {\n\t// Count up the links\n\tvar links = [],\n\t\tcheckParseTree = function(parseTree) {\n\t\t\tfor(var t=0; t<parseTree.length; t++) {\n\t\t\t\tvar parseTreeNode = parseTree[t];\n\t\t\t\tif(parseTreeNode.type === \"link\" && parseTreeNode.attributes.to && parseTreeNode.attributes.to.type === \"string\") {\n\t\t\t\t\tvar value = parseTreeNode.attributes.to.value;\n\t\t\t\t\tif(links.indexOf(value) === -1) {\n\t\t\t\t\t\tlinks.push(value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif(parseTreeNode.children) {\n\t\t\t\t\tcheckParseTree(parseTreeNode.children);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\tcheckParseTree(parseTreeRoot);\n\treturn links;\n};\n\n/*\nReturn an array of tiddler titles that are directly linked from the specified tiddler\n*/\nexports.getTiddlerLinks = function(title) {\n\tvar self = this;\n\t// We'll cache the links so they only get computed if the tiddler changes\n\treturn this.getCacheForTiddler(title,\"links\",function() {\n\t\t// Parse the tiddler\n\t\tvar parser = self.parseTiddler(title);\n\t\tif(parser) {\n\t\t\treturn self.extractLinks(parser.tree);\n\t\t}\n\t\treturn [];\n\t});\n};\n\n/*\nReturn an array of tiddler titles that link to the specified tiddler\n*/\nexports.getTiddlerBacklinks = function(targetTitle) {\n\tvar self = this,\n\t\tbacklinksIndexer = this.getIndexer(\"BacklinksIndexer\"),\n\t\tbacklinks = backlinksIndexer && backlinksIndexer.lookup(targetTitle);\n\n\tif(!backlinks) {\n\t\tbacklinks = [];\n\t\tthis.forEachTiddler(function(title,tiddler) {\n\t\t\tvar links = self.getTiddlerLinks(title);\n\t\t\tif(links.indexOf(targetTitle) !== -1) {\n\t\t\t\tbacklinks.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn backlinks;\n};\n\n/*\nReturn a hashmap of tiddler titles that are referenced but not defined. Each value is the number of times the missing tiddler is referenced\n*/\nexports.getMissingTitles = function() {\n\tvar self = this,\n\t\tmissing = [];\n// We should cache the missing tiddler list, even if we recreate it every time any tiddler is modified\n\tthis.forEachTiddler(function(title,tiddler) {\n\t\tvar links = self.getTiddlerLinks(title);\n\t\t$tw.utils.each(links,function(link) {\n\t\t\tif((!self.tiddlerExists(link) && !self.isShadowTiddler(link)) && missing.indexOf(link) === -1) {\n\t\t\t\tmissing.push(link);\n\t\t\t}\n\t\t});\n\t});\n\treturn missing;\n};\n\nexports.getOrphanTitles = function() {\n\tvar self = this,\n\t\torphans = this.getTiddlers();\n\tthis.forEachTiddler(function(title,tiddler) {\n\t\tvar links = self.getTiddlerLinks(title);\n\t\t$tw.utils.each(links,function(link) {\n\t\t\tvar p = orphans.indexOf(link);\n\t\t\tif(p !== -1) {\n\t\t\t\torphans.splice(p,1);\n\t\t\t}\n\t\t});\n\t});\n\treturn orphans; // Todo\n};\n\n/*\nRetrieves a list of the tiddler titles that are tagged with a given tag\n*/\nexports.getTiddlersWithTag = function(tag) {\n\t// Try to use the indexer\n\tvar self = this,\n\t\ttagIndexer = this.getIndexer(\"TagIndexer\"),\n\t\tresults = tagIndexer && tagIndexer.subIndexers[3].lookup(tag);\n\tif(!results) {\n\t\t// If not available, perform a manual scan\n\t\tresults = this.getGlobalCache(\"taglist-\" + tag,function() {\n\t\t\tvar tagmap = self.getTagMap();\n\t\t\treturn self.sortByList(tagmap[tag],tag);\n\t\t});\n\t}\n\treturn results;\n};\n\n/*\nGet a hashmap by tag of arrays of tiddler titles\n*/\nexports.getTagMap = function() {\n\tvar self = this;\n\treturn this.getGlobalCache(\"tagmap\",function() {\n\t\tvar tags = Object.create(null),\n\t\t\tstoreTags = function(tagArray,title) {\n\t\t\t\tif(tagArray) {\n\t\t\t\t\tfor(var index=0; index<tagArray.length; index++) {\n\t\t\t\t\t\tvar tag = tagArray[index];\n\t\t\t\t\t\tif($tw.utils.hop(tags,tag)) {\n\t\t\t\t\t\t\ttags[tag].push(title);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttags[tag] = [title];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\ttitle, tiddler;\n\t\t// Collect up all the tags\n\t\tself.eachShadow(function(tiddler,title) {\n\t\t\tif(!self.tiddlerExists(title)) {\n\t\t\t\ttiddler = self.getTiddler(title);\n\t\t\t\tstoreTags(tiddler.fields.tags,title);\n\t\t\t}\n\t\t});\n\t\tself.each(function(tiddler,title) {\n\t\t\tstoreTags(tiddler.fields.tags,title);\n\t\t});\n\t\treturn tags;\n\t});\n};\n\n/*\nLookup a given tiddler and return a list of all the tiddlers that include it in the specified list field\n*/\nexports.findListingsOfTiddler = function(targetTitle,fieldName) {\n\tfieldName = fieldName || \"list\";\n\tvar titles = [];\n\tthis.each(function(tiddler,title) {\n\t\tvar list = $tw.utils.parseStringArray(tiddler.fields[fieldName]);\n\t\tif(list && list.indexOf(targetTitle) !== -1) {\n\t\t\ttitles.push(title);\n\t\t}\n\t});\n\treturn titles;\n};\n\n/*\nSorts an array of tiddler titles according to an ordered list\n*/\nexports.sortByList = function(array,listTitle) {\n\tvar self = this,\n\t\treplacedTitles = Object.create(null);\n\t// Given a title, this function will place it in the correct location\n\t// within titles.\n\tfunction moveItemInList(title) {\n\t\tif(!$tw.utils.hop(replacedTitles, title)) {\n\t\t\treplacedTitles[title] = true;\n\t\t\tvar newPos = -1,\n\t\t\t\ttiddler = self.getTiddler(title);\n\t\t\tif(tiddler) {\n\t\t\t\tvar beforeTitle = tiddler.fields[\"list-before\"],\n\t\t\t\t\tafterTitle = tiddler.fields[\"list-after\"];\n\t\t\t\tif(beforeTitle === \"\") {\n\t\t\t\t\tnewPos = 0;\n\t\t\t\t} else if(afterTitle === \"\") {\n\t\t\t\t\tnewPos = titles.length;\n\t\t\t\t} else if(beforeTitle) {\n\t\t\t\t\t// if this title is placed relative\n\t\t\t\t\t// to another title, make sure that\n\t\t\t\t\t// title is placed before we place\n\t\t\t\t\t// this one.\n\t\t\t\t\tmoveItemInList(beforeTitle);\n\t\t\t\t\tnewPos = titles.indexOf(beforeTitle);\n\t\t\t\t} else if(afterTitle) {\n\t\t\t\t\t// Same deal\n\t\t\t\t\tmoveItemInList(afterTitle);\n\t\t\t\t\tnewPos = titles.indexOf(afterTitle);\n\t\t\t\t\tif(newPos >= 0) {\n\t\t\t\t\t\t++newPos;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// If a new position is specified, let's move it\n\t\t\t\tif (newPos !== -1) {\n\t\t\t\t\t// get its current Pos, and make sure\n\t\t\t\t\t// sure that it's _actually_ in the list\n\t\t\t\t\t// and that it would _actually_ move\n\t\t\t\t\t// (#4275) We don't bother calling\n\t\t\t\t\t// indexOf unless we have a new\n\t\t\t\t\t// position to work with\n\t\t\t\t\tvar currPos = titles.indexOf(title);\n\t\t\t\t\tif(currPos >= 0 && newPos !== currPos) {\n\t\t\t\t\t\t// move it!\n\t\t\t\t\t\ttitles.splice(currPos,1);\n\t\t\t\t\t\tif(newPos >= currPos) {\n\t\t\t\t\t\t\tnewPos--;\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttitles.splice(newPos,0,title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tvar list = this.getTiddlerList(listTitle);\n\tif(!array || array.length === 0) {\n\t\treturn [];\n\t} else {\n\t\tvar titles = [], t, title;\n\t\t// First place any entries that are present in the list\n\t\tfor(t=0; t<list.length; t++) {\n\t\t\ttitle = list[t];\n\t\t\tif(array.indexOf(title) !== -1) {\n\t\t\t\ttitles.push(title);\n\t\t\t}\n\t\t}\n\t\t// Then place any remaining entries\n\t\tfor(t=0; t<array.length; t++) {\n\t\t\ttitle = array[t];\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\ttitles.push(title);\n\t\t\t}\n\t\t}\n\t\t// Finally obey the list-before and list-after fields of each tiddler in turn\n\t\tvar sortedTitles = titles.slice(0);\n\t\tfor(t=0; t<sortedTitles.length; t++) {\n\t\t\ttitle = sortedTitles[t];\n\t\t\tmoveItemInList(title);\n\t\t}\n\t\treturn titles;\n\t}\n};\n\nexports.getSubTiddler = function(title,subTiddlerTitle) {\n\tvar bundleInfo = this.getPluginInfo(title) || this.getTiddlerDataCached(title);\n\tif(bundleInfo && bundleInfo.tiddlers) {\n\t\tvar subTiddler = bundleInfo.tiddlers[subTiddlerTitle];\n\t\tif(subTiddler) {\n\t\t\treturn new $tw.Tiddler(subTiddler);\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRetrieve a tiddler as a JSON string of the fields\n*/\nexports.getTiddlerAsJson = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\n\t\tvar fields = Object.create(null);\n\t\t$tw.utils.each(tiddler.fields,function(value,name) {\n\t\t\tfields[name] = tiddler.getFieldString(name);\n\t\t});\n\t\treturn JSON.stringify(fields);\n\t} else {\n\t\treturn JSON.stringify({title: title});\n\t}\n};\n\nexports.getTiddlersAsJson = function(filter,spaces) {\n\tvar tiddlers = this.filterTiddlers(filter),\n\t\tspaces = (spaces === undefined) ? $tw.config.preferences.jsonSpaces : spaces,\n\t\tdata = [];\n\tfor(var t=0;t<tiddlers.length; t++) {\n\t\tvar tiddler = this.getTiddler(tiddlers[t]);\n\t\tif(tiddler) {\n\t\t\tvar fields = new Object();\n\t\t\tfor(var field in tiddler.fields) {\n\t\t\t\tfields[field] = tiddler.getFieldString(field);\n\t\t\t}\n\t\t\tdata.push(fields);\n\t\t}\n\t}\n\treturn JSON.stringify(data,null,spaces);\n};\n\n/*\nGet the content of a tiddler as a JavaScript object. How this is done depends on the type of the tiddler:\n\napplication/json: the tiddler JSON is parsed into an object\napplication/x-tiddler-dictionary: the tiddler is parsed as sequence of name:value pairs\n\nOther types currently just return null.\n\ntitleOrTiddler: string tiddler title or a tiddler object\ndefaultData: default data to be returned if the tiddler is missing or doesn't contain data\n\nNote that the same value is returned for repeated calls for the same tiddler data. The value is frozen to prevent modification; otherwise modifications would be visible to all callers\n*/\nexports.getTiddlerDataCached = function(titleOrTiddler,defaultData) {\n\tvar self = this,\n\t\ttiddler = titleOrTiddler;\n\tif(!(tiddler instanceof $tw.Tiddler)) {\n\t\ttiddler = this.getTiddler(tiddler);\t\n\t}\n\tif(tiddler) {\n\t\treturn this.getCacheForTiddler(tiddler.fields.title,\"data\",function() {\n\t\t\t// Return the frozen value\n\t\t\tvar value = self.getTiddlerData(tiddler.fields.title,undefined);\n\t\t\t$tw.utils.deepFreeze(value);\n\t\t\treturn value;\n\t\t}) || defaultData;\n\t} else {\n\t\treturn defaultData;\n\t}\n};\n\n/*\nAlternative, uncached version of getTiddlerDataCached(). The return value can be mutated freely and reused\n*/\nexports.getTiddlerData = function(titleOrTiddler,defaultData) {\n\tvar tiddler = titleOrTiddler,\n\t\tdata;\n\tif(!(tiddler instanceof $tw.Tiddler)) {\n\t\ttiddler = this.getTiddler(tiddler);\t\n\t}\n\tif(tiddler && tiddler.fields.text) {\n\t\tswitch(tiddler.fields.type) {\n\t\t\tcase \"application/json\":\n\t\t\t\t// JSON tiddler\n\t\t\t\ttry {\n\t\t\t\t\tdata = JSON.parse(tiddler.fields.text);\n\t\t\t\t} catch(ex) {\n\t\t\t\t\treturn defaultData;\n\t\t\t\t}\n\t\t\t\treturn data;\n\t\t\tcase \"application/x-tiddler-dictionary\":\n\t\t\t\treturn $tw.utils.parseFields(tiddler.fields.text);\n\t\t}\n\t}\n\treturn defaultData;\n};\n\n/*\nExtract an indexed field from within a data tiddler\n*/\nexports.extractTiddlerDataItem = function(titleOrTiddler,index,defaultText) {\n\tvar data = this.getTiddlerDataCached(titleOrTiddler,Object.create(null)),\n\t\ttext;\n\tif(data && $tw.utils.hop(data,index)) {\n\t\ttext = data[index];\n\t}\n\tif(typeof text === \"string\" || typeof text === \"number\") {\n\t\treturn text.toString();\n\t} else {\n\t\treturn defaultText;\n\t}\n};\n\n/*\nSet a tiddlers content to a JavaScript object. Currently this is done by setting the tiddler's type to \"application/json\" and setting the text to the JSON text of the data.\ntitle: title of tiddler\ndata: object that can be serialised to JSON\nfields: optional hashmap of additional tiddler fields to be set\n*/\nexports.setTiddlerData = function(title,data,fields) {\n\tvar existingTiddler = this.getTiddler(title),\n\t\tnewFields = {\n\t\t\ttitle: title\n\t};\n\tif(existingTiddler && existingTiddler.fields.type === \"application/x-tiddler-dictionary\") {\n\t\tnewFields.text = $tw.utils.makeTiddlerDictionary(data);\n\t} else {\n\t\tnewFields.type = \"application/json\";\n\t\tnewFields.text = JSON.stringify(data,null,$tw.config.preferences.jsonSpaces);\n\t}\n\tthis.addTiddler(new $tw.Tiddler(this.getCreationFields(),existingTiddler,fields,newFields,this.getModificationFields()));\n};\n\n/*\nReturn the content of a tiddler as an array containing each line\n*/\nexports.getTiddlerList = function(title,field,index) {\n\tif(index) {\n\t\treturn $tw.utils.parseStringArray(this.extractTiddlerDataItem(title,index,\"\"));\n\t}\n\tfield = field || \"list\";\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\n\t\treturn ($tw.utils.parseStringArray(tiddler.fields[field]) || []).slice(0);\n\t}\n\treturn [];\n};\n\n// Return a named global cache object. Global cache objects are cleared whenever a tiddler change occurs\nexports.getGlobalCache = function(cacheName,initializer) {\n\tthis.globalCache = this.globalCache || Object.create(null);\n\tif($tw.utils.hop(this.globalCache,cacheName)) {\n\t\treturn this.globalCache[cacheName];\n\t} else {\n\t\tthis.globalCache[cacheName] = initializer();\n\t\treturn this.globalCache[cacheName];\n\t}\n};\n\nexports.clearGlobalCache = function() {\n\tthis.globalCache = Object.create(null);\n};\n\n// Return the named cache object for a tiddler. If the cache doesn't exist then the initializer function is invoked to create it\nexports.getCacheForTiddler = function(title,cacheName,initializer) {\n\tthis.caches = this.caches || Object.create(null);\n\tvar caches = this.caches[title];\n\tif(caches && caches[cacheName]) {\n\t\treturn caches[cacheName];\n\t} else {\n\t\tif(!caches) {\n\t\t\tcaches = Object.create(null);\n\t\t\tthis.caches[title] = caches;\n\t\t}\n\t\tcaches[cacheName] = initializer();\n\t\treturn caches[cacheName];\n\t}\n};\n\n// Clear all caches associated with a particular tiddler, or, if the title is null, clear all the caches for all the tiddlers\nexports.clearCache = function(title) {\n\tif(title) {\n\t\tthis.caches = this.caches || Object.create(null);\n\t\tif($tw.utils.hop(this.caches,title)) {\n\t\t\tdelete this.caches[title];\n\t\t}\n\t} else {\n\t\tthis.caches = Object.create(null);\n\t}\n};\n\nexports.initParsers = function(moduleType) {\n\t// Install the parser modules\n\t$tw.Wiki.parsers = {};\n\tvar self = this;\n\t$tw.modules.forEachModuleOfType(\"parser\",function(title,module) {\n\t\tfor(var f in module) {\n\t\t\tif($tw.utils.hop(module,f)) {\n\t\t\t\t$tw.Wiki.parsers[f] = module[f]; // Store the parser class\n\t\t\t}\n\t\t}\n\t});\n\t// Use the generic binary parser for any binary types not registered so far\n\tif($tw.Wiki.parsers[\"application/octet-stream\"]) {\n\t\tObject.keys($tw.config.contentTypeInfo).forEach(function(type) {\n\t\t\tif(!$tw.utils.hop($tw.Wiki.parsers,type) && $tw.config.contentTypeInfo[type].encoding === \"base64\") {\n\t\t\t\t$tw.Wiki.parsers[type] = $tw.Wiki.parsers[\"application/octet-stream\"];\n\t\t\t}\n\t\t});\t\t\n\t}\n};\n\n/*\nParse a block of text of a specified MIME type\n\ttype: content type of text to be parsed\n\ttext: text\n\toptions: see below\nOptions include:\n\tparseAsInline: if true, the text of the tiddler will be parsed as an inline run\n\t_canonical_uri: optional string of the canonical URI of this content\n*/\nexports.parseText = function(type,text,options) {\n\ttext = text || \"\";\n\toptions = options || {};\n\t// Select a parser\n\tvar Parser = $tw.Wiki.parsers[type];\n\tif(!Parser && $tw.utils.getFileExtensionInfo(type)) {\n\t\tParser = $tw.Wiki.parsers[$tw.utils.getFileExtensionInfo(type).type];\n\t}\n\tif(!Parser) {\n\t\tParser = $tw.Wiki.parsers[options.defaultType || \"text/vnd.tiddlywiki\"];\n\t}\n\tif(!Parser) {\n\t\treturn null;\n\t}\n\t// Return the parser instance\n\treturn new Parser(type,text,{\n\t\tparseAsInline: options.parseAsInline,\n\t\twiki: this,\n\t\t_canonical_uri: options._canonical_uri\n\t});\n};\n\n/*\nParse a tiddler according to its MIME type\n*/\nexports.parseTiddler = function(title,options) {\n\toptions = $tw.utils.extend({},options);\n\tvar cacheType = options.parseAsInline ? \"inlineParseTree\" : \"blockParseTree\",\n\t\ttiddler = this.getTiddler(title),\n\t\tself = this;\n\treturn tiddler ? this.getCacheForTiddler(title,cacheType,function() {\n\t\t\tif(tiddler.hasField(\"_canonical_uri\")) {\n\t\t\t\toptions._canonical_uri = tiddler.fields._canonical_uri;\n\t\t\t}\n\t\t\treturn self.parseText(tiddler.fields.type,tiddler.fields.text,options);\n\t\t}) : null;\n};\n\nexports.parseTextReference = function(title,field,index,options) {\n\tvar tiddler,text;\n\tif(options.subTiddler) {\n\t\ttiddler = this.getSubTiddler(title,options.subTiddler);\n\t} else {\n\t\ttiddler = this.getTiddler(title);\n\t\tif(field === \"text\" || (!field && !index)) {\n\t\t\tthis.getTiddlerText(title); // Force the tiddler to be lazily loaded\n\t\t\treturn this.parseTiddler(title,options);\n\t\t}\n\t}\n\tif(field === \"text\" || (!field && !index)) {\n\t\tif(tiddler && tiddler.fields) {\n\t\t\treturn this.parseText(tiddler.fields.type,tiddler.fields.text,options);\t\t\t\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t} else if(field) {\n\t\tif(field === \"title\") {\n\t\t\ttext = title;\n\t\t} else {\n\t\t\tif(!tiddler || !tiddler.hasField(field)) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\ttext = tiddler.fields[field];\n\t\t}\n\t\treturn this.parseText(\"text/vnd.tiddlywiki\",text.toString(),options);\n\t} else if(index) {\n\t\tthis.getTiddlerText(title); // Force the tiddler to be lazily loaded\n\t\ttext = this.extractTiddlerDataItem(tiddler,index,undefined);\n\t\tif(text === undefined) {\n\t\t\treturn null;\n\t\t}\n\t\treturn this.parseText(\"text/vnd.tiddlywiki\",text,options);\n\t}\n};\n\n/*\nMake a widget tree for a parse tree\nparser: parser object\noptions: see below\nOptions include:\ndocument: optional document to use\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.makeWidget = function(parser,options) {\n\toptions = options || {};\n\tvar widgetNode = {\n\t\t\ttype: \"widget\",\n\t\t\tchildren: []\n\t\t},\n\t\tcurrWidgetNode = widgetNode;\n\t// Create set variable widgets for each variable\n\t$tw.utils.each(options.variables,function(value,name) {\n\t\tvar setVariableWidget = {\n\t\t\ttype: \"set\",\n\t\t\tattributes: {\n\t\t\t\tname: {type: \"string\", value: name},\n\t\t\t\tvalue: {type: \"string\", value: value}\n\t\t\t},\n\t\t\tchildren: []\n\t\t};\n\t\tcurrWidgetNode.children = [setVariableWidget];\n\t\tcurrWidgetNode = setVariableWidget;\n\t});\n\t// Add in the supplied parse tree nodes\n\tcurrWidgetNode.children = parser ? parser.tree : [];\n\t// Create the widget\n\treturn new widget.widget(widgetNode,{\n\t\twiki: this,\n\t\tdocument: options.document || $tw.fakeDocument,\n\t\tparentWidget: options.parentWidget\n\t});\n};\n\n/*\nMake a widget tree for transclusion\ntitle: target tiddler title\noptions: as for wiki.makeWidget() plus:\noptions.field: optional field to transclude (defaults to \"text\")\noptions.mode: transclusion mode \"inline\" or \"block\"\noptions.children: optional array of children for the transclude widget\noptions.importVariables: optional importvariables filter string for macros to be included\noptions.importPageMacros: optional boolean; if true, equivalent to passing \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\" to options.importVariables\n*/\nexports.makeTranscludeWidget = function(title,options) {\n\toptions = options || {};\n\tvar parseTreeDiv = {tree: [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"div\",\n\t\t\tchildren: []}]},\n\t\tparseTreeImportVariables = {\n\t\t\ttype: \"importvariables\",\n\t\t\tattributes: {\n\t\t\t\tfilter: {\n\t\t\t\t\tname: \"filter\",\n\t\t\t\t\ttype: \"string\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tisBlock: false,\n\t\t\tchildren: []},\n\t\tparseTreeTransclude = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {\n\t\t\t\t\tname: \"tiddler\",\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: title}},\n\t\t\tisBlock: !options.parseAsInline};\n\tif(options.importVariables || options.importPageMacros) {\n\t\tif(options.importVariables) {\n\t\t\tparseTreeImportVariables.attributes.filter.value = options.importVariables;\n\t\t} else if(options.importPageMacros) {\n\t\t\tparseTreeImportVariables.attributes.filter.value = \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\";\n\t\t}\n\t\tparseTreeDiv.tree[0].children.push(parseTreeImportVariables);\n\t\tparseTreeImportVariables.children.push(parseTreeTransclude);\n\t} else {\n\t\tparseTreeDiv.tree[0].children.push(parseTreeTransclude);\n\t}\n\tif(options.field) {\n\t\tparseTreeTransclude.attributes.field = {type: \"string\", value: options.field};\n\t}\n\tif(options.mode) {\n\t\tparseTreeTransclude.attributes.mode = {type: \"string\", value: options.mode};\n\t}\n\tif(options.children) {\n\t\tparseTreeTransclude.children = options.children;\n\t}\n\treturn $tw.wiki.makeWidget(parseTreeDiv,options);\n};\n\n/*\nParse text in a specified format and render it into another format\n\toutputType: content type for the output\n\ttextType: content type of the input text\n\ttext: input text\n\toptions: see below\nOptions include:\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.renderText = function(outputType,textType,text,options) {\n\toptions = options || {};\n\tvar parser = this.parseText(textType,text,options),\n\t\twidgetNode = this.makeWidget(parser,options);\n\tvar container = $tw.fakeDocument.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn outputType === \"text/html\" ? container.innerHTML : container.textContent;\n};\n\n/*\nParse text from a tiddler and render it into another format\n\toutputType: content type for the output\n\ttitle: title of the tiddler to be rendered\n\toptions: see below\nOptions include:\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.renderTiddler = function(outputType,title,options) {\n\toptions = options || {};\n\tvar parser = this.parseTiddler(title,options),\n\t\twidgetNode = this.makeWidget(parser,options);\n\tvar container = $tw.fakeDocument.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn outputType === \"text/html\" ? container.innerHTML : (outputType === \"text/plain-formatted\" ? container.formattedTextContent : container.textContent);\n};\n\n/*\nReturn an array of tiddler titles that match a search string\n\ttext: The text string to search for\n\toptions: see below\nOptions available:\n\tsource: an iterator function for the source tiddlers, called source(iterator), where iterator is called as iterator(tiddler,title)\n\texclude: An array of tiddler titles to exclude from the search\n\tinvert: If true returns tiddlers that do not contain the specified string\n\tcaseSensitive: If true forces a case sensitive search\n\tfield: If specified, restricts the search to the specified field, or an array of field names\n\tanchored: If true, forces all but regexp searches to be anchored to the start of text\n\texcludeField: If true, the field options are inverted to specify the fields that are not to be searched\n\tThe search mode is determined by the first of these boolean flags to be true\n\t\tliteral: searches for literal string\n\t\twhitespace: same as literal except runs of whitespace are treated as a single space\n\t\tregexp: treats the search term as a regular expression\n\t\twords: (default) treats search string as a list of tokens, and matches if all tokens are found, regardless of adjacency or ordering\n*/\nexports.search = function(text,options) {\n\toptions = options || {};\n\tvar self = this,\n\t\tt,\n\t\tinvert = !!options.invert;\n\t// Convert the search string into a regexp for each term\n\tvar terms, searchTermsRegExps,\n\t\tflags = options.caseSensitive ? \"\" : \"i\",\n\t\tanchor = options.anchored ? \"^\" : \"\";\n\tif(options.literal) {\n\t\tif(text.length === 0) {\n\t\t\tsearchTermsRegExps = null;\n\t\t} else {\n\t\t\tsearchTermsRegExps = [new RegExp(\"(\" + anchor + $tw.utils.escapeRegExp(text) + \")\",flags)];\n\t\t}\n\t} else if(options.whitespace) {\n\t\tterms = [];\n\t\t$tw.utils.each(text.split(/\\s+/g),function(term) {\n\t\t\tif(term) {\n\t\t\t\tterms.push($tw.utils.escapeRegExp(term));\n\t\t\t}\n\t\t});\n\t\tsearchTermsRegExps = [new RegExp(\"(\" + anchor + terms.join(\"\\\\s+\") + \")\",flags)];\n\t} else if(options.regexp) {\n\t\ttry {\n\t\t\tsearchTermsRegExps = [new RegExp(\"(\" + text + \")\",flags)];\t\t\t\n\t\t} catch(e) {\n\t\t\tsearchTermsRegExps = null;\n\t\t\tconsole.log(\"Regexp error parsing /(\" + text + \")/\" + flags + \": \",e);\n\t\t}\n\t} else {\n\t\tterms = text.split(/ +/);\n\t\tif(terms.length === 1 && terms[0] === \"\") {\n\t\t\tsearchTermsRegExps = null;\n\t\t} else {\n\t\t\tsearchTermsRegExps = [];\n\t\t\tfor(t=0; t<terms.length; t++) {\n\t\t\t\tsearchTermsRegExps.push(new RegExp(\"(\" + anchor + $tw.utils.escapeRegExp(terms[t]) + \")\",flags));\n\t\t\t}\n\t\t}\n\t}\n\t// Accumulate the array of fields to be searched or excluded from the search\n\tvar fields = [];\n\tif(options.field) {\n\t\tif($tw.utils.isArray(options.field)) {\n\t\t\t$tw.utils.each(options.field,function(fieldName) {\n\t\t\t\tif(fieldName) {\n\t\t\t\t\tfields.push(fieldName);\t\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tfields.push(options.field);\n\t\t}\n\t}\n\t// Use default fields if none specified and we're not excluding fields (excluding fields with an empty field array is the same as searching all fields)\n\tif(fields.length === 0 && !options.excludeField) {\n\t\tfields.push(\"title\");\n\t\tfields.push(\"tags\");\n\t\tfields.push(\"text\");\n\t}\n\t// Function to check a given tiddler for the search term\n\tvar searchTiddler = function(title) {\n\t\tif(!searchTermsRegExps) {\n\t\t\treturn true;\n\t\t}\n\t\tvar notYetFound = searchTermsRegExps.slice();\n\n\t\tvar tiddler = self.getTiddler(title);\n\t\tif(!tiddler) {\n\t\t\ttiddler = new $tw.Tiddler({title: title, text: \"\", type: \"text/vnd.tiddlywiki\"});\n\t\t}\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type] || $tw.config.contentTypeInfo[\"text/vnd.tiddlywiki\"],\n\t\t\tsearchFields;\n\t\t// Get the list of fields we're searching\n\t\tif(options.excludeField) {\n\t\t\tsearchFields = Object.keys(tiddler.fields);\n\t\t\t$tw.utils.each(fields,function(fieldName) {\n\t\t\t\tvar p = searchFields.indexOf(fieldName);\n\t\t\t\tif(p !== -1) {\n\t\t\t\t\tsearchFields.splice(p,1);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsearchFields = fields;\n\t\t}\n\t\tfor(var fieldIndex=0; notYetFound.length>0 && fieldIndex<searchFields.length; fieldIndex++) {\n\t\t\t// Don't search the text field if the content type is binary\n\t\t\tvar fieldName = searchFields[fieldIndex];\n\t\t\tif(fieldName === \"text\" && contentTypeInfo.encoding !== \"utf8\") {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tvar str = tiddler.fields[fieldName],\n\t\t\t\tt;\n\t\t\tif(str) {\n\t\t\t\tif($tw.utils.isArray(str)) {\n\t\t\t\t\t// If the field value is an array, test each regexp against each field array entry and fail if each regexp doesn't match at least one field array entry\n\t\t\t\t\tfor(var s=0; s<str.length; s++) {\n\t\t\t\t\t\tfor(t=0; t<notYetFound.length;) {\n\t\t\t\t\t\t\tif(notYetFound[t].test(str[s])) {\n\t\t\t\t\t\t\t\tnotYetFound.splice(t, 1);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tt++;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// If the field isn't an array, force it to a string and test each regexp against it and fail if any do not match\n\t\t\t\t\tstr = tiddler.getFieldString(fieldName);\n\t\t\t\t\tfor(t=0; t<notYetFound.length;) {\n\t\t\t\t\t\tif(notYetFound[t].test(str)) {\n\t\t\t\t\t\t\tnotYetFound.splice(t, 1);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tt++;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\treturn notYetFound.length == 0;\n\t};\n\t// Loop through all the tiddlers doing the search\n\tvar results = [],\n\t\tsource = options.source || this.each;\n\tsource(function(tiddler,title) {\n\t\tif(searchTiddler(title) !== options.invert) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\t// Remove any of the results we have to exclude\n\tif(options.exclude) {\n\t\tfor(t=0; t<options.exclude.length; t++) {\n\t\t\tvar p = results.indexOf(options.exclude[t]);\n\t\t\tif(p !== -1) {\n\t\t\t\tresults.splice(p,1);\n\t\t\t}\n\t\t}\n\t}\n\treturn results;\n};\n\n/*\nTrigger a load for a tiddler if it is skinny. Returns the text, or undefined if the tiddler is missing, null if the tiddler is being lazily loaded.\n*/\nexports.getTiddlerText = function(title,defaultText) {\n\tvar tiddler = this.getTiddler(title);\n\t// Return undefined if the tiddler isn't found\n\tif(!tiddler) {\n\t\treturn defaultText;\n\t}\n\tif(!tiddler.hasField(\"_is_skinny\")) {\n\t\t// Just return the text if we've got it\n\t\treturn tiddler.fields.text || \"\";\n\t} else {\n\t\t// Tell any listeners about the need to lazily load this tiddler\n\t\tthis.dispatchEvent(\"lazyLoad\",title);\n\t\t// Indicate that the text is being loaded\n\t\treturn null;\n\t}\n};\n\n/*\nCheck whether the text of a tiddler matches a given value. By default, the comparison is case insensitive, and any spaces at either end of the tiddler text is trimmed\n*/\nexports.checkTiddlerText = function(title,targetText,options) {\n\toptions = options || {};\n\tvar text = this.getTiddlerText(title,\"\");\n\tif(!options.noTrim) {\n\t\ttext = text.trim();\n\t}\n\tif(!options.caseSensitive) {\n\t\ttext = text.toLowerCase();\n\t\ttargetText = targetText.toLowerCase();\n\t}\n\treturn text === targetText;\n}\n\n/*\nRead an array of browser File objects, invoking callback(tiddlerFieldsArray) once they're all read\n*/\nexports.readFiles = function(files,options) {\n\tvar callback;\n\tif(typeof options === \"function\") {\n\t\tcallback = options;\n\t\toptions = {};\n\t} else {\n\t\tcallback = options.callback;\n\t}\n\tvar result = [],\n\t\toutstanding = files.length,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tresult.push.apply(result,tiddlerFieldsArray);\n\t\t\tif(--outstanding === 0) {\n\t\t\t\tcallback(result);\n\t\t\t}\n\t\t};\n\tfor(var f=0; f<files.length; f++) {\n\t\tthis.readFile(files[f],$tw.utils.extend({},options,{callback: readFileCallback}));\n\t}\n\treturn files.length;\n};\n\n/*\nRead a browser File object, invoking callback(tiddlerFieldsArray) with an array of tiddler fields objects\n*/\nexports.readFile = function(file,options) {\n\tvar callback;\n\tif(typeof options === \"function\") {\n\t\tcallback = options;\n\t\toptions = {};\n\t} else {\n\t\tcallback = options.callback;\n\t}\n\t// Get the type, falling back to the filename extension\n\tvar self = this,\n\t\ttype = file.type;\n\tif(type === \"\" || !type) {\n\t\tvar dotPos = file.name.lastIndexOf(\".\");\n\t\tif(dotPos !== -1) {\n\t\t\tvar fileExtensionInfo = $tw.utils.getFileExtensionInfo(file.name.substr(dotPos));\n\t\t\tif(fileExtensionInfo) {\n\t\t\t\ttype = fileExtensionInfo.type;\n\t\t\t}\n\t\t}\n\t}\n\t// Figure out if we're reading a binary file\n\tvar contentTypeInfo = $tw.config.contentTypeInfo[type],\n\t\tisBinary = contentTypeInfo ? contentTypeInfo.encoding === \"base64\" : false;\n\t// Log some debugging information\n\tif($tw.log.IMPORT) {\n\t\tconsole.log(\"Importing file '\" + file.name + \"', type: '\" + type + \"', isBinary: \" + isBinary);\n\t}\n\t// Give the hook a chance to process the drag\n\tif($tw.hooks.invokeHook(\"th-importing-file\",{\n\t\tfile: file,\n\t\ttype: type,\n\t\tisBinary: isBinary,\n\t\tcallback: callback\n\t}) !== true) {\n\t\tthis.readFileContent(file,type,isBinary,options.deserializer,callback);\n\t}\n};\n\n/*\nLower level utility to read the content of a browser File object, invoking callback(tiddlerFieldsArray) with an array of tiddler fields objects\n*/\nexports.readFileContent = function(file,type,isBinary,deserializer,callback) {\n\tvar self = this;\n\t// Create the FileReader\n\tvar reader = new FileReader();\n\t// Onload\n\treader.onload = function(event) {\n\t\tvar text = event.target.result,\n\t\t\ttiddlerFields = {title: file.name || \"Untitled\", type: type};\n\t\tif(isBinary) {\n\t\t\tvar commaPos = text.indexOf(\",\");\n\t\t\tif(commaPos !== -1) {\n\t\t\t\ttext = text.substr(commaPos + 1);\n\t\t\t}\n\t\t}\n\t\t// Check whether this is an encrypted TiddlyWiki file\n\t\tvar encryptedJson = $tw.utils.extractEncryptedStoreArea(text);\n\t\tif(encryptedJson) {\n\t\t\t// If so, attempt to decrypt it with the current password\n\t\t\t$tw.utils.decryptStoreAreaInteractive(encryptedJson,function(tiddlers) {\n\t\t\t\tcallback(tiddlers);\n\t\t\t});\n\t\t} else {\n\t\t\t// Otherwise, just try to deserialise any tiddlers in the file\n\t\t\tcallback(self.deserializeTiddlers(type,text,tiddlerFields,{deserializer: deserializer}));\n\t\t}\n\t};\n\t// Kick off the read\n\tif(isBinary) {\n\t\treader.readAsDataURL(file);\n\t} else {\n\t\treader.readAsText(file);\n\t}\n};\n\n/*\nFind any existing draft of a specified tiddler\n*/\nexports.findDraft = function(targetTitle) {\n\tvar draftTitle = undefined;\n\tthis.forEachTiddler({includeSystem: true},function(title,tiddler) {\n\t\tif(tiddler.fields[\"draft.title\"] && tiddler.fields[\"draft.of\"] === targetTitle) {\n\t\t\tdraftTitle = title;\n\t\t}\n\t});\n\treturn draftTitle;\n}\n\n/*\nCheck whether the specified draft tiddler has been modified.\nIf the original tiddler doesn't exist, create a vanilla tiddler variable,\nto check if additional fields have been added.\n*/\nexports.isDraftModified = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(!tiddler.isDraft()) {\n\t\treturn false;\n\t}\n\tvar ignoredFields = [\"created\", \"modified\", \"title\", \"draft.title\", \"draft.of\"],\n\t\torigTiddler = this.getTiddler(tiddler.fields[\"draft.of\"]) || new $tw.Tiddler({text:\"\", tags:[]}),\n\t\ttitleModified = tiddler.fields[\"draft.title\"] !== tiddler.fields[\"draft.of\"];\n\treturn titleModified || !tiddler.isEqual(origTiddler,ignoredFields);\n};\n\n/*\nAdd a new record to the top of the history stack\ntitle: a title string or an array of title strings\nfromPageRect: page coordinates of the origin of the navigation\nhistoryTitle: title of history tiddler (defaults to $:/HistoryList)\n*/\nexports.addToHistory = function(title,fromPageRect,historyTitle) {\n\tvar story = new $tw.Story({wiki: this, historyTitle: historyTitle});\n\tstory.addToHistory(title,fromPageRect);\t\t\n};\n\n/*\nAdd a new tiddler to the story river\ntitle: a title string or an array of title strings\nfromTitle: the title of the tiddler from which the navigation originated\nstoryTitle: title of story tiddler (defaults to $:/StoryList)\noptions: see story.js\n*/\nexports.addToStory = function(title,fromTitle,storyTitle,options) {\n\tvar story = new $tw.Story({wiki: this, storyTitle: storyTitle});\n\tstory.addToStory(title,fromTitle,options);\t\t\n};\n\n/*\nGenerate a title for the draft of a given tiddler\n*/\nexports.generateDraftTitle = function(title) {\n\tvar c = 0,\n\t\tdraftTitle,\n\t\tusername = this.getTiddlerText(\"$:/status/UserName\"),\n\t\tattribution = username ? \" by \" + username : \"\";\n\tdo {\n\t\tdraftTitle = \"Draft \" + (c ? (c + 1) + \" \" : \"\") + \"of '\" + title + \"'\" + attribution;\n\t\tc++;\n\t} while(this.tiddlerExists(draftTitle));\n\treturn draftTitle;\n};\n\n/*\nInvoke the available upgrader modules\ntitles: array of tiddler titles to be processed\ntiddlers: hashmap by title of tiddler fields of pending import tiddlers. These can be modified by the upgraders. An entry with no fields indicates a tiddler that was pending import has been suppressed. When entries are added to the pending import the tiddlers hashmap may have entries that are not present in the titles array\nReturns a hashmap of messages keyed by tiddler title.\n*/\nexports.invokeUpgraders = function(titles,tiddlers) {\n\t// Collect up the available upgrader modules\n\tvar self = this;\n\tif(!this.upgraderModules) {\n\t\tthis.upgraderModules = [];\n\t\t$tw.modules.forEachModuleOfType(\"upgrader\",function(title,module) {\n\t\t\tif(module.upgrade) {\n\t\t\t\tself.upgraderModules.push(module);\n\t\t\t}\n\t\t});\n\t}\n\t// Invoke each upgrader in turn\n\tvar messages = {};\n\tfor(var t=0; t<this.upgraderModules.length; t++) {\n\t\tvar upgrader = this.upgraderModules[t],\n\t\t\tupgraderMessages = upgrader.upgrade(this,titles,tiddlers);\n\t\t$tw.utils.extend(messages,upgraderMessages);\n\t}\n\treturn messages;\n};\n\n// Determine whether a plugin by title is dynamically loadable\nexports.doesPluginRequireReload = function(title) {\n\treturn this.doesPluginInfoRequireReload(this.getPluginInfo(title) || this.getTiddlerDataCached(title));\n};\n\n// Determine whether a plugin info structure is dynamically loadable\nexports.doesPluginInfoRequireReload = function(pluginInfo) {\n\tif(pluginInfo) {\n\t\tvar foundModule = false;\n\t\t$tw.utils.each(pluginInfo.tiddlers,function(tiddler) {\n\t\t\tif(tiddler.type === \"application/javascript\" && $tw.utils.hop(tiddler,\"module-type\")) {\n\t\t\t\tfoundModule = true;\n\t\t\t}\n\t\t});\n\t\treturn foundModule;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n})();\n\n",
"type": "application/javascript",
"module-type": "wikimethod"
},
"$:/palettes/Blanca": {
"title": "$:/palettes/Blanca",
"name": "Blanca",
"description": "A clean white palette to let you focus",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #66cccc\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #ffffff\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #7897f3\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ccc\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #ffffff\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #7897f3\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #eeeeee\ntab-border-selected: #cccccc\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ffeedd\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: #eee\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #ff9900\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
},
"$:/palettes/Blue": {
"title": "$:/palettes/Blue",
"name": "Blue",
"description": "A blue theme",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #fff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333353\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #ddddff\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ffffff\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #5959c0\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: #ccccdd\ntab-border-selected: #ccccdd\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #eeeeff\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #666666\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #ffffff\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #ffffff\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #5959c0\ntoolbar-new-button: #5eb95e\ntoolbar-options-button: rgb(128, 88, 165)\ntoolbar-save-button: #0e90d2\ntoolbar-info-button: #0e90d2\ntoolbar-edit-button: rgb(243, 123, 29)\ntoolbar-close-button: #dd514c\ntoolbar-delete-button: #dd514c\ntoolbar-cancel-button: rgb(243, 123, 29)\ntoolbar-done-button: #5eb95e\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
},
"$:/palettes/Muted": {
"title": "$:/palettes/Muted",
"name": "Muted",
"description": "Bright tiddlers on a muted background",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #bbb\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #6f6f70\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #29a6ee\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #c2c1c2\nsidebar-foreground-shadow: rgba(255,255,255,0)\nsidebar-foreground: #d3d2d4\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #6f6f70\nsidebar-tab-background: #666667\nsidebar-tab-border-selected: #999\nsidebar-tab-border: #515151\nsidebar-tab-divider: #999\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: #999\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #d1d0d2\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #d5ad34\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
},
"$:/palettes/ContrastLight": {
"title": "$:/palettes/ContrastLight",
"name": "Contrast (Light)",
"description": "High contrast and unambiguous (light version)",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #f00\nalert-border: <<colour background>>\nalert-highlight: <<colour foreground>>\nalert-muted-foreground: #800\nbackground: #fff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: <<colour background>>\nbutton-foreground: <<colour foreground>>\nbutton-border: <<colour foreground>>\ncode-background: <<colour background>>\ncode-border: <<colour foreground>>\ncode-foreground: <<colour foreground>>\ndirty-indicator: #f00\ndownload-background: #080\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: <<colour foreground>>\ndropdown-tab-background: <<colour foreground>>\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #00a\nexternal-link-foreground: #00e\nforeground: #000\nmessage-background: <<colour foreground>>\nmessage-border: <<colour background>>\nmessage-foreground: <<colour background>>\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour foreground>>\nmodal-header-border: <<colour foreground>>\nmuted-foreground: <<colour foreground>>\nnotification-background: <<colour background>>\nnotification-border: <<colour foreground>>\npage-background: <<colour background>>\npre-background: <<colour background>>\npre-border: <<colour foreground>>\nprimary: #00f\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: <<colour background>>\nsidebar-controls-foreground: <<colour foreground>>\nsidebar-foreground-shadow: rgba(0,0,0, 0)\nsidebar-foreground: <<colour foreground>>\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: <<colour foreground>>\nsidebar-tab-background-selected: <<colour background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: <<colour foreground>>\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: <<colour foreground>>\nsidebar-tiddler-link-foreground: <<colour primary>>\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: <<colour foreground>>\ntab-border-selected: <<colour foreground>>\ntab-border: <<colour foreground>>\ntab-divider: <<colour foreground>>\ntab-foreground-selected: <<colour foreground>>\ntab-foreground: <<colour background>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #000\ntag-foreground: #fff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour foreground>>\ntiddler-controls-foreground-hover: #ddd\ntiddler-controls-foreground-selected: #fdd\ntiddler-controls-foreground: <<colour foreground>>\ntiddler-editor-background: <<colour background>>\ntiddler-editor-border-image: <<colour foreground>>\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: <<colour background>>\ntiddler-editor-fields-odd: <<colour background>>\ntiddler-info-background: <<colour background>>\ntiddler-info-border: <<colour foreground>>\ntiddler-info-tab-background: <<colour background>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour foreground>>\ntiddler-title-foreground: <<colour foreground>>\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour foreground>>\nvery-muted-foreground: #888888\n"
},
"$:/palettes/ContrastDark": {
"title": "$:/palettes/ContrastDark",
"name": "Contrast (Dark)",
"description": "High contrast and unambiguous (dark version)",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #f00\nalert-border: <<colour background>>\nalert-highlight: <<colour foreground>>\nalert-muted-foreground: #800\nbackground: #000\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: <<colour background>>\nbutton-foreground: <<colour foreground>>\nbutton-border: <<colour foreground>>\ncode-background: <<colour background>>\ncode-border: <<colour foreground>>\ncode-foreground: <<colour foreground>>\ndirty-indicator: #f00\ndownload-background: #080\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: <<colour foreground>>\ndropdown-tab-background: <<colour foreground>>\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #00a\nexternal-link-foreground: #00e\nforeground: #fff\nmessage-background: <<colour foreground>>\nmessage-border: <<colour background>>\nmessage-foreground: <<colour background>>\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour foreground>>\nmodal-header-border: <<colour foreground>>\nmuted-foreground: <<colour foreground>>\nnotification-background: <<colour background>>\nnotification-border: <<colour foreground>>\npage-background: <<colour background>>\npre-background: <<colour background>>\npre-border: <<colour foreground>>\nprimary: #00f\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: <<colour background>>\nsidebar-controls-foreground: <<colour foreground>>\nsidebar-foreground-shadow: rgba(0,0,0, 0)\nsidebar-foreground: <<colour foreground>>\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: <<colour foreground>>\nsidebar-tab-background-selected: <<colour background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: <<colour foreground>>\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: <<colour foreground>>\nsidebar-tiddler-link-foreground: <<colour primary>>\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: <<colour foreground>>\ntab-border-selected: <<colour foreground>>\ntab-border: <<colour foreground>>\ntab-divider: <<colour foreground>>\ntab-foreground-selected: <<colour foreground>>\ntab-foreground: <<colour background>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #fff\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour foreground>>\ntiddler-controls-foreground-hover: #ddd\ntiddler-controls-foreground-selected: #fdd\ntiddler-controls-foreground: <<colour foreground>>\ntiddler-editor-background: <<colour background>>\ntiddler-editor-border-image: <<colour foreground>>\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: <<colour background>>\ntiddler-editor-fields-odd: <<colour background>>\ntiddler-info-background: <<colour background>>\ntiddler-info-border: <<colour foreground>>\ntiddler-info-tab-background: <<colour background>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour foreground>>\ntiddler-title-foreground: <<colour foreground>>\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour foreground>>\nvery-muted-foreground: #888888\n"
},
"$:/palettes/DarkPhotos": {
"title": "$:/palettes/DarkPhotos",
"created": "20150402111612188",
"description": "Good with dark photo backgrounds",
"modified": "20150402112344080",
"name": "DarkPhotos",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: \nbutton-foreground: \nbutton-border: \ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #ddd\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #336438\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #ccf\nsidebar-controls-foreground: #fff\nsidebar-foreground-shadow: rgba(0,0,0, 0.5)\nsidebar-foreground: #fff\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #eee\nsidebar-tab-background-selected: rgba(255,255,255, 0.8)\nsidebar-tab-background: rgba(255,255,255, 0.4)\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: rgba(255,255,255, 0.2)\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #aaf\nsidebar-tiddler-link-foreground: #ddf\nsite-title-foreground: #fff\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ec6\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
},
"$:/palettes/GruvboxDark": {
"title": "$:/palettes/GruvboxDark",
"name": "Gruvbox Dark",
"description": "Retro groove color scheme",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"license": "https://github.com/morhetz/gruvbox",
"text": "alert-background: #cc241d\nalert-border: #cc241d\nalert-highlight: #d79921\nalert-muted-foreground: #504945\nbackground: #3c3836\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: #504945\nbutton-foreground: #fbf1c7\nbutton-border: transparent\ncode-background: #504945\ncode-border: #504945\ncode-foreground: #fb4934\ndiff-delete-background: #fb4934\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #b8bb26\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #fb4934\ndownload-background: #b8bb26\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #665c54\ndropdown-border: <<colour background>>\ndropdown-tab-background-selected: #ebdbb2\ndropdown-tab-background: #665c54\ndropzone-background: #98971a\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #d3869b\nexternal-link-foreground: #8ec07c\nforeground: #fbf1c7\nmenubar-background: #504945\nmenubar-foreground: <<colour foreground>>\nmessage-background: #83a598\nmessage-border: #83a598\nmessage-foreground: #3c3836\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #504945\nmodal-footer-background: #3c3836\nmodal-footer-border: #3c3836\nmodal-header-border: #3c3836\nmuted-foreground: #d5c4a1\nnotification-background: <<colour primary>>\nnotification-border: <<colour primary>>\npage-background: #282828\npre-background: #504945\npre-border: #504945\nprimary: #d79921\nselect-tag-background: #665c54\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #7c6f64\nsidebar-controls-foreground: #504945\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #fbf1c7\nsidebar-muted-foreground-hover: #7c6f64\nsidebar-muted-foreground: #504945\nsidebar-tab-background-selected: #bdae93\nsidebar-tab-background: #3c3836\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: #bdae93\nsidebar-tab-divider: <<colour page-background>>\nsidebar-tab-foreground-selected: #282828\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #458588\nsidebar-tiddler-link-foreground: #98971a\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #B48EAD\ntab-background-selected: #ebdbb2\ntab-background: #665c54\ntab-border-selected: #665c54\ntab-border: #665c54\ntab-divider: #bdae93\ntab-foreground-selected: #282828\ntab-foreground: #ebdbb2\ntable-border: #7c6f64\ntable-footer-background: #665c54\ntable-header-background: #504945\ntag-background: #d3869b\ntag-foreground: #282828\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #7c6f64\ntiddler-controls-foreground-selected: #7c6f64\ntiddler-controls-foreground: #665c54\ntiddler-editor-background: #282828\ntiddler-editor-border-image: #282828\ntiddler-editor-border: #282828\ntiddler-editor-fields-even: #504945\ntiddler-editor-fields-odd: #7c6f64\ntiddler-info-background: #32302f\ntiddler-info-border: #ebdbb2\ntiddler-info-tab-background: #ebdbb2\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #7c6f64\ntiddler-title-foreground: #a89984\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #504945\nvery-muted-foreground: #bdae93\nwikilist-background: <<colour page-background>>\nwikilist-button-background: <<colour button-background>>\nwikilist-button-foreground: <<colour button-foreground>>\nwikilist-item: <<colour background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-toolbar-foreground: <<colour foreground>>\nwikilist-title: <<colour foreground>>\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: <<colour muted-foreground>>\nwikilist-button-open-hover: <<colour primary>>\nwikilist-button-open: <<colour dropzone-background>>\nwikilist-button-remove: <<colour dirty-indicator>>\nwikilist-button-remove-hover: <<colour alert-background>>\nwikilist-droplink-dragover: <<colour dropzone-background>>\nwikilist-button-reveal: <<colour sidebar-tiddler-link-foreground-hover>>\nwikilist-button-reveal-hover: <<colour message-background>>"
},
"$:/palettes/Nord": {
"title": "$:/palettes/Nord",
"name": "Nord",
"description": "An arctic, north-bluish color palette.",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"license": "MIT, arcticicestudio, https://github.com/arcticicestudio/nord/blob/develop/LICENSE.md",
"text": "alert-background: #D08770\nalert-border: #D08770\nalert-highlight: #B48EAD\nalert-muted-foreground: #4C566A\nbackground: #3b4252\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: #4C566A\nbutton-foreground: #D8DEE9\nbutton-border: transparent\ncode-background: #2E3440\ncode-border: #2E3440\ncode-foreground: #BF616A\ndiff-delete-background: #BF616A\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #A3BE8C\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #BF616A\ndownload-background: #A3BE8C\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour background>>\ndropdown-tab-background-selected: #ECEFF4\ndropdown-tab-background: #4C566A\ndropzone-background: #A3BE8C\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #5E81AC\nexternal-link-foreground: #8FBCBB\nforeground: #d8dee9\nmenubar-background: #2E3440\nmenubar-foreground: #d8dee9\nmessage-background: #2E3440\nmessage-border: #2E3440\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #3b4252\nmodal-footer-background: #3b4252\nmodal-footer-border: #3b4252\nmodal-header-border: #3b4252\nmuted-foreground: #4C566A\nnotification-background: <<colour primary>>\nnotification-border: #EBCB8B\npage-background: #2e3440\npre-background: #2E3440\npre-border: #2E3440\nprimary: #5E81AC\nselect-tag-background: #3b4252\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #D8DEE9\nsidebar-controls-foreground: #4C566A\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #D8DEE9\nsidebar-muted-foreground-hover: #4C566A\nsidebar-muted-foreground: #4C566A\nsidebar-tab-background-selected: #ECEFF4\nsidebar-tab-background: #4C566A\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: #4C566A\nsidebar-tab-divider: <<colour page-background>>\nsidebar-tab-foreground-selected: #4C566A\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #A3BE8C\nsidebar-tiddler-link-foreground: #81A1C1\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #B48EAD\ntab-background-selected: #ECEFF4\ntab-background: #4C566A\ntab-border-selected: #4C566A\ntab-border: #4C566A\ntab-divider: #4C566A\ntab-foreground-selected: #4C566A\ntab-foreground: #D8DEE9\ntable-border: #4C566A\ntable-footer-background: #2e3440\ntable-header-background: #2e3440\ntag-background: #A3BE8C\ntag-foreground: #4C566A\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: \ntiddler-controls-foreground-selected: #EBCB8B\ntiddler-controls-foreground: #4C566A\ntiddler-editor-background: #2e3440\ntiddler-editor-border-image: #2e3440\ntiddler-editor-border: #2e3440\ntiddler-editor-fields-even: #2e3440\ntiddler-editor-fields-odd: #2e3440\ntiddler-info-background: #2e3440\ntiddler-info-border: #2e3440\ntiddler-info-tab-background: #2e3440\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #4C566A\ntiddler-title-foreground: #81A1C1\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #2d3038\nvery-muted-foreground: #2d3038\n"
},
"$:/palettes/Rocker": {
"title": "$:/palettes/Rocker",
"name": "Rocker",
"description": "A dark theme",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #000\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #cc0000\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ffffff\nsidebar-foreground-shadow: rgba(255,255,255, 0.0)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #000\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #ffbb99\nsidebar-tiddler-link-foreground: #cc0000\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ffbb99\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #cc0000\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
},
"$:/palettes/SolarFlare": {
"title": "$:/palettes/SolarFlare",
"name": "Solar Flare",
"description": "Warm, relaxing earth colours",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"text": ": Background Tones\n\nbase03: #002b36\nbase02: #073642\n\n: Content Tones\n\nbase01: #586e75\nbase00: #657b83\nbase0: #839496\nbase1: #93a1a1\n\n: Background Tones\n\nbase2: #eee8d5\nbase3: #fdf6e3\n\n: Accent Colors\n\nyellow: #b58900\norange: #cb4b16\nred: #dc322f\nmagenta: #d33682\nviolet: #6c71c4\nblue: #268bd2\ncyan: #2aa198\ngreen: #859900\n\n: Additional Tones (RA)\n\nbase10: #c0c4bb\nviolet-muted: #7c81b0\nblue-muted: #4e7baa\n\nyellow-hot: #ffcc44\norange-hot: #eb6d20\nred-hot: #ff2222\nblue-hot: #2298ee\ngreen-hot: #98ee22\n\n: Palette\n\n: Do not use colour macro for background and foreground\nbackground: #fdf6e3\n download-foreground: <<colour background>>\n dragger-foreground: <<colour background>>\n dropdown-background: <<colour background>>\n modal-background: <<colour background>>\n sidebar-foreground-shadow: <<colour background>>\n tiddler-background: <<colour background>>\n tiddler-border: <<colour background>>\n tiddler-link-background: <<colour background>>\n tab-background-selected: <<colour background>>\n dropdown-tab-background-selected: <<colour tab-background-selected>>\nforeground: #657b83\n dragger-background: <<colour foreground>>\n tab-foreground: <<colour foreground>>\n tab-foreground-selected: <<colour tab-foreground>>\n sidebar-tab-foreground-selected: <<colour tab-foreground-selected>>\n sidebar-tab-foreground: <<colour tab-foreground>>\n sidebar-button-foreground: <<colour foreground>>\n sidebar-controls-foreground: <<colour foreground>>\n sidebar-foreground: <<colour foreground>>\n: base03\n: base02\n: base01\n alert-muted-foreground: <<colour base01>>\n: base00\n code-foreground: <<colour base00>>\n message-foreground: <<colour base00>>\n tag-foreground: <<colour base00>>\n: base0\n sidebar-tiddler-link-foreground: <<colour base0>>\n: base1\n muted-foreground: <<colour base1>>\n blockquote-bar: <<colour muted-foreground>>\n dropdown-border: <<colour muted-foreground>>\n sidebar-muted-foreground: <<colour muted-foreground>>\n tiddler-title-foreground: <<colour muted-foreground>>\n site-title-foreground: <<colour tiddler-title-foreground>>\n: base2\n modal-footer-background: <<colour base2>>\n page-background: <<colour base2>>\n modal-backdrop: <<colour page-background>>\n notification-background: <<colour page-background>>\n code-background: <<colour page-background>>\n code-border: <<colour code-background>>\n pre-background: <<colour page-background>>\n pre-border: <<colour pre-background>>\n sidebar-tab-background-selected: <<colour page-background>>\n table-header-background: <<colour base2>>\n tag-background: <<colour base2>>\n tiddler-editor-background: <<colour base2>>\n tiddler-info-background: <<colour base2>>\n tiddler-info-tab-background: <<colour base2>>\n tab-background: <<colour base2>>\n dropdown-tab-background: <<colour tab-background>>\n: base3\n alert-background: <<colour base3>>\n message-background: <<colour base3>>\n: yellow\n: orange\n: red\n: magenta\n alert-highlight: <<colour magenta>>\n: violet\n external-link-foreground: <<colour violet>>\n: blue\n: cyan\n: green\n: base10\n tiddler-controls-foreground: <<colour base10>>\n: violet-muted\n external-link-foreground-visited: <<colour violet-muted>>\n: blue-muted\n primary: <<colour blue-muted>>\n download-background: <<colour primary>>\n tiddler-link-foreground: <<colour primary>>\n\nalert-border: #b99e2f\ndirty-indicator: #ff0000\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nmessage-border: #cfd6e6\nmodal-border: #999999\nselect-tag-background:\nselect-tag-foreground:\nsidebar-controls-foreground-hover:\nsidebar-muted-foreground-hover:\nsidebar-tab-background: #ded8c5\nsidebar-tiddler-link-foreground-hover:\nstatic-alert-foreground: #aaaaaa\ntab-border: #cccccc\n modal-footer-border: <<colour tab-border>>\n modal-header-border: <<colour tab-border>>\n notification-border: <<colour tab-border>>\n sidebar-tab-border: <<colour tab-border>>\n tab-border-selected: <<colour tab-border>>\n sidebar-tab-border-selected: <<colour tab-border-selected>>\ntab-divider: #d8d8d8\n sidebar-tab-divider: <<colour tab-divider>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-border: #dddddd\ntiddler-subtitle-foreground: #c0c0c0\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
},
"$:/palettes/SolarizedLight": {
"title": "$:/palettes/SolarizedLight",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"description": "Precision colors for machines and people",
"license": "MIT, Ethan Schoonover, https://github.com/altercation/solarized/blob/master/LICENSE",
"name": "SolarizedLight",
"text": "alert-background: #eee8d5\nalert-border: #073642\nalert-highlight: #cb4b16\nalert-muted-foreground: #586e75\nbackground: #fdf6e3\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: #cb4b16\nbutton-foreground: #fdf6e3\nbutton-border: transparent\ncode-background: #eee8d5\ncode-border: #93a1a1\ncode-foreground: #d33682\ndiff-delete-background: #BF616A\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #859900\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #D08770\ndownload-background: #859900\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour background>>\ndropdown-tab-background-selected: #fdf6e3\ndropdown-tab-background: #93a1a1\ndropzone-background: #859900\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: #d33682\nexternal-link-foreground-visited: #b58900\nexternal-link-foreground: #cb4b16\nforeground: #839496\nmessage-background: #586e75\nmessage-border: #586e75\nmessage-foreground: #eee8d5\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #eee8d5\nmodal-footer-background: #eee8d5\nmodal-footer-border: #eee8d5\nmodal-header-border: #eee8d5\nmuted-foreground: #93a1a1\nnotification-background: #EBCB8B\nnotification-border: #D08770\npage-background: #eee8d5\npre-background: #eee8d5\npre-border: #93a1a1\nprimary: #2aa198\nselect-tag-background: #eee8d5\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: #eee8d5\nsidebar-controls-foreground-hover: #268bd2\nsidebar-controls-foreground: #586e75\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #839496\nsidebar-muted-foreground-hover: #657b83\nsidebar-muted-foreground: #93a1a1\nsidebar-tab-background-selected: #eee8d5\nsidebar-tab-background: #839496\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: #657b83\nsidebar-tab-divider: <<colour page-background>>\nsidebar-tab-foreground-selected: #839496\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #859900\nsidebar-tiddler-link-foreground: #268bd2\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #dc322f\ntab-background-selected: #fdf6e3\ntab-background: #839496\ntab-border-selected: #93a1a1\ntab-border: #93a1a1\ntab-divider: #fdf6e3\ntab-foreground-selected: #839496\ntab-foreground: #eee8d5\ntable-border: #657b83\ntable-footer-background: #657b83\ntable-header-background: #93a1a1\ntag-background: #6c71c4\ntag-foreground: #eee8d5\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #b58900\ntiddler-controls-foreground-selected: #b58900\ntiddler-controls-foreground: #073642\ntiddler-editor-background: #eee8d5\ntiddler-editor-border-image: #eee8d5\ntiddler-editor-border: #eee8d5\ntiddler-editor-fields-even: #eee8d5\ntiddler-editor-fields-odd: #fdf6e3\ntiddler-info-background: #eee8d5\ntiddler-info-border: #eee8d5\ntiddler-info-tab-background: #586e75\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #586e75\ntiddler-title-foreground: #073642\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #839496\nvery-muted-foreground: #93a1a1\n"
},
"$:/palettes/SpartanDay": {
"title": "$:/palettes/SpartanDay",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"description": "Cold, spartan day colors",
"name": "Spartan Day",
"text": "alert-background: <<colour background>>\nalert-border: <<colour very-muted-foreground>>\nalert-highlight: <<colour very-muted-foreground>>\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #FAFAFA\nblockquote-bar: <<colour page-background>>\nbutton-background: transparent\nbutton-foreground: inherit\nbutton-border: <<colour tag-background>>\ncode-background: #ececec\ncode-border: #ececec\ncode-foreground: \ndirty-indicator: #c80000\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #FFFFFF\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: <<colour dropdown-background>>\ndropdown-tab-background: #F5F5F5\ndropzone-background: <<colour tag-background>>\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: \nexternal-link-foreground: \nforeground: rgba(0, 0, 0, 0.87)\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(0, 0, 0, 0.54)\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour very-muted-foreground>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: rgba(0, 0, 0, 0.54)\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #f4f4f4\npre-background: #ececec\npre-border: #ececec\nprimary: #3949ab\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #aeaeae\nsidebar-controls-foreground: #c6c6c6\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(0, 0, 0, 0.54)\nsidebar-muted-foreground-hover: rgba(0, 0, 0, 0.54)\nsidebar-muted-foreground: rgba(0, 0, 0, 0.38)\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: transparent\nsidebar-tab-border-selected: <<colour table-border>>\nsidebar-tab-border: transparent\nsidebar-tab-divider: <<colour table-border>>\nsidebar-tab-foreground-selected: rgba(0, 0, 0, 0.87)\nsidebar-tab-foreground: rgba(0, 0, 0, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(0, 0, 0, 0.87)\nsidebar-tiddler-link-foreground: rgba(0, 0, 0, 0.54)\nsite-title-foreground: rgba(0, 0, 0, 0.87)\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: transparent\ntab-border-selected: <<colour table-border>>\ntab-border: transparent\ntab-divider: <<colour table-border>>\ntab-foreground-selected: rgba(0, 0, 0, 0.87)\ntab-foreground: rgba(0, 0, 0, 0.54)\ntable-border: #d8d8d8\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #ec6\ntag-foreground: <<colour button-foreground>>\ntiddler-background: <<colour background>>\ntiddler-border: #f9f9f9\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: <<colour sidebar-controls-foreground>>\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: #e8e7e7\ntiddler-editor-fields-even: rgba(0, 0, 0, 0.1)\ntiddler-editor-fields-odd: rgba(0, 0, 0, 0.04)\ntiddler-info-background: #F5F5F5\ntiddler-info-border: #F5F5F5\ntiddler-info-tab-background: <<colour tiddler-editor-fields-odd>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #000000\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour very-muted-foreground>>\nvery-muted-foreground: rgba(0, 0, 0, 0.12)\n"
},
"$:/palettes/SpartanNight": {
"title": "$:/palettes/SpartanNight",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"description": "Dark spartan colors",
"name": "Spartan Night",
"text": "alert-background: <<colour background>>\nalert-border: <<colour very-muted-foreground>>\nalert-highlight: <<colour very-muted-foreground>>\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #303030\nblockquote-bar: <<colour page-background>>\nbutton-background: transparent\nbutton-foreground: inherit\nbutton-border: <<colour tag-background>>\ncode-background: <<colour pre-background>>\ncode-border: <<colour pre-border>>\ncode-foreground: rgba(255, 255, 255, 0.54)\ndirty-indicator: #c80000\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #424242\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: <<colour dropdown-background>>\ndropdown-tab-background: #050505\ndropzone-background: <<colour tag-background>>\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: #7c318c\nexternal-link-foreground: #9e3eb3\nforeground: rgba(255, 255, 255, 0.7)\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(255, 255, 255, 0.54)\nmodal-backdrop: <<colour page-background>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour background>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: rgba(255, 255, 255, 0.54)\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #212121\npre-background: #2a2a2a\npre-border: transparent\nprimary: #5656f3\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #494949\nsidebar-controls-foreground: #5d5d5d\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground-hover: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground: rgba(255, 255, 255, 0.38)\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: transparent\nsidebar-tab-border-selected: <<colour table-border>>\nsidebar-tab-border: transparent\nsidebar-tab-divider: <<colour table-border>>\nsidebar-tab-foreground-selected: rgba(255, 255, 255, 0.87)\nsidebar-tab-foreground: rgba(255, 255, 255, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(255, 255, 255, 0.7)\nsidebar-tiddler-link-foreground: rgba(255, 255, 255, 0.54)\nsite-title-foreground: rgba(255, 255, 255, 0.7)\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: transparent\ntab-border-selected: <<colour table-border>>\ntab-border: transparent\ntab-divider: <<colour table-border>>\ntab-foreground-selected: rgba(255, 255, 255, 0.87)\ntab-foreground: rgba(255, 255, 255, 0.54)\ntable-border: #3a3a3a\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #ec6\ntag-foreground: <<colour button-foreground>>\ntiddler-background: <<colour background>>\ntiddler-border: rgb(55,55,55)\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: <<colour sidebar-controls-foreground>>\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: rgba(255, 255, 255, 0.08)\ntiddler-editor-fields-even: rgba(255, 255, 255, 0.1)\ntiddler-editor-fields-odd: rgba(255, 255, 255, 0.04)\ntiddler-info-background: #454545\ntiddler-info-border: #454545\ntiddler-info-tab-background: <<colour tiddler-editor-fields-odd>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #FFFFFF\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour very-muted-foreground>>\nvery-muted-foreground: rgba(255, 255, 255, 0.12)\n"
},
"$:/palettes/Twilight": {
"title": "$:/palettes/Twilight",
"tags": "$:/tags/Palette",
"author": "Thomas Elmiger",
"type": "application/x-tiddler-dictionary",
"name": "Twilight",
"description": "Delightful, soft darkness.",
"text": "alert-background: rgb(255, 255, 102)\nalert-border: rgb(232, 232, 125)\nalert-highlight: rgb(255, 51, 51)\nalert-muted-foreground: rgb(224, 82, 82)\nbackground: rgb(38, 38, 38)\nblockquote-bar: rgba(240, 196, 117, 0.7)\nbutton-background: rgb(63, 63, 63)\nbutton-border: rgb(127, 127, 127)\nbutton-foreground: rgb(179, 179, 179)\ncode-background: rgba(0,0,0,0.03)\ncode-border: rgba(0,0,0,0.08)\ncode-foreground: rgb(255, 94, 94)\ndiff-delete-background: #ffc9c9\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #aaefad\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: rgb(255, 94, 94)\ndownload-background: #19a974\ndownload-foreground: rgb(38, 38, 38)\ndragger-background: rgb(179, 179, 179)\ndragger-foreground: rgb(38, 38, 38)\ndropdown-background: rgb(38, 38, 38)\ndropdown-border: rgb(255, 255, 255)\ndropdown-tab-background: rgba(0,0,0,.1)\ndropdown-tab-background-selected: rgba(255,255,255,1)\ndropzone-background: #9eebcf\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: rgb(179, 179, 255)\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: rgb(153, 153, 255)\nforeground: rgb(179, 179, 179)\nmessage-background: <<colour tag-foreground>>\nmessage-border: #96ccff\nmessage-foreground: <<colour tag-background>>\nmodal-backdrop: rgb(179, 179, 179)\nmodal-background: rgb(38, 38, 38)\nmodal-border: rgba(0,0,0,.5)\nmodal-footer-background: #f4f4f4\nmodal-footer-border: rgba(0,0,0,.1)\nmodal-header-border: rgba(0,0,0,.2)\nmuted-foreground: rgb(255, 255, 255)\nnotification-background: <<colour tag-foreground>>\nnotification-border: <<colour tag-background>>\npage-background: rgb(26, 26, 26)\npre-background: rgb(25, 25, 25)\npre-border: rgba(0,0,0,.2)\nprimary: rgb(255, 201, 102)\nselect-tag-background: \nselect-tag-foreground: \nsidebar-button-foreground: rgb(179, 179, 179)\nsidebar-controls-foreground: rgb(153, 153, 153)\nsidebar-controls-foreground-hover: <<colour tiddler-controls-foreground-hover>>\nsidebar-foreground: rgb(141, 141, 141)\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: rgba(0, 0, 0, 0.5)\nsidebar-muted-foreground-hover: rgb(141, 141, 141)\nsidebar-tab-background: rgba(141, 141, 141, 0.2)\nsidebar-tab-background-selected: rgb(26, 26, 26)\nsidebar-tab-border: rgb(127, 127, 127)\nsidebar-tab-border-selected: rgb(127, 127, 127)\nsidebar-tab-divider: rgb(127, 127, 127)\nsidebar-tab-foreground: rgb(179, 179, 179)\nsidebar-tab-foreground-selected: rgb(179, 179, 179)\nsidebar-tiddler-link-foreground: rgb(179, 179, 179)\nsidebar-tiddler-link-foreground-hover: rgb(115, 115, 115)\nsite-title-foreground: rgb(255, 201, 102)\nstatic-alert-foreground: rgba(0,0,0,.3)\ntab-background: rgba(0,0,0,0.125)\ntab-background-selected: rgb(38, 38, 38)\ntab-border: rgb(255, 201, 102)\ntab-border-selected: rgb(255, 201, 102)\ntab-divider: rgb(255, 201, 102)\ntab-foreground: rgb(179, 179, 179)\ntab-foreground-selected: rgb(179, 179, 179)\ntable-border: rgba(255,255,255,.3)\ntable-footer-background: rgba(0,0,0,.4)\ntable-header-background: rgba(0,0,0,.1)\ntag-background: rgb(255, 201, 102)\ntag-foreground: rgb(25, 25, 25)\ntiddler-background: rgb(38, 38, 38)\ntiddler-border: rgba(240, 196, 117, 0.7)\ntiddler-controls-foreground: rgb(128, 128, 128)\ntiddler-controls-foreground-hover: rgba(255, 255, 255, 0.8)\ntiddler-controls-foreground-selected: rgba(255, 255, 255, 0.9)\ntiddler-editor-background: rgb(33, 33, 33)\ntiddler-editor-border: rgb(63, 63, 63)\ntiddler-editor-border-image: rgb(25, 25, 25)\ntiddler-editor-fields-even: rgb(33, 33, 33)\ntiddler-editor-fields-odd: rgb(28, 28, 28)\ntiddler-info-background: rgb(43, 43, 43)\ntiddler-info-border: rgb(25, 25, 25)\ntiddler-info-tab-background: rgb(43, 43, 43)\ntiddler-link-background: rgb(38, 38, 38)\ntiddler-link-foreground: rgb(204, 204, 255)\ntiddler-subtitle-foreground: rgb(255, 255, 255)\ntiddler-title-foreground: rgb(255, 192, 76)\ntoolbar-cancel-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-done-button: \ntoolbar-edit-button: \ntoolbar-info-button: \ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \nuntagged-background: rgb(255, 255, 255)\nvery-muted-foreground: rgba(240, 196, 117, 0.7)\n"
},
"$:/palettes/Vanilla": {
"title": "$:/palettes/Vanilla",
"name": "Vanilla",
"description": "Pale and unobtrusive",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndiff-delete-background: #ffc9c9\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #aaefad\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #bbb\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #f4f4f4\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #aaaaaa\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #f4f4f4\nsidebar-tab-background: #e0e0e0\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: #e4e4e4\nsidebar-tab-foreground-selected:\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #999999\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ec6\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\nwikilist-background: #e5e5e5\nwikilist-item: #fff\nwikilist-info: #000\nwikilist-title: #666\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: #aaa\nwikilist-button-open: #4fb82b\nwikilist-button-open-hover: green\nwikilist-button-reveal: #5778d8\nwikilist-button-reveal-hover: blue\nwikilist-button-remove: #d85778\nwikilist-button-remove-hover: red\nwikilist-toolbar-background: #d3d3d3\nwikilist-toolbar-foreground: #888\nwikilist-droplink-dragover: rgba(255,192,192,0.5)\nwikilist-button-background: #acacac\nwikilist-button-foreground: #000\n"
},
"$:/core/readme": {
"title": "$:/core/readme",
"text": "This plugin contains TiddlyWiki's core components, comprising:\n\n* JavaScript code modules\n* Icons\n* Templates needed to create TiddlyWiki's user interface\n* British English (''en-GB'') translations of the localisable strings used by the core\n"
},
"$:/library/sjcl.js/license": {
"title": "$:/library/sjcl.js/license",
"type": "text/plain",
"text": "SJCL is open. You can use, modify and redistribute it under a BSD\nlicense or under the GNU GPL, version 2.0.\n\n---------------------------------------------------------------------\n\nhttp://opensource.org/licenses/BSD-2-Clause\n\nCopyright (c) 2009-2015, Emily Stark, Mike Hamburg and Dan Boneh at\nStanford University. All rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are\nmet:\n\n1. Redistributions of source code must retain the above copyright\nnotice, this list of conditions and the following disclaimer.\n\n2. Redistributions in binary form must reproduce the above copyright\nnotice, this list of conditions and the following disclaimer in the\ndocumentation and/or other materials provided with the distribution.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\nIS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED\nTO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A\nPARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\nHOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\nSPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED\nTO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\nPROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF\nLIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\nNEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n---------------------------------------------------------------------\n\nhttp://opensource.org/licenses/GPL-2.0\n\nThe Stanford Javascript Crypto Library (hosted here on GitHub) is a\nproject by the Stanford Computer Security Lab to build a secure,\npowerful, fast, small, easy-to-use, cross-browser library for\ncryptography in Javascript.\n\nCopyright (c) 2009-2015, Emily Stark, Mike Hamburg and Dan Boneh at\nStanford University.\n\nThis program is free software; you can redistribute it and/or modify it\nunder the terms of the GNU General Public License as published by the\nFree Software Foundation; either version 2 of the License, or (at your\noption) any later version.\n\nThis program is distributed in the hope that it will be useful, but\nWITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General\nPublic License for more details.\n\nYou should have received a copy of the GNU General Public License along\nwith this program; if not, write to the Free Software Foundation, Inc.,\n59 Temple Place, Suite 330, Boston, MA 02111-1307 USA"
},
"$:/core/templates/MOTW.html": {
"title": "$:/core/templates/MOTW.html",
"text": "\\rules only filteredtranscludeinline transcludeinline entity\n<!-- The following comment is called a MOTW comment and is necessary for the TiddlyIE Internet Explorer extension -->\n<!-- saved from url=(0021)https://tiddlywiki.com --> "
},
"$:/core/templates/alltiddlers.template.html": {
"title": "$:/core/templates/alltiddlers.template.html",
"type": "text/vnd.tiddlywiki-html",
"text": "<!-- This template is provided for backwards compatibility with older versions of TiddlyWiki -->\n\n<$set name=\"exportFilter\" value=\"[!is[system]sort[title]]\">\n\n{{$:/core/templates/exporters/StaticRiver}}\n\n</$set>\n"
},
"$:/core/templates/canonical-uri-external-image": {
"title": "$:/core/templates/canonical-uri-external-image",
"text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external images.\n\nChange the `./images/` part to a different base URI. The URI can be relative or absolute.\n\n-->\n./images/<$view field=\"title\" format=\"doubleurlencoded\"/>"
},
"$:/core/templates/canonical-uri-external-raw": {
"title": "$:/core/templates/canonical-uri-external-raw",
"text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external raw files that are stored in the same directory\n\n-->\n<$view field=\"title\" format=\"doubleurlencoded\"/>"
},
"$:/core/templates/canonical-uri-external-text": {
"title": "$:/core/templates/canonical-uri-external-text",
"text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external text files.\n\nChange the `./text/` part to a different base URI. The URI can be relative or absolute.\n\n-->\n./text/<$view field=\"title\" format=\"doubleurlencoded\"/>.tid"
},
"$:/core/templates/css-tiddler": {
"title": "$:/core/templates/css-tiddler",
"text": "<!--\n\nThis template is used for saving CSS tiddlers as a style tag with data attributes representing the tiddler fields.\n\n-->`<style`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/css\">`<$view field=\"text\" format=\"text\" />`</style>`"
},
"$:/core/templates/exporters/CsvFile": {
"title": "$:/core/templates/exporters/CsvFile",
"tags": "$:/tags/Exporter",
"description": "{{$:/language/Exporters/CsvFile}}",
"extension": ".csv",
"text": "\\define renderContent()\n<$text text=<<csvtiddlers filter:\"\"\"$(exportFilter)$\"\"\" format:\"quoted-comma-sep\">>/>\n\\end\n<<renderContent>>\n"
},
"$:/core/templates/exporters/JsonFile": {
"title": "$:/core/templates/exporters/JsonFile",
"tags": "$:/tags/Exporter",
"description": "{{$:/language/Exporters/JsonFile}}",
"extension": ".json",
"text": "\\define renderContent()\n<$text text=<<jsontiddlers filter:\"\"\"$(exportFilter)$\"\"\">>/>\n\\end\n<<renderContent>>\n"
},
"$:/core/templates/exporters/StaticRiver": {
"title": "$:/core/templates/exporters/StaticRiver",
"tags": "$:/tags/Exporter",
"description": "{{$:/language/Exporters/StaticRiver}}",
"extension": ".html",
"text": "\\define tv-wikilink-template() #$uri_encoded$\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<style type=\"text/css\">\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n</style>\n</head>\n<body class=\"tc-body\">\n{{$:/StaticBanner||$:/core/templates/html-tiddler}}\n<section class=\"tc-story-river\">\n{{$:/core/templates/exporters/StaticRiver/Content||$:/core/templates/html-tiddler}}\n</section>\n</body>\n</html>\n"
},
"$:/core/templates/exporters/StaticRiver/Content": {
"title": "$:/core/templates/exporters/StaticRiver/Content",
"text": "\\define renderContent()\n{{{ $(exportFilter)$ ||$:/core/templates/static-tiddler}}}\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<<renderContent>>\n"
},
"$:/core/templates/exporters/TidFile": {
"title": "$:/core/templates/exporters/TidFile",
"tags": "$:/tags/Exporter",
"description": "{{$:/language/Exporters/TidFile}}",
"extension": ".tid",
"text": "\\define renderContent()\n{{{ $(exportFilter)$ +[limit[1]] ||$:/core/templates/tid-tiddler}}}\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<<renderContent>>"
},
"$:/core/save/all-external-js": {
"title": "$:/core/save/all-external-js",
"text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/core]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$\n\\end\n{{$:/core/templates/tiddlywiki5-external-js.html}}\n"
},
"$:/core/templates/tiddlywiki5.js": {
"title": "$:/core/templates/tiddlywiki5.js",
"text": "\\rules only filteredtranscludeinline transcludeinline codeinline\n\n/*\n{{ $:/core/copyright.txt ||$:/core/templates/plain-text-tiddler}}\n`*/\n`<!--~~ Library modules ~~-->\n{{{ [is[system]type[application/javascript]library[yes]] ||$:/core/templates/plain-text-tiddler}}}\n<!--~~ Boot prefix ~~-->\n{{ $:/boot/bootprefix.js ||$:/core/templates/plain-text-tiddler}}\n<!--~~ Core plugin ~~-->\n{{$:/core/templates/tiddlywiki5.js/tiddlers}}\n<!--~~ Boot kernel ~~-->\n{{ $:/boot/boot.js ||$:/core/templates/plain-text-tiddler}}\n"
},
"$:/core/templates/tiddlywiki5.js/tiddlers": {
"title": "$:/core/templates/tiddlywiki5.js/tiddlers",
"text": "`\n$tw.preloadTiddlerArray(`<$text text=<<jsontiddlers \"[[$:/core]]\">>/>`);\n$tw.preloadTiddlerArray([{\n\ttitle: \"$:/config/SaveWikiButton/Template\",\n\ttext: \"$:/core/save/all-external-js\"\n}]);\n`\n"
},
"$:/core/templates/tiddlywiki5-external-js.html": {
"title": "$:/core/templates/tiddlywiki5-external-js.html",
"text": "\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n{{$:/core/templates/MOTW.html}}<html lang=\"`<$text text={{{ [{$:/language}get[name]] }}}/>`\">\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<!--~~ Raw markup for the top of the head section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/TopHead]] ||$:/core/templates/raw-static-tiddler}}}\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>\n<meta name=\"application-name\" content=\"TiddlyWiki\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\" />\n<meta name=\"copyright\" content=\"{{$:/core/copyright.txt}}\" />\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<!--~~ This is a Tiddlywiki file. The points of interest in the file are marked with this pattern ~~-->\n\n<!--~~ Raw markup ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/core/wiki/rawmarkup]] [all[shadows+tiddlers]tag[$:/tags/RawMarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified]] ||$:/core/templates/raw-static-tiddler}}}\n</head>\n<body class=\"tc-body\">\n<!--~~ Raw markup for the top of the body section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/TopBody]] ||$:/core/templates/raw-static-tiddler}}}\n<!--~~ Static styles ~~-->\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<!--~~ Static content for Google and browsers without JavaScript ~~-->\n<noscript>\n<div id=\"splashArea\">\n{{$:/core/templates/static.area}}\n</div>\n</noscript>\n<!--~~ Ordinary tiddlers ~~-->\n{{$:/core/templates/store.area.template.html}}\n<!--~~ Raw markup for the bottom of the body section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/BottomBody]] ||$:/core/templates/raw-static-tiddler}}}\n</body>\n<script src=\"%24%3A%2Fcore%2Ftemplates%2Ftiddlywiki5.js\" onerror=\"alert('Error: Cannot load tiddlywiki.js');\"></script>\n</html>\n"
},
"$:/core/templates/html-div-skinny-tiddler": {
"title": "$:/core/templates/html-div-skinny-tiddler",
"text": "<!--\n\nThis template is a variant of $:/core/templates/html-div-tiddler used for saving skinny tiddlers (with no text field)\n\n-->`<div`<$fields template=' $name$=\"$encoded_value$\"'></$fields>`>\n<pre></pre>\n</div>`\n"
},
"$:/core/templates/html-div-tiddler": {
"title": "$:/core/templates/html-div-tiddler",
"text": "<!--\n\nThis template is used for saving tiddlers as an HTML DIV tag with attributes representing the tiddler fields.\n\n-->`<div`<$fields template=' $name$=\"$encoded_value$\"'></$fields>`>\n<pre>`<$view field=\"text\" format=\"htmlencoded\" />`</pre>\n</div>`\n"
},
"$:/core/templates/html-tiddler": {
"title": "$:/core/templates/html-tiddler",
"text": "<!--\n\nThis template is used for saving tiddlers as raw HTML\n\n--><$view field=\"text\" format=\"htmlwikified\" />"
},
"$:/core/templates/javascript-tiddler": {
"title": "$:/core/templates/javascript-tiddler",
"text": "<!--\n\nThis template is used for saving JavaScript tiddlers as a script tag with data attributes representing the tiddler fields.\n\n-->`<script`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/javascript\">`<$view field=\"text\" format=\"text\" />`</script>`"
},
"$:/core/templates/json-tiddler": {
"title": "$:/core/templates/json-tiddler",
"text": "<!--\n\nThis template is used for saving tiddlers as raw JSON\n\n--><$text text=<<jsontiddler>>/>"
},
"$:/core/templates/module-tiddler": {
"title": "$:/core/templates/module-tiddler",
"text": "<!--\n\nThis template is used for saving JavaScript tiddlers as a script tag with data attributes representing the tiddler fields. The body of the tiddler is wrapped in a call to the `$tw.modules.define` function in order to define the body of the tiddler as a module\n\n-->`<script`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/javascript\" data-module=\"yes\">$tw.modules.define(\"`<$view field=\"title\" format=\"jsencoded\" />`\",\"`<$view field=\"module-type\" format=\"jsencoded\" />`\",function(module,exports,require) {`<$view field=\"text\" format=\"text\" />`});\n</script>`"
},
"$:/core/templates/plain-text-tiddler": {
"title": "$:/core/templates/plain-text-tiddler",
"text": "<$view field=\"text\" format=\"text\" />"
},
"$:/core/templates/raw-static-tiddler": {
"title": "$:/core/templates/raw-static-tiddler",
"text": "<!--\n\nThis template is used for saving tiddlers as static HTML\n\n--><$view field=\"text\" format=\"plainwikified\" />"
},
"$:/core/save/all": {
"title": "$:/core/save/all",
"text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
},
"$:/core/save/empty": {
"title": "$:/core/save/empty",
"text": "\\define saveTiddlerFilter()\n[is[system]] -[prefix[$:/state/popup/]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
},
"$:/core/save/lazy-all": {
"title": "$:/core/save/lazy-all",
"text": "\\define saveTiddlerFilter()\n[is[system]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] \n\\end\n\\define skinnySaveTiddlerFilter()\n[!is[system]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
},
"$:/core/save/lazy-images": {
"title": "$:/core/save/lazy-images",
"text": "\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[!is[system]is[image]] +[sort[title]] \n\\end\n\\define skinnySaveTiddlerFilter()\n[is[image]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
},
"$:/core/templates/server/static.sidebar.wikitext": {
"title": "$:/core/templates/server/static.sidebar.wikitext",
"text": "\\whitespace trim\n<div class=\"tc-sidebar-scrollable\" style=\"overflow: auto;\">\n<div class=\"tc-sidebar-header\">\n<h1 class=\"tc-site-title\">\n<$transclude tiddler=\"$:/SiteTitle\"/>\n</h1>\n<div class=\"tc-site-subtitle\">\n<$transclude tiddler=\"$:/SiteSubtitle\"/>\n</div>\n<h2>\n</h2>\n<div class=\"tc-sidebar-lists\">\n<$list filter={{$:/DefaultTiddlers}}>\n<div class=\"tc-menu-list-subitem\">\n<$link><$text text=<<currentTiddler>>/></$link>\n</div>\n</$list>\n</div>\n<!-- Currently disabled the recent list as it is unweildy when the responsive narrow view kicks in\n<h2>\n{{$:/language/SideBar/Recent/Caption}}\n</h2>\n<div class=\"tc-sidebar-lists\">\n<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n</div>\n</div>\n</div>\n-->\n"
},
"$:/core/templates/server/static.tiddler.html": {
"title": "$:/core/templates/server/static.tiddler.html",
"text": "\\whitespace trim\n\\define tv-wikilink-template() $uri_encoded$\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content={{$:/core/templates/version}} />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<link rel=\"stylesheet\" href=\"%24%3A%2Fcore%2Ftemplates%2Fstatic.template.css\">\n<title><$view field=\"caption\" format=\"plainwikified\"><$view field=\"title\"/></$view>: <$view tiddler=\"$:/core/wiki/title\" format=\"plainwikified\"/></title>\n</head>\n<body class=\"tc-body\">\n<$transclude tiddler=\"$:/core/templates/server/static.sidebar.wikitext\" mode=\"inline\"/>\n<section class=\"tc-story-river\">\n<div class=\"tc-tiddler-frame\">\n<$transclude tiddler=\"$:/core/templates/server/static.tiddler.wikitext\" mode=\"inline\"/>\n</div>\n</section>\n</body>\n</html>"
},
"$:/core/templates/server/static.tiddler.wikitext": {
"title": "$:/core/templates/server/static.tiddler.wikitext",
"text": "\\whitespace trim\n<div class=\"tc-tiddler-title\">\n<div class=\"tc-titlebar\">\n<h2><$text text=<<currentTiddler>>/></h2>\n</div>\n</div>\n<div class=\"tc-subtitle\">\n<$link to={{!!modifier}}>\n<$view field=\"modifier\"/>\n</$link> <$view field=\"modified\" format=\"date\" template={{$:/language/Tiddler/DateFormat}}/>\n</div>\n<div class=\"tc-tags-wrapper\">\n<$list filter=\"[all[current]tags[]sort[title]]\">\n<a href={{{ [<currentTiddler>encodeuricomponent[]] }}}>\n<$macrocall $name=\"tag-pill\" tag=<<currentTiddler>>/>\n</a>\n</$list>\n</div>\n<div class=\"tc-tiddler-body\">\n<$transclude mode=\"block\"/>\n</div>\n"
},
"$:/core/templates/single.tiddler.window": {
"title": "$:/core/templates/single.tiddler.window",
"text": "\\whitespace trim\n\\define containerClasses()\ntc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$set name=\"tv-config-toolbar-icons\" value={{$:/config/Toolbar/Icons}}>\n\n<$set name=\"tv-config-toolbar-text\" value={{$:/config/Toolbar/Text}}>\n\n<$set name=\"tv-config-toolbar-class\" value={{$:/config/Toolbar/ButtonClass}}>\n\n<$set name=\"tv-show-missing-links\" value={{$:/config/MissingLinks}}>\n\n<$set name=\"storyviewTitle\" value={{$:/view}}>\n\n<$set name=\"languageTitle\" value={{{ [{$:/language}get[name]] }}}>\n\n<div class=<<containerClasses>>>\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\">\n\n<$transclude mode=\"block\"/>\n\n</$navigator>\n\n</div>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n"
},
"$:/core/templates/split-recipe": {
"title": "$:/core/templates/split-recipe",
"text": "<$list filter=\"[!is[system]]\">\ntiddler: <$view field=\"title\" format=\"urlencoded\"/>.tid\n</$list>\n"
},
"$:/core/templates/static-tiddler": {
"title": "$:/core/templates/static-tiddler",
"text": "<a name=<<currentTiddler>>>\n<$transclude tiddler=\"$:/core/ui/ViewTemplate\"/>\n</a>"
},
"$:/core/templates/static.area": {
"title": "$:/core/templates/static.area",
"text": "<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawStaticContent]!has[draft.of]] ||$:/core/templates/raw-static-tiddler}}}\n{{$:/core/templates/static.content||$:/core/templates/html-tiddler}}\n</$reveal>\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\nThis file contains an encrypted ~TiddlyWiki. Enable ~JavaScript and enter the decryption password when prompted.\n</$reveal>\n<!-- ensure splash screen isn't shown when JS is disabled -->\n`<style>\n.tc-remove-when-wiki-loaded {display: none;}\n</style>`\n"
},
"$:/core/templates/static.content": {
"title": "$:/core/templates/static.content",
"text": "<!-- For Google, and people without JavaScript-->\nThis [[TiddlyWiki|https://tiddlywiki.com]] contains the following tiddlers:\n\n<ul>\n<$list filter=<<saveTiddlerFilter>>>\n<li><$view field=\"title\" format=\"text\"></$view></li>\n</$list>\n</ul>\n"
},
"$:/core/templates/static.template.css": {
"title": "$:/core/templates/static.template.css",
"text": "{{$:/boot/boot.css||$:/core/templates/plain-text-tiddler}}\n\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n"
},
"$:/core/templates/static.template.html": {
"title": "$:/core/templates/static.template.html",
"type": "text/vnd.tiddlywiki-html",
"text": "\\define tv-wikilink-template() static/$uri_doubleencoded$.html\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<style type=\"text/css\">\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n</style>\n</head>\n<body class=\"tc-body\">\n{{$:/StaticBanner||$:/core/templates/html-tiddler}}\n{{$:/core/ui/PageTemplate||$:/core/templates/html-tiddler}}\n</body>\n</html>\n"
},
"$:/core/templates/static.tiddler.html": {
"title": "$:/core/templates/static.tiddler.html",
"text": "\\define tv-wikilink-template() $uri_doubleencoded$.html\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n`<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"`{{$:/core/templates/version}}`\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<link rel=\"stylesheet\" href=\"static.css\">\n<title>`<$view field=\"caption\"><$view field=\"title\"/></$view>: {{$:/core/wiki/title}}`</title>\n</head>\n<body class=\"tc-body\">\n`{{$:/StaticBanner||$:/core/templates/html-tiddler}}`\n<section class=\"tc-story-river\">\n`<$view tiddler=\"$:/core/ui/ViewTemplate\" format=\"htmlwikified\"/>`\n</section>\n</body>\n</html>\n`"
},
"$:/core/templates/store.area.template.html": {
"title": "$:/core/templates/store.area.template.html",
"text": "<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n`<div id=\"storeArea\" style=\"display:none;\">`\n<$list filter=<<saveTiddlerFilter>> template=\"$:/core/templates/html-div-tiddler\"/>\n<$list filter={{{ [<skinnySaveTiddlerFilter>] }}} template=\"$:/core/templates/html-div-skinny-tiddler\"/>\n`</div>`\n</$reveal>\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\n`<!--~~ Encrypted tiddlers ~~-->`\n`<pre id=\"encryptedStoreArea\" type=\"text/plain\" style=\"display:none;\">`\n<$encrypt filter=<<saveTiddlerFilter>>/>\n`</pre>`\n</$reveal>"
},
"$:/core/templates/tid-tiddler": {
"title": "$:/core/templates/tid-tiddler",
"text": "<!--\n\nThis template is used for saving tiddlers in TiddlyWeb *.tid format\n\n--><$fields exclude='text bag' template='$name$: $value$\n'></$fields>`\n`<$view field=\"text\" format=\"text\" />"
},
"$:/core/templates/tiddler-metadata": {
"title": "$:/core/templates/tiddler-metadata",
"text": "<!--\n\nThis template is used for saving tiddler metadata *.meta files\n\n--><$fields exclude='text bag' template='$name$: $value$\n'></$fields>"
},
"$:/core/templates/tiddlywiki5.html": {
"title": "$:/core/templates/tiddlywiki5.html",
"text": "<$set name=\"saveTiddlerAndShadowsFilter\" filter=\"[subfilter<saveTiddlerFilter>] [subfilter<saveTiddlerFilter>plugintiddlers[]]\">\n`<!doctype html>\n`{{$:/core/templates/MOTW.html}}`<html lang=\"`<$text text={{{ [{$:/language}get[name]] }}}/>`\">\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<!--~~ Raw markup for the top of the head section ~~-->\n`{{{ [<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/TopHead]] ||$:/core/templates/raw-static-tiddler}}}`\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>\n<meta name=\"application-name\" content=\"TiddlyWiki\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"`{{$:/core/templates/version}}`\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\" />\n<meta name=\"copyright\" content=\"`{{$:/core/copyright.txt}}`\" />\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>`{{$:/core/wiki/title}}`</title>\n<!--~~ This is a Tiddlywiki file. The points of interest in the file are marked with this pattern ~~-->\n\n<!--~~ Raw markup ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/core/wiki/rawmarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified]] ||$:/core/templates/raw-static-tiddler}}}`\n</head>\n<body class=\"tc-body\">\n<!--~~ Raw markup for the top of the body section ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/TopBody]] ||$:/core/templates/raw-static-tiddler}}}`\n<!--~~ Static styles ~~-->\n<div id=\"styleArea\">\n`{{$:/boot/boot.css||$:/core/templates/css-tiddler}}`\n</div>\n<!--~~ Static content for Google and browsers without JavaScript ~~-->\n<noscript>\n<div id=\"splashArea\">\n`{{$:/core/templates/static.area}}`\n</div>\n</noscript>\n<!--~~ Ordinary tiddlers ~~-->\n`{{$:/core/templates/store.area.template.html}}`\n<!--~~ Library modules ~~-->\n<div id=\"libraryModules\" style=\"display:none;\">\n`{{{ [is[system]type[application/javascript]library[yes]] ||$:/core/templates/javascript-tiddler}}}`\n</div>\n<!--~~ Boot kernel prologue ~~-->\n<div id=\"bootKernelPrefix\" style=\"display:none;\">\n`{{ $:/boot/bootprefix.js ||$:/core/templates/javascript-tiddler}}`\n</div>\n<!--~~ Boot kernel ~~-->\n<div id=\"bootKernel\" style=\"display:none;\">\n`{{ $:/boot/boot.js ||$:/core/templates/javascript-tiddler}}`\n</div>\n<!--~~ Raw markup for the bottom of the body section ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/BottomBody]] ||$:/core/templates/raw-static-tiddler}}}`\n</body>\n</html>`\n"
},
"$:/core/templates/version": {
"title": "$:/core/templates/version",
"text": "<<version>>"
},
"$:/core/templates/wikified-tiddler": {
"title": "$:/core/templates/wikified-tiddler",
"text": "<$transclude />"
},
"$:/core/ui/AboveStory/tw2-plugin-check": {
"title": "$:/core/ui/AboveStory/tw2-plugin-check",
"tags": "$:/tags/AboveStory",
"text": "\\define lingo-base() $:/language/AboveStory/ClassicPlugin/\n<$list filter=\"[all[system+tiddlers]tag[systemConfig]limit[1]]\">\n\n<div class=\"tc-message-box\">\n\n<<lingo Warning>>\n\n<ul>\n\n<$list filter=\"[all[system+tiddlers]tag[systemConfig]]\">\n\n<li>\n\n<$link><$view field=\"title\"/></$link>\n\n</li>\n\n</$list>\n\n</ul>\n\n</div>\n\n</$list>\n"
},
"$:/core/ui/Actions/new-image": {
"title": "$:/core/ui/Actions/new-image",
"tags": "$:/tags/Actions",
"description": "create a new image tiddler",
"text": "\\define get-type()\nimage/$(imageType)$\n\\end\n<$vars imageType={{$:/config/NewImageType}}>\n<$action-sendmessage $message=\"tm-new-tiddler\" type=<<get-type>> tags={{$:/config/NewTiddler/Tags!!tags}}/>\n</$vars>\n"
},
"$:/core/ui/Actions/new-journal": {
"title": "$:/core/ui/Actions/new-journal",
"tags": "$:/tags/Actions",
"description": "create a new journal tiddler",
"text": "<$vars journalTitleTemplate={{$:/config/NewJournal/Title}} journalTags={{$:/config/NewJournal/Tags!!tags}} journalText={{$:/config/NewJournal/Text}}>\n<$wikify name=\"journalTitle\" text=\"\"\"<$macrocall $name=\"now\" format=<<journalTitleTemplate>>/>\"\"\">\n<$reveal type=\"nomatch\" state=<<journalTitle>> text=\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<journalTags>> text={{{ [<journalTitle>get[]] }}}/>\n</$reveal>\n<$reveal type=\"match\" state=<<journalTitle>> text=\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<journalTags>> text=<<journalText>>/>\n</$reveal>\n</$wikify>\n</$vars>\n"
},
"$:/core/ui/Actions/new-tiddler": {
"title": "$:/core/ui/Actions/new-tiddler",
"tags": "$:/tags/Actions",
"description": "create a new empty tiddler",
"text": "<$action-sendmessage $message=\"tm-new-tiddler\" tags={{$:/config/NewTiddler/Tags!!tags}}/>\n"
},
"$:/core/ui/AdvancedSearch/Filter": {
"title": "$:/core/ui/AdvancedSearch/Filter",
"tags": "$:/tags/AdvancedSearch",
"caption": "{{$:/language/Search/Filter/Caption}}",
"text": "\\define lingo-base() $:/language/Search/\n<<lingo Filter/Hint>>\n\n<div class=\"tc-search tc-advanced-search\">\n<$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\" focus={{$:/config/Search/AutoFocus}}/>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/AdvancedSearch/FilterButton]!has[draft.of]]\"><$transclude/></$list>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$set name=\"resultCount\" value=\"\"\"<$count filter={{$:/temp/advancedsearch}}/>\"\"\">\n<div class=\"tc-search-results\">\n<<lingo Filter/Matches>>\n<$list filter={{$:/temp/advancedsearch}} template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$set>\n</$reveal>\n"
},
"$:/core/ui/AdvancedSearch/Filter/FilterButtons/clear": {
"title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/clear",
"tags": "$:/tags/AdvancedSearch/FilterButton",
"text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n"
},
"$:/core/ui/AdvancedSearch/Filter/FilterButtons/delete": {
"title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/delete",
"tags": "$:/tags/AdvancedSearch/FilterButton",
"text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button popup=<<qualify \"$:/state/filterDeleteDropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/delete-button}}\n</$button>\n</$reveal>\n\n<$reveal state=<<qualify \"$:/state/filterDeleteDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<div class=\"tc-dropdown-item-plain\">\n<$set name=\"resultCount\" value=\"\"\"<$count filter={{$:/temp/advancedsearch}}/>\"\"\">\nAre you sure you wish to delete <<resultCount>> tiddler(s)?\n</$set>\n</div>\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"tc-btn\">\n<$action-deletetiddler $filter={{$:/temp/advancedsearch}}/>\nDelete these tiddlers\n</$button>\n</div>\n</div>\n</div>\n</$reveal>\n"
},
"$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown": {
"title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown",
"tags": "$:/tags/AdvancedSearch/FilterButton",
"text": "<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/filterDropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n</$button>\n</span>\n\n<$reveal state=<<qualify \"$:/state/filterDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher to=\"$:/temp/advancedsearch\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Filter]]\"><$link to={{!!filter}}><$transclude field=\"description\"/></$link>\n</$list>\n</div>\n</div>\n</$linkcatcher>\n</$set>\n</$reveal>\n"
},
"$:/core/ui/AdvancedSearch/Filter/FilterButtons/export": {
"title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/export",
"tags": "$:/tags/AdvancedSearch/FilterButton",
"text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$macrocall $name=\"exportButton\" exportFilter={{$:/temp/advancedsearch}} lingoBase=\"$:/language/Buttons/ExportTiddlers/\"/>\n</$reveal>\n"
},
"$:/core/ui/AdvancedSearch/Shadows": {
"title": "$:/core/ui/AdvancedSearch/Shadows",
"tags": "$:/tags/AdvancedSearch",
"caption": "{{$:/language/Search/Shadows/Caption}}",
"text": "\\define lingo-base() $:/language/Search/\n<$linkcatcher to=\"$:/temp/advancedsearch\">\n\n<<lingo Shadows/Hint>>\n\n<div class=\"tc-search\">\n<$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\" focus={{$:/config/Search/AutoFocus}}/>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n</$linkcatcher>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[all[shadows]search{$:/temp/advancedsearch}] -[[$:/temp/advancedsearch]]\"/>\"\"\">\n\n<div class=\"tc-search-results\">\n\n<<lingo Shadows/Matches>>\n\n<$list filter=\"[all[shadows]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n\n</div>\n\n</$set>\n\n</$list>\n\n</$reveal>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\">\n\n</$reveal>\n"
},
"$:/core/ui/AdvancedSearch/Standard": {
"title": "$:/core/ui/AdvancedSearch/Standard",
"tags": "$:/tags/AdvancedSearch",
"caption": "{{$:/language/Search/Standard/Caption}}",
"text": "\\define lingo-base() $:/language/Search/\n<$linkcatcher to=\"$:/temp/advancedsearch\">\n\n<<lingo Standard/Hint>>\n\n<div class=\"tc-search\">\n<$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\" focus={{$:/config/Search/AutoFocus}}/>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n</$linkcatcher>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$set name=\"searchTiddler\" value=\"$:/temp/advancedsearch\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]butfirst[]limit[1]]\" emptyMessage=\"\"\"\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\">\n<$transclude/>\n</$list>\n\"\"\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\" default={{$:/config/SearchResults/Default}}/>\n</$list>\n</$set>\n</$list>\n</$reveal>\n"
},
"$:/core/ui/AdvancedSearch/System": {
"title": "$:/core/ui/AdvancedSearch/System",
"tags": "$:/tags/AdvancedSearch",
"caption": "{{$:/language/Search/System/Caption}}",
"text": "\\define lingo-base() $:/language/Search/\n<$linkcatcher to=\"$:/temp/advancedsearch\">\n\n<<lingo System/Hint>>\n\n<div class=\"tc-search\">\n<$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\" focus={{$:/config/Search/AutoFocus}}/>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n</$linkcatcher>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[is[system]search{$:/temp/advancedsearch}] -[[$:/temp/advancedsearch]]\"/>\"\"\">\n\n<div class=\"tc-search-results\">\n\n<<lingo System/Matches>>\n\n<$list filter=\"[is[system]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n\n</div>\n\n</$set>\n\n</$list>\n\n</$reveal>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\">\n\n</$reveal>\n"
},
"$:/AdvancedSearch": {
"title": "$:/AdvancedSearch",
"icon": "$:/core/images/advanced-search-button",
"color": "#bbb",
"text": "<div class=\"tc-advanced-search\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/AdvancedSearch]!has[draft.of]]\" \"$:/core/ui/AdvancedSearch/System\">>\n</div>\n"
},
"$:/core/ui/AlertTemplate": {
"title": "$:/core/ui/AlertTemplate",
"text": "<div class=\"tc-alert\">\n<div class=\"tc-alert-toolbar\">\n<$button class=\"tc-btn-invisible\"><$action-deletetiddler $tiddler=<<currentTiddler>>/>{{$:/core/images/cancel-button}}</$button>\n</div>\n<div class=\"tc-alert-subtitle\">\n<$wikify name=\"format\" text=<<lingo Tiddler/DateFormat>>>\n<$view field=\"component\"/> - <$view field=\"modified\" format=\"date\" template=<<format>>/> <$reveal type=\"nomatch\" state=\"!!count\" text=\"\"><span class=\"tc-alert-highlight\">({{$:/language/Count}}: <$view field=\"count\"/>)</span></$reveal>\n</$wikify>\n</div>\n<div class=\"tc-alert-body\">\n\n<$transclude/>\n\n</div>\n</div>\n"
},
"$:/core/ui/BinaryWarning": {
"title": "$:/core/ui/BinaryWarning",
"text": "\\define lingo-base() $:/language/BinaryWarning/\n<<lingo Prompt>>\n"
},
"$:/core/ui/Components/plugin-info": {
"title": "$:/core/ui/Components/plugin-info",
"text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n\\define popup-state-macro()\n$(qualified-state)$-$(currentTiddler)$\n\\end\n\n\\define tabs-state-macro()\n$(popup-state)$-$(pluginInfoType)$\n\\end\n\n\\define plugin-icon-title()\n$(currentTiddler)$/icon\n\\end\n\n\\define plugin-disable-title()\n$:/config/Plugins/Disabled/$(currentTiddler)$\n\\end\n\n\\define plugin-table-body(type,disabledMessage,default-popup-state)\n<div class=\"tc-plugin-info-chunk tc-plugin-info-toggle\">\n<$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\" default=\"\"\"$default-popup-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n{{$:/core/images/chevron-right}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<popup-state>> text=\"yes\" default=\"\"\"$default-popup-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<plugin-icon-title>>>\n<$transclude tiddler=\"$:/core/images/plugin-generic-$type$\"/>\n</$transclude>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-description\">\n<h1>\n''<$text text={{{ [<currentTiddler>get[name]] ~[<currentTiddler>split[/]last[1]] }}}/>'': <$view field=\"description\"><$view field=\"title\"/></$view> $disabledMessage$\n</h1>\n<h2>\n<$view field=\"title\"/>\n</h2>\n<h2>\n<div><em><$view field=\"version\"/></em></div>\n</h2>\n</div>\n\\end\n\n\\define plugin-info(type,default-popup-state)\n<$set name=\"popup-state\" value=<<popup-state-macro>>>\n<$reveal type=\"nomatch\" state=<<plugin-disable-title>> text=\"yes\">\n<$link to={{!!title}} class=\"tc-plugin-info\">\n<<plugin-table-body type:\"$type$\" default-popup-state:\"\"\"$default-popup-state$\"\"\">>\n</$link>\n</$reveal>\n<$reveal type=\"match\" state=<<plugin-disable-title>> text=\"yes\">\n<$link to={{!!title}} class=\"tc-plugin-info tc-plugin-info-disabled\">\n<<plugin-table-body type:\"$type$\" default-popup-state:\"\"\"$default-popup-state$\"\"\" disabledMessage:\"<$macrocall $name='lingo' title='Disabled/Status'/>\">>\n</$link>\n</$reveal>\n<$reveal type=\"match\" text=\"yes\" state=<<popup-state>> default=\"\"\"$default-popup-state$\"\"\">\n<div class=\"tc-plugin-info-dropdown\">\n<div class=\"tc-plugin-info-dropdown-body\">\n<$list filter=\"[all[current]] -[[$:/core]]\">\n<div style=\"float:right;\">\n<$reveal type=\"nomatch\" state=<<plugin-disable-title>> text=\"yes\">\n<$button set=<<plugin-disable-title>> setTo=\"yes\" tooltip={{$:/language/ControlPanel/Plugins/Disable/Hint}} aria-label={{$:/language/ControlPanel/Plugins/Disable/Caption}}>\n<<lingo Disable/Caption>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<plugin-disable-title>> text=\"yes\">\n<$button set=<<plugin-disable-title>> setTo=\"no\" tooltip={{$:/language/ControlPanel/Plugins/Enable/Hint}} aria-label={{$:/language/ControlPanel/Plugins/Enable/Caption}}>\n<<lingo Enable/Caption>>\n</$button>\n</$reveal>\n</div>\n</$list>\n<$set name=\"tabsList\" filter=\"[<currentTiddler>list[]] contents\">\n<$macrocall $name=\"tabs\" state=<<tabs-state-macro>> tabsList=<<tabsList>> default={{{ [enlist<tabsList>] }}} template=\"$:/core/ui/PluginInfo\"/>\n</$set>\n</div>\n</div>\n</$reveal>\n</$set>\n\\end\n\n<$macrocall $name=\"plugin-info\" type=<<plugin-type>> default-popup-state=<<default-popup-state>>/>\n"
},
"$:/core/ui/Components/tag-link": {
"title": "$:/core/ui/Components/tag-link",
"text": "<$link>\n<$set name=\"backgroundColor\" value={{!!color}}>\n<span style=<<tag-styles>> class=\"tc-tag-label\">\n<$view field=\"title\" format=\"text\"/>\n</span>\n</$set>\n</$link>"
},
"$:/core/ui/ControlPanel/Advanced": {
"title": "$:/core/ui/ControlPanel/Advanced",
"tags": "$:/tags/ControlPanel/Info",
"caption": "{{$:/language/ControlPanel/Advanced/Caption}}",
"text": "{{$:/language/ControlPanel/Advanced/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Advanced]!has[draft.of]]\" \"$:/core/ui/ControlPanel/TiddlerFields\">>\n</div>\n"
},
"$:/core/ui/ControlPanel/Appearance": {
"title": "$:/core/ui/ControlPanel/Appearance",
"tags": "$:/tags/ControlPanel",
"caption": "{{$:/language/ControlPanel/Appearance/Caption}}",
"text": "{{$:/language/ControlPanel/Appearance/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Appearance]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Theme\">>\n</div>\n"
},
"$:/core/ui/ControlPanel/Basics": {
"title": "$:/core/ui/ControlPanel/Basics",
"tags": "$:/tags/ControlPanel/Info",
"caption": "{{$:/language/ControlPanel/Basics/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Basics/\n\n\\define show-filter-count(filter)\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $value=\"\"\"$filter$\"\"\"/>\n<$action-setfield $tiddler=\"$:/state/tab--1498284803\" $value=\"$:/core/ui/AdvancedSearch/Filter\"/>\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n''<$count filter=\"\"\"$filter$\"\"\"/>''\n{{$:/core/images/advanced-search-button}}\n</$button>\n\\end\n\n|<<lingo Version/Prompt>> |''<<version>>'' |\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/status/UserName\"><<lingo Username/Prompt>></$link> |<$edit-text tiddler=\"$:/status/UserName\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/AnimationDuration\"><<lingo AnimDuration/Prompt>></$link> |<$edit-text tiddler=\"$:/config/AnimationDuration\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\" class=\"tc-edit-texteditor\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n|<$link to=\"$:/language/DefaultNewTiddlerTitle\"><<lingo NewTiddler/Title/Prompt>></$link> |<$edit-text tiddler=\"$:/language/DefaultNewTiddlerTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/NewJournal/Title\"><<lingo NewJournal/Title/Prompt>></$link> |<$edit-text tiddler=\"$:/config/NewJournal/Title\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/NewJournal/Text\"><<lingo NewJournal/Text/Prompt>></$link> |<$edit tiddler=\"$:/config/NewJournal/Text\" tag=\"textarea\" class=\"tc-edit-texteditor\" default=\"\"/> |\n|<$link to=\"$:/config/NewTiddler/Tags\"><<lingo NewTiddler/Tags/Prompt>></$link> |<$list filter=\"[[$:/config/NewTiddler/Tags]]\" template=\"$:/core/ui/EditTemplate/tags\"/> |\n|<$link to=\"$:/config/NewJournal/Tags\"><<lingo NewJournal/Tags/Prompt>></$link> |<$list filter=\"[[$:/config/NewJournal/Tags]]\" template=\"$:/core/ui/EditTemplate/tags\"/> |\n|<$link to=\"$:/config/AutoFocus\"><<lingo AutoFocus/Prompt>></$link> |{{$:/snippets/minifocusswitcher}} |\n|<<lingo Language/Prompt>> |{{$:/snippets/minilanguageswitcher}} |\n|<<lingo Tiddlers/Prompt>> |<<show-filter-count \"[!is[system]sort[title]]\">> |\n|<<lingo Tags/Prompt>> |<<show-filter-count \"[tags[]sort[title]]\">> |\n|<<lingo SystemTiddlers/Prompt>> |<<show-filter-count \"[is[system]sort[title]]\">> |\n|<<lingo ShadowTiddlers/Prompt>> |<<show-filter-count \"[all[shadows]sort[title]]\">> |\n|<<lingo OverriddenShadowTiddlers/Prompt>> |<<show-filter-count \"[is[tiddler]is[shadow]sort[title]]\">> |\n"
},
"$:/core/ui/ControlPanel/EditorTypes": {
"title": "$:/core/ui/ControlPanel/EditorTypes",
"tags": "$:/tags/ControlPanel/Advanced",
"caption": "{{$:/language/ControlPanel/EditorTypes/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/EditorTypes/\n\n<<lingo Hint>>\n\n<table>\n<tbody>\n<tr>\n<th><<lingo Type/Caption>></th>\n<th><<lingo Editor/Caption>></th>\n</tr>\n<$list filter=\"[all[shadows+tiddlers]prefix[$:/config/EditorTypeMappings/]sort[title]]\">\n<tr>\n<td>\n<$link>\n<$list filter=\"[all[current]removeprefix[$:/config/EditorTypeMappings/]]\">\n<$text text={{!!title}}/>\n</$list>\n</$link>\n</td>\n<td>\n<$view field=\"text\"/>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
},
"$:/core/ui/ControlPanel/Info": {
"title": "$:/core/ui/ControlPanel/Info",
"tags": "$:/tags/ControlPanel",
"caption": "{{$:/language/ControlPanel/Info/Caption}}",
"text": "{{$:/language/ControlPanel/Info/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Info]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Basics\">>\n</div>\n"
},
"$:/core/ui/ControlPanel/KeyboardShortcuts": {
"title": "$:/core/ui/ControlPanel/KeyboardShortcuts",
"tags": "$:/tags/ControlPanel",
"caption": "{{$:/language/ControlPanel/KeyboardShortcuts/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/KeyboardShortcuts/\n\n\\define new-shortcut(title)\n<div class=\"tc-dropdown-item-plain\">\n<$edit-shortcut tiddler=\"$title$\" placeholder={{$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt}} focus=\"true\" style=\"width:auto;\"/> <$button>\n<<lingo Add/Caption>>\n<$action-listops\n\t$tiddler=\"$(shortcutTitle)$\"\n\t$field=\"text\"\n\t$subfilter=\"[{$title$}]\"\n/>\n<$action-deletetiddler\n\t$tiddler=\"$title$\"\n/>\n</$button>\n</div>\n\\end\n\n\\define shortcut-list-item(caption)\n<td>\n</td>\n<td style=\"text-align:right;font-size:0.7em;\">\n<<lingo Platform/$caption$>>\n</td>\n<td>\n<div style=\"position:relative;\">\n<$button popup=<<qualify \"$:/state/dropdown/$(shortcutTitle)$\">> class=\"tc-btn-invisible\">\n{{$:/core/images/edit-button}}\n</$button>\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts={{$(shortcutTitle)$}} prefix=\"<kbd>\" separator=\"</kbd> <kbd>\" suffix=\"</kbd>\"/>\n\n<$reveal state=<<qualify \"$:/state/dropdown/$(shortcutTitle)$\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown tc-popup-keep\">\n<$list filter=\"[list[$(shortcutTitle)$!!text]sort[title]]\" variable=\"shortcut\" emptyMessage=\"\"\"\n<div class=\"tc-dropdown-item-plain\">\n//<<lingo NoShortcuts/Caption>>//\n</div>\n\"\"\">\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint}}>\n<$action-listops\n\t$tiddler=\"$(shortcutTitle)$\"\n\t$field=\"text\"\n\t$subfilter=\"+[remove<shortcut>]\"\n/>\n<small>{{$:/core/images/close-button}}</small>\n</$button>\n<kbd>\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts=<<shortcut>>/>\n</kbd>\n</div>\n</$list>\n<hr/>\n<$macrocall $name=\"new-shortcut\" title=<<qualify \"$:/state/new-shortcut/$(shortcutTitle)$\">>/>\n</div>\n</div>\n</$reveal>\n</div>\n</td>\n\\end\n\n\\define shortcut-list(caption,prefix)\n<tr>\n<$list filter=\"[[$prefix$$(shortcutName)$]]\" variable=\"shortcutTitle\">\n<<shortcut-list-item \"$caption$\">>\n</$list>\n</tr>\n\\end\n\n\\define shortcut-editor()\n<<shortcut-list \"All\" \"$:/config/shortcuts/\">>\n<<shortcut-list \"Mac\" \"$:/config/shortcuts-mac/\">>\n<<shortcut-list \"NonMac\" \"$:/config/shortcuts-not-mac/\">>\n<<shortcut-list \"Linux\" \"$:/config/shortcuts-linux/\">>\n<<shortcut-list \"NonLinux\" \"$:/config/shortcuts-not-linux/\">>\n<<shortcut-list \"Windows\" \"$:/config/shortcuts-windows/\">>\n<<shortcut-list \"NonWindows\" \"$:/config/shortcuts-not-windows/\">>\n\\end\n\n\\define shortcut-preview()\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts={{$(shortcutPrefix)$$(shortcutName)$}} prefix=\"<kbd>\" separator=\"</kbd> <kbd>\" suffix=\"</kbd>\"/>\n\\end\n\n\\define shortcut-item-inner()\n<tr>\n<td>\n<$reveal type=\"nomatch\" state=<<dropdownStateTitle>> text=\"open\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield\n\t$tiddler=<<dropdownStateTitle>>\n\t$value=\"open\"\n/>\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<dropdownStateTitle>> text=\"open\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield\n\t$tiddler=<<dropdownStateTitle>>\n\t$value=\"close\"\n/>\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n''<$text text=<<shortcutName>>/>''\n</td>\n<td>\n<$transclude tiddler=\"$:/config/ShortcutInfo/$(shortcutName)$\"/>\n</td>\n<td>\n<$list filter=\"$:/config/shortcuts/ $:/config/shortcuts-mac/ $:/config/shortcuts-not-mac/ $:/config/shortcuts-linux/ $:/config/shortcuts-not-linux/ $:/config/shortcuts-windows/ $:/config/shortcuts-not-windows/\" variable=\"shortcutPrefix\">\n<<shortcut-preview>>\n</$list>\n</td>\n</tr>\n<$set name=\"dropdownState\" value={{$(dropdownStateTitle)$}}>\n<$list filter=\"[<dropdownState>match[open]]\" variable=\"listItem\">\n<<shortcut-editor>>\n</$list>\n</$set>\n\\end\n\n\\define shortcut-item()\n<$set name=\"dropdownStateTitle\" value=<<qualify \"$:/state/dropdown/keyboardshortcut/$(shortcutName)$\">>>\n<<shortcut-item-inner>>\n</$set>\n\\end\n\n<table>\n<tbody>\n<$list filter=\"[all[shadows+tiddlers]removeprefix[$:/config/ShortcutInfo/]]\" variable=\"shortcutName\">\n<<shortcut-item>>\n</$list>\n</tbody>\n</table>\n"
},
"$:/core/ui/ControlPanel/LoadedModules": {
"title": "$:/core/ui/ControlPanel/LoadedModules",
"tags": "$:/tags/ControlPanel/Advanced",
"caption": "{{$:/language/ControlPanel/LoadedModules/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/\n<<lingo LoadedModules/Hint>>\n\n{{$:/snippets/modules}}\n"
},
"$:/core/ui/ControlPanel/Modals/AddPlugins": {
"title": "$:/core/ui/ControlPanel/Modals/AddPlugins",
"subtitle": "{{$:/core/images/download-button}} {{$:/language/ControlPanel/Plugins/Add/Caption}}",
"text": "\\define install-plugin-actions()\n<$action-sendmessage $message=\"tm-load-plugin-from-library\" url={{!!url}} title={{$(assetInfo)$!!original-title}}/>\n<$set name=\"url\" value={{!!url}}>\n<$set name=\"currentTiddler\" value=<<assetInfo>>>\n<$list filter=\"[enlist{!!dependents}] [{!!parent-plugin}] +[sort[title]]\" variable=\"dependency\">\n<$action-sendmessage $message=\"tm-load-plugin-from-library\" url=<<url>> title=<<dependency>>/>\n</$list>\n</$set>\n</$set>\n\\end\n\n\\define install-plugin-button()\n<div>\n<$set name=\"libraryVersion\" value={{{ [<assetInfo>get[version]] }}}>\n<$set name=\"installedVersion\" value={{{ [<assetInfo>get[original-title]get[version]] }}}>\n<$set name=\"reinstall-type\" value={{{ [<libraryVersion>compare:version:eq<installedVersion>then[tc-reinstall]] [<libraryVersion>compare:version:gt<installedVersion>then[tc-reinstall-upgrade]] [<libraryVersion>compare:version:lt<installedVersion>then[tc-reinstall-downgrade]] }}}>\n<$button actions=<<install-plugin-actions>> class={{{ [<assetInfo>get[original-title]has[version]then<reinstall-type>] tc-btn-invisible tc-install-plugin +[join[ ]] }}}>\n{{$:/core/images/download-button}}\n<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"ignore\" emptyMessage=\"{{$:/language/ControlPanel/Plugins/Install/Caption}}\">\n<$list filter=\"[<libraryVersion>compare:version:gt<installedVersion>]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$list filter=\"[<libraryVersion>compare:version:lt<installedVersion>]\" variable=\"ignore\" emptyMessage=\"{{$:/language/ControlPanel/Plugins/Reinstall/Caption}}\">\n{{$:/language/ControlPanel/Plugins/Downgrade/Caption}}\n</$list>\n\"\"\">\n{{$:/language/ControlPanel/Plugins/Update/Caption}}\n</$list>\n</$list>\n</$button>\n<div>\n</div>\n<$reveal stateTitle=<<assetInfo>> stateField=\"requires-reload\" type=\"match\" text=\"yes\">{{$:/language/ControlPanel/Plugins/PluginWillRequireReload}}</$reveal>\n</$set>\n</$set>\n</$set>\n</div>\n\\end\n\n\\define popup-state-macro()\n$:/state/add-plugin-info/$(connectionTiddler)$/$(assetInfo)$\n\\end\n\n\\define display-plugin-info(type)\n<$set name=\"popup-state\" value=<<popup-state-macro>>>\n<div class=\"tc-plugin-info\">\n<div class=\"tc-plugin-info-chunk tc-plugin-info-toggle\">\n<$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n{{$:/core/images/chevron-right}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<popup-state>> text=\"yes\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\n<$list filter=\"[<assetInfo>has[icon]]\" emptyMessage=\"\"\"<$transclude tiddler=\"$:/core/images/plugin-generic-$type$\"/>\"\"\">\n<img src={{$(assetInfo)$!!icon}}/>\n</$list>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-description\">\n<h1><strong><$text text={{{ [<assetInfo>get[name]] ~[<assetInfo>get[original-title]split[/]last[1]] }}}/></strong>: <$view tiddler=<<assetInfo>> field=\"description\"/></h1>\n<h2><$view tiddler=<<assetInfo>> field=\"original-title\"/></h2>\n<div><em><$view tiddler=<<assetInfo>> field=\"version\"/></em></div>\n<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"installedVersion\"><div><em>{{$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint}}</em></div></$list>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-buttons\">\n<<install-plugin-button>>\n</div>\n</div>\n<$set name=\"original-title\" value={{{ [<assetInfo>get[original-title]] }}}>\n<$reveal type=\"match\" text=\"yes\" state=<<popup-state>>>\n<div class=\"tc-plugin-info-dropdown\">\n<$list filter=\"[enlist{!!dependents}] [<currentTiddler>get[parent-plugin]] +[limit[1]] ~[<assetInfo>get[original-title]!is[tiddler]]\" variable=\"ignore\">\n<div class=\"tc-plugin-info-dropdown-message\">\n<$list filter=\"[<assetInfo>get[original-title]!is[tiddler]]\">\n{{$:/language/ControlPanel/Plugins/NotInstalled/Hint}}\n</$list>\n<$set name=\"currentTiddler\" value=<<assetInfo>>>\n<$list filter=\"[enlist{!!dependents}] [<currentTiddler>get[parent-plugin]] +[limit[1]]\" variable=\"ignore\">\n<div>\n{{$:/language/ControlPanel/Plugins/AlsoRequires}}\n<$list filter=\"[enlist{!!dependents}] [{!!parent-plugin}] +[sort[title]]\" variable=\"dependency\">\n<$text text=<<dependency>>/>\n</$list>\n</div>\n</$list>\n</$set>\n</div>\n</$list>\n<div class=\"tc-plugin-info-dropdown-body\">\n<$transclude tiddler=<<assetInfo>> field=\"readme\" mode=\"block\"/>\n</div>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>limit[1]]\" variable=\"ignore\">\n<div class=\"tc-plugin-info-sub-plugins\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>sort[title]]\" variable=\"assetInfo\">\n<<display-plugin-info \"$type$\">>\n</$list>\n</div>\n</$list>\n</div>\n</$reveal>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>limit[1]]\" variable=\"ignore\">\n<$reveal type=\"nomatch\" text=\"yes\" state=<<popup-state>> tag=\"div\" class=\"tc-plugin-info-sub-plugin-indicator\">\n<$wikify name=\"count\" text=\"\"\"<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>]\"/>\"\"\">\n<$button class=\"tc-btn-invisible\" set=<<popup-state>> setTo=\"yes\">\n{{$:/language/ControlPanel/Plugins/SubPluginPrompt}}\n</$button>\n</$wikify>\n</$reveal>\n</$list>\n</$set>\n</$set>\n\\end\n\n\\define load-plugin-library-button()\n<$button class=\"tc-btn-big-green\">\n<$action-sendmessage $message=\"tm-load-plugin-library\" url={{!!url}} infoTitlePrefix=\"$:/temp/RemoteAssetInfo/\"/>\n{{$:/core/images/chevron-right}} {{$:/language/ControlPanel/Plugins/OpenPluginLibrary}}\n</$button>\n\\end\n\n\\define display-server-assets(type)\n{{$:/language/Search/Search}}: <$edit-text tiddler=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" default=\"\" type=\"search\" tag=\"input\"/>\n<$reveal state=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n<div class=\"tc-plugin-library-listing\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]search:author,description,original-title,readme,title{$:/temp/RemoteAssetSearch/$(currentTiddler)$}sort[title]]\" variable=\"assetInfo\">\n<$list filter=\"[[$:/temp/RemoteAssetSearch/$(currentTiddler)$]has[text]] ~[<assetInfo>!has[parent-plugin]]\" variable=\"ignore\"><!-- Hide sub-plugins if we're not searching -->\n<<display-plugin-info \"$type$\">>\n</$list>\n</$list>\n</div>\n\\end\n\n\\define display-server-connection()\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/ServerConnection]suffix{!!url}]\" variable=\"connectionTiddler\" emptyMessage=<<load-plugin-library-button>>>\n\n<$set name=\"transclusion\" value=<<connectionTiddler>>>\n\n<<tabs \"[[$:/core/ui/ControlPanel/Plugins/Add/Updates]] [[$:/core/ui/ControlPanel/Plugins/Add/Plugins]] [[$:/core/ui/ControlPanel/Plugins/Add/Themes]] [[$:/core/ui/ControlPanel/Plugins/Add/Languages]]\" \"$:/core/ui/ControlPanel/Plugins/Add/Plugins\">>\n\n</$set>\n\n</$list>\n\\end\n\n\\define close-library-button()\n<$reveal type='nomatch' state='$:/temp/ServerConnection/$(PluginLibraryURL)$' text=''>\n<$button class='tc-btn-big-green'>\n<$action-sendmessage $message=\"tm-unload-plugin-library\" url={{!!url}}/>\n{{$:/core/images/chevron-left}} {{$:/language/ControlPanel/Plugins/ClosePluginLibrary}}\n<$action-deletetiddler $filter=\"[prefix[$:/temp/ServerConnection/$(PluginLibraryURL)$]][prefix[$:/temp/RemoteAssetInfo/$(PluginLibraryURL)$]]\"/>\n</$button>\n</$reveal>\n\\end\n\n\\define plugin-library-listing()\n<div class=\"tc-tab-set\">\n<$set name=\"defaultTab\" value={{{ [all[tiddlers+shadows]tag[$:/tags/PluginLibrary]] }}}>\n<div class=\"tc-tab-buttons\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/PluginLibrary]]\">\n<$button set=<<qualify \"$:/state/addplugins/tab\">> setTo=<<currentTiddler>> default=<<defaultTab>> selectedClass=\"tc-tab-selected\">\n<$set name=\"tv-wikilinks\" value=\"no\">\n<$transclude field=\"caption\"/>\n</$set>\n</$button>\n</$list>\n</div>\n<div class=\"tc-tab-divider\"/>\n<div class=\"tc-tab-content\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/PluginLibrary]]\">\n<$reveal type=\"match\" state=<<qualify \"$:/state/addplugins/tab\">> text=<<currentTiddler>> default=<<defaultTab>>>\n<h2><$link><$transclude field=\"caption\"><$view field=\"title\"/></$transclude></$link></h2>\n//<$view field=\"url\"/>//\n<$transclude mode=\"block\"/>\n<$set name=PluginLibraryURL value={{!!url}}>\n<<close-library-button>>\n</$set>\n<<display-server-connection>>\n</$reveal>\n</$list>\n</div>\n</$set>\n</div>\n\\end\n\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<div>\n<<plugin-library-listing>>\n</div>\n"
},
"$:/core/ui/ControlPanel/Palette": {
"title": "$:/core/ui/ControlPanel/Palette",
"tags": "$:/tags/ControlPanel/Appearance",
"caption": "{{$:/language/ControlPanel/Palette/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Palette/\n\n{{$:/snippets/paletteswitcher}}\n\n<$reveal type=\"nomatch\" state=\"$:/state/ShowPaletteEditor\" text=\"yes\">\n\n<$button set=\"$:/state/ShowPaletteEditor\" setTo=\"yes\"><<lingo ShowEditor/Caption>></$button>\n\n</$reveal>\n\n<$reveal type=\"match\" state=\"$:/state/ShowPaletteEditor\" text=\"yes\">\n\n<$button set=\"$:/state/ShowPaletteEditor\" setTo=\"no\"><<lingo HideEditor/Caption>></$button>\n{{$:/PaletteManager}}\n\n</$reveal>\n\n"
},
"$:/core/ui/ControlPanel/Parsing": {
"title": "$:/core/ui/ControlPanel/Parsing",
"tags": "$:/tags/ControlPanel/Advanced",
"caption": "{{$:/language/ControlPanel/Parsing/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Parsing/\n\n\\define toggle(Type)\n<$checkbox\ntiddler=\"\"\"$:/config/WikiParserRules/$Type$/$(rule)$\"\"\"\nfield=\"text\"\nchecked=\"enable\"\nunchecked=\"disable\"\ndefault=\"enable\">\n<<rule>>\n</$checkbox>\n\\end\n\n\\define rules(type,Type)\n<$list filter=\"[wikiparserrules[$type$]]\" variable=\"rule\">\n<dd><<toggle $Type$>></dd>\n</$list>\n\\end\n\n<<lingo Hint>>\n\n<dl>\n<dt><<lingo Pragma/Caption>></dt>\n<<rules pragma Pragma>>\n<dt><<lingo Inline/Caption>></dt>\n<<rules inline Inline>>\n<dt><<lingo Block/Caption>></dt>\n<<rules block Block>>\n</dl>"
},
"$:/core/ui/ControlPanel/Plugins/Add/Languages": {
"title": "$:/core/ui/ControlPanel/Plugins/Add/Languages",
"caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}} (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[language]]\"/>)",
"text": "<<display-server-assets language>>\n"
},
"$:/core/ui/ControlPanel/Plugins/Add/Plugins": {
"title": "$:/core/ui/ControlPanel/Plugins/Add/Plugins",
"caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}} (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[plugin]]\"/>)",
"text": "<<display-server-assets plugin>>\n"
},
"$:/core/ui/ControlPanel/Plugins/Add/Themes": {
"title": "$:/core/ui/ControlPanel/Plugins/Add/Themes",
"caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}} (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[theme]]\"/>)",
"text": "<<display-server-assets theme>>\n"
},
"$:/core/ui/ControlPanel/Plugins/Add/Updates": {
"title": "$:/core/ui/ControlPanel/Plugins/Add/Updates",
"caption": "<$importvariables filter=\"$:/core/ui/ControlPanel/Plugins/Add/Updates\">{{$:/language/ControlPanel/Plugins/Updates/Caption}} (<<update-count>>)</$importvariables>",
"text": "\\define each-updateable-plugin(body)\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}sort[title]]\" variable=\"assetInfo\">\n<$set name=\"libraryVersion\" value={{{ [<assetInfo>get[version]] }}}>\n<$list filter=\"[<assetInfo>get[original-title]has[version]!version<libraryVersion>]\" variable=\"ignore\">\n<$set name=\"installedVersion\" value={{{ [<assetInfo>get[original-title]get[version]] }}}>\n<$list filter=\"[<installedversion>!match<libraryVersion>]\" variable=\"ignore\">\n$body$\n</$list>\n</$set>\n</$list>\n</$set>\n</$list>\n\\end\n\n\\define update-all-actions()\n<$macrocall $name=\"each-updateable-plugin\" body=\"\"\"\n<<install-plugin-actions>>\n\"\"\"/>\n\\end\n\n\\define update-count()\n<$wikify name=\"count-filter\" text=<<each-updateable-plugin \"[[<$text text=<<assetInfo>>/>]]\">>><$count filter=<<count-filter>>/></$wikify>\n\\end\n\n<$button actions=<<update-all-actions>> class=\"tc-btn-invisible tc-install-plugin tc-reinstall-upgrade\">\n{{$:/core/images/download-button}} {{||$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption}}\n</$button>\n\n<div class=\"tc-plugin-library-listing\">\n<$macrocall $name=\"each-updateable-plugin\" body=\"\"\"\n<$macrocall $name=\"display-plugin-info\" type={{{ [<assetInfo>get[original-plugin-type]] }}}/>\n\"\"\"/>\n</div>\n"
},
"$:/core/ui/ControlPanel/Plugins/AddPlugins": {
"title": "$:/core/ui/ControlPanel/Plugins/AddPlugins",
"text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n<$button message=\"tm-modal\" param=\"$:/core/ui/ControlPanel/Modals/AddPlugins\" tooltip={{$:/language/ControlPanel/Plugins/Add/Hint}} class=\"tc-btn-big-green tc-primary-btn\">\n{{$:/core/images/download-button}} <<lingo Add/Caption>>\n</$button>\n"
},
"$:/core/ui/ControlPanel/Plugins/Installed/Languages": {
"title": "$:/core/ui/ControlPanel/Plugins/Installed/Languages",
"caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[language]]\"/>)",
"text": "<<plugin-table language>>\n"
},
"$:/core/ui/ControlPanel/Plugins/Installed/Plugins": {
"title": "$:/core/ui/ControlPanel/Plugins/Installed/Plugins",
"caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[plugin]]\"/>)",
"text": "<<plugin-table plugin>>\n"
},
"$:/core/ui/ControlPanel/Plugins/Installed/Themes": {
"title": "$:/core/ui/ControlPanel/Plugins/Installed/Themes",
"caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[theme]]\"/>)",
"text": "<<plugin-table theme>>\n"
},
"$:/core/ui/ControlPanel/Plugins": {
"title": "$:/core/ui/ControlPanel/Plugins",
"tags": "$:/tags/ControlPanel",
"caption": "{{$:/language/ControlPanel/Plugins/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n\\define plugin-table(type)\n<$set name=\"plugin-type\" value=\"\"\"$type$\"\"\">\n<$set name=\"qualified-state\" value=<<qualify \"$:/state/plugin-info\">>>\n<$list filter=\"[!has[draft.of]plugin-type[$type$]sort[title]]\" emptyMessage=<<lingo \"Empty/Hint\">> template=\"$:/core/ui/Components/plugin-info\"/>\n</$set>\n</$set>\n\\end\n\n{{$:/core/ui/ControlPanel/Plugins/AddPlugins}}\n\n<<lingo Installed/Hint>>\n\n<<tabs \"[[$:/core/ui/ControlPanel/Plugins/Installed/Plugins]] [[$:/core/ui/ControlPanel/Plugins/Installed/Themes]] [[$:/core/ui/ControlPanel/Plugins/Installed/Languages]]\" \"$:/core/ui/ControlPanel/Plugins/Installed/Plugins\">>\n"
},
"$:/core/ui/ControlPanel/Saving/DownloadSaver": {
"title": "$:/core/ui/ControlPanel/Saving/DownloadSaver",
"tags": "$:/tags/ControlPanel/Saving",
"caption": "{{$:/language/ControlPanel/Saving/DownloadSaver/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Saving/DownloadSaver/\n\n<<lingo Hint>>\n\n!! <$link to=\"$:/config/DownloadSaver/AutoSave\"><<lingo AutoSave/Hint>></$link>\n\n<$checkbox tiddler=\"$:/config/DownloadSaver/AutoSave\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <<lingo AutoSave/Description>> </$checkbox>\n"
},
"$:/core/ui/ControlPanel/Saving/General": {
"title": "$:/core/ui/ControlPanel/Saving/General",
"tags": "$:/tags/ControlPanel/Saving",
"caption": "{{$:/language/ControlPanel/Saving/General/Caption}}",
"list-before": "",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/\n\n{{$:/language/ControlPanel/Saving/General/Hint}}\n\n!! <$link to=\"$:/config/AutoSave\"><<lingo AutoSave/Caption>></$link>\n\n<<lingo AutoSave/Hint>>\n\n<$radio tiddler=\"$:/config/AutoSave\" value=\"yes\"> <<lingo AutoSave/Enabled/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/AutoSave\" value=\"no\"> <<lingo AutoSave/Disabled/Description>> </$radio>\n"
},
"$:/core/ui/ControlPanel/Saving/GitHub": {
"title": "$:/core/ui/ControlPanel/Saving/GitHub",
"tags": "$:/tags/ControlPanel/Saving",
"caption": "{{$:/language/ControlPanel/Saving/GitService/GitHub/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~GitHub\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/GitHub/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo GitHub/Password>> |<$password name=\"github\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/GitHub/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/GitHub/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/GitHub/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/GitHub/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/GitHub/ServerURL\" default=\"https://api.github.com\" tag=\"input\"/> |"
},
"$:/core/ui/ControlPanel/Saving/GitLab": {
"title": "$:/core/ui/ControlPanel/Saving/GitLab",
"tags": "$:/tags/ControlPanel/Saving",
"caption": "{{$:/language/ControlPanel/Saving/GitService/GitLab/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~GitLab\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/GitLab/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo GitLab/Password>> |<$password name=\"gitlab\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/GitLab/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/GitLab/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/GitLab/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/GitLab/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/GitLab/ServerURL\" default=\"https://gitlab.com/api/v4\" tag=\"input\"/> |"
},
"$:/core/ui/ControlPanel/Saving/TiddlySpot": {
"title": "$:/core/ui/ControlPanel/Saving/TiddlySpot",
"tags": "$:/tags/ControlPanel/Saving",
"caption": "{{$:/language/ControlPanel/Saving/TiddlySpot/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Saving/TiddlySpot/\n\n\\define backupURL()\nhttp://$(userName)$.tiddlyspot.com/backup/\n\\end\n\\define backupLink()\n<$reveal type=\"nomatch\" state=\"$:/UploadName\" text=\"\">\n<$set name=\"userName\" value={{$:/UploadName}}>\n<$reveal type=\"match\" state=\"$:/UploadURL\" text=\"\">\n<<backupURL>>\n</$reveal>\n<$reveal type=\"nomatch\" state=\"$:/UploadURL\" text=\"\">\n<$macrocall $name=resolvePath source={{$:/UploadBackupDir}} root={{$:/UploadURL}}>>\n</$reveal>\n</$set>\n</$reveal>\n\\end\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/UploadName\" default=\"\" tag=\"input\"/> |\n|<<lingo Password>> |<$password name=\"upload\"/> |\n|<<lingo Backups>> |<<backupLink>> |\n\n''<<lingo Advanced/Heading>>''\n\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/UploadURL\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/UploadFilename\" default=\"index.html\" tag=\"input\"/> |\n|<<lingo UploadDir>> |<$edit-text tiddler=\"$:/UploadDir\" default=\".\" tag=\"input\"/> |\n|<<lingo BackupDir>> |<$edit-text tiddler=\"$:/UploadBackupDir\" default=\".\" tag=\"input\"/> |\n\n<<lingo TiddlySpot/Hint>>"
},
"$:/core/ui/ControlPanel/Saving/Gitea": {
"title": "$:/core/ui/ControlPanel/Saving/Gitea",
"tags": "$:/tags/ControlPanel/Saving",
"caption": "{{$:/language/ControlPanel/Saving/GitService/Gitea/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~Gitea\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/Gitea/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo Gitea/Password>> |<$password name=\"Gitea\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/Gitea/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/Gitea/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/Gitea/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/Gitea/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/Gitea/ServerURL\" default=\"https://gitea/api/v1\" tag=\"input\"/> |\n"
},
"$:/core/ui/ControlPanel/Saving": {
"title": "$:/core/ui/ControlPanel/Saving",
"tags": "$:/tags/ControlPanel",
"caption": "{{$:/language/ControlPanel/Saving/Caption}}",
"text": "{{$:/language/ControlPanel/Saving/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Saving]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Saving/General\">>\n</div>\n"
},
"$:/core/buttonstyles/Borderless": {
"title": "$:/core/buttonstyles/Borderless",
"tags": "$:/tags/ToolbarButtonStyle",
"caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless}}",
"text": "tc-btn-invisible"
},
"$:/core/buttonstyles/Boxed": {
"title": "$:/core/buttonstyles/Boxed",
"tags": "$:/tags/ToolbarButtonStyle",
"caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed}}",
"text": "tc-btn-boxed"
},
"$:/core/buttonstyles/Rounded": {
"title": "$:/core/buttonstyles/Rounded",
"tags": "$:/tags/ToolbarButtonStyle",
"caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded}}",
"text": "tc-btn-rounded"
},
"$:/core/ui/ControlPanel/Settings/CamelCase": {
"title": "$:/core/ui/ControlPanel/Settings/CamelCase",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/CamelCase/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/CamelCase/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/WikiParserRules/Inline/wikilink\" field=\"text\" checked=\"enable\" unchecked=\"disable\" default=\"enable\"> <$link to=\"$:/config/WikiParserRules/Inline/wikilink\"><<lingo Description>></$link> </$checkbox>\n"
},
"$:/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab": {
"title": "$:/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab",
"caption": "{{$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption}}",
"tags": "$:/tags/ControlPanel/Settings",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/DefaultMoreSidebarTab/\n\n<$link to=\"$:/config/DefaultMoreSidebarTab\"><<lingo Hint>></$link>\n\n<$select tiddler=\"$:/config/DefaultMoreSidebarTab\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]\">\n<option value=<<currentTiddler>>><$transclude field=\"caption\"><$text text=<<currentTiddler>>/></$transclude></option>\n</$list>\n</$select>\n"
},
"$:/core/ui/ControlPanel/Settings/DefaultSidebarTab": {
"title": "$:/core/ui/ControlPanel/Settings/DefaultSidebarTab",
"caption": "{{$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption}}",
"tags": "$:/tags/ControlPanel/Settings",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/DefaultSidebarTab/\n\n<$link to=\"$:/config/DefaultSidebarTab\"><<lingo Hint>></$link>\n\n<$select tiddler=\"$:/config/DefaultSidebarTab\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]]\">\n<option value=<<currentTiddler>>><$transclude field=\"caption\"><$text text=<<currentTiddler>>/></$transclude></option>\n</$list>\n</$select>\n"
},
"$:/core/ui/ControlPanel/Settings/EditorToolbar": {
"title": "$:/core/ui/ControlPanel/Settings/EditorToolbar",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/EditorToolbar/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/EditorToolbar/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/TextEditor/EnableToolbar\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/TextEditor/EnableToolbar\"><<lingo Description>></$link> </$checkbox>\n\n"
},
"$:/core/ui/ControlPanel/Settings/InfoPanelMode": {
"title": "$:/core/ui/ControlPanel/Settings/InfoPanelMode",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/InfoPanelMode/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/InfoPanelMode/\n<$link to=\"$:/config/TiddlerInfo/Mode\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/TiddlerInfo/Mode\" value=\"popup\"> <<lingo Popup/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/TiddlerInfo/Mode\" value=\"sticky\"> <<lingo Sticky/Description>> </$radio>\n"
},
"$:/core/ui/ControlPanel/Settings/LinkToBehaviour": {
"title": "$:/core/ui/ControlPanel/Settings/LinkToBehaviour",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/LinkToBehaviour/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/LinkToBehaviour/\n\n<$link to=\"$:/config/Navigation/openLinkFromInsideRiver\"><<lingo \"InsideRiver/Hint\">></$link>\n\n<$select tiddler=\"$:/config/Navigation/openLinkFromInsideRiver\">\n <option value=\"above\"><<lingo \"OpenAbove\">></option>\n <option value=\"below\"><<lingo \"OpenBelow\">></option>\n <option value=\"top\"><<lingo \"OpenAtTop\">></option>\n <option value=\"bottom\"><<lingo \"OpenAtBottom\">></option>\n</$select>\n\n<$link to=\"$:/config/Navigation/openLinkFromOutsideRiver\"><<lingo \"OutsideRiver/Hint\">></$link>\n\n<$select tiddler=\"$:/config/Navigation/openLinkFromOutsideRiver\">\n <option value=\"top\"><<lingo \"OpenAtTop\">></option>\n <option value=\"bottom\"><<lingo \"OpenAtBottom\">></option>\n</$select>\n"
},
"$:/core/ui/ControlPanel/Settings/MissingLinks": {
"title": "$:/core/ui/ControlPanel/Settings/MissingLinks",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/MissingLinks/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/MissingLinks/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/MissingLinks\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/MissingLinks\"><<lingo Description>></$link> </$checkbox>\n\n"
},
"$:/core/ui/ControlPanel/Settings/NavigationAddressBar": {
"title": "$:/core/ui/ControlPanel/Settings/NavigationAddressBar",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/NavigationAddressBar/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationAddressBar/\n\n<$link to=\"$:/config/Navigation/UpdateAddressBar\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"permaview\"> <<lingo Permaview/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"permalink\"> <<lingo Permalink/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
},
"$:/core/ui/ControlPanel/Settings/NavigationHistory": {
"title": "$:/core/ui/ControlPanel/Settings/NavigationHistory",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/NavigationHistory/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationHistory/\n<$link to=\"$:/config/Navigation/UpdateHistory\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateHistory\" value=\"yes\"> <<lingo Yes/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateHistory\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
},
"$:/core/ui/ControlPanel/Settings/NavigationPermalinkviewMode": {
"title": "$:/core/ui/ControlPanel/Settings/NavigationPermalinkviewMode",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationPermalinkviewMode/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Navigation/Permalinkview/CopyToClipboard\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Navigation/Permalinkview/CopyToClipboard\"><<lingo CopyToClipboard/Description>></$link> </$checkbox>\n\n<$checkbox tiddler=\"$:/config/Navigation/Permalinkview/UpdateAddressBar\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Navigation/Permalinkview/UpdateAddressBar\"><<lingo UpdateAddressBar/Description>></$link> </$checkbox>\n"
},
"$:/core/ui/ControlPanel/Settings/PerformanceInstrumentation": {
"title": "$:/core/ui/ControlPanel/Settings/PerformanceInstrumentation",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/PerformanceInstrumentation/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Performance/Instrumentation\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Performance/Instrumentation\"><<lingo Description>></$link> </$checkbox>\n"
},
"$:/core/ui/ControlPanel/Settings/TitleLinks": {
"title": "$:/core/ui/ControlPanel/Settings/TitleLinks",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/TitleLinks/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/TitleLinks/\n<$link to=\"$:/config/Tiddlers/TitleLinks\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Tiddlers/TitleLinks\" value=\"yes\"> <<lingo Yes/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Tiddlers/TitleLinks\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
},
"$:/core/ui/ControlPanel/Settings/ToolbarButtonStyle": {
"title": "$:/core/ui/ControlPanel/Settings/ToolbarButtonStyle",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/ToolbarButtonStyle/\n<$link to=\"$:/config/Toolbar/ButtonClass\"><<lingo \"Hint\">></$link>\n\n<$select tiddler=\"$:/config/Toolbar/ButtonClass\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ToolbarButtonStyle]]\">\n<option value={{!!text}}>{{!!caption}}</option>\n</$list>\n</$select>\n"
},
"$:/core/ui/ControlPanel/Settings/ToolbarButtons": {
"title": "$:/core/ui/ControlPanel/Settings/ToolbarButtons",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/ToolbarButtons/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/ToolbarButtons/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Toolbar/Icons\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Toolbar/Icons\"><<lingo Icons/Description>></$link> </$checkbox>\n\n<$checkbox tiddler=\"$:/config/Toolbar/Text\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Toolbar/Text\"><<lingo Text/Description>></$link> </$checkbox>\n"
},
"$:/core/ui/ControlPanel/Settings": {
"title": "$:/core/ui/ControlPanel/Settings",
"tags": "$:/tags/ControlPanel",
"caption": "{{$:/language/ControlPanel/Settings/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/\n\n<<lingo Hint>>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Settings]]\">\n\n<div style=\"border-top:1px solid #eee;\">\n\n!! <$link><$transclude field=\"caption\"/></$link>\n\n<$transclude/>\n\n</div>\n\n</$list>\n"
},
"$:/core/ui/ControlPanel/StoryView": {
"title": "$:/core/ui/ControlPanel/StoryView",
"tags": "$:/tags/ControlPanel/Appearance",
"caption": "{{$:/language/ControlPanel/StoryView/Caption}}",
"text": "{{$:/snippets/viewswitcher}}\n"
},
"$:/core/ui/ControlPanel/Stylesheets": {
"title": "$:/core/ui/ControlPanel/Stylesheets",
"tags": "$:/tags/ControlPanel/Advanced",
"caption": "{{$:/language/ControlPanel/Stylesheets/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/\n\n<<lingo Stylesheets/Hint>>\n\n{{$:/snippets/peek-stylesheets}}\n"
},
"$:/core/ui/ControlPanel/Theme": {
"title": "$:/core/ui/ControlPanel/Theme",
"tags": "$:/tags/ControlPanel/Appearance",
"caption": "{{$:/language/ControlPanel/Theme/Caption}}",
"text": "{{$:/snippets/themeswitcher}}\n"
},
"$:/core/ui/ControlPanel/TiddlerFields": {
"title": "$:/core/ui/ControlPanel/TiddlerFields",
"tags": "$:/tags/ControlPanel/Advanced",
"caption": "{{$:/language/ControlPanel/TiddlerFields/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/\n\n<<lingo TiddlerFields/Hint>>\n\n{{$:/snippets/allfields}}"
},
"$:/core/ui/ControlPanel/Toolbars/EditToolbar": {
"title": "$:/core/ui/ControlPanel/Toolbars/EditToolbar",
"tags": "$:/tags/ControlPanel/Toolbars",
"caption": "{{$:/language/ControlPanel/Toolbars/EditToolbar/Caption}}",
"text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/EditToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/EditToolbar/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/EditToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>"
},
"$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate": {
"title": "$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate",
"text": "\\define config-title()\n$(config-base)$$(currentTiddler)$\n\\end\n\n<$draggable tiddler=<<currentTiddler>>>\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <span class=\"tc-icon-wrapper\"><$transclude tiddler={{!!icon}}/></span> <$transclude field=\"caption\"/> -- <i class=\"tc-muted\"><$transclude field=\"description\"/></i>\n</$draggable>\n"
},
"$:/core/ui/ControlPanel/Toolbars/EditorToolbar": {
"title": "$:/core/ui/ControlPanel/Toolbars/EditorToolbar",
"tags": "$:/tags/ControlPanel/Toolbars",
"caption": "{{$:/language/ControlPanel/Toolbars/EditorToolbar/Caption}}",
"text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/EditorToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/EditorToolbar/Hint}}\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/EditorToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate\"/>\n"
},
"$:/core/ui/ControlPanel/Toolbars/ItemTemplate": {
"title": "$:/core/ui/ControlPanel/Toolbars/ItemTemplate",
"text": "\\define config-title()\n$(config-base)$$(currentTiddler)$\n\\end\n\n<$draggable tiddler=<<currentTiddler>>>\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <span class=\"tc-icon-wrapper\"> <$transclude field=\"caption\"/> <i class=\"tc-muted\">-- <$transclude field=\"description\"/></i></span>\n</$draggable>\n"
},
"$:/core/ui/ControlPanel/Toolbars/PageControls": {
"title": "$:/core/ui/ControlPanel/Toolbars/PageControls",
"tags": "$:/tags/ControlPanel/Toolbars",
"caption": "{{$:/language/ControlPanel/Toolbars/PageControls/Caption}}",
"text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/PageControlButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/PageControls/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/PageControls\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>\n"
},
"$:/core/ui/ControlPanel/Toolbars/ViewToolbar": {
"title": "$:/core/ui/ControlPanel/Toolbars/ViewToolbar",
"tags": "$:/tags/ControlPanel/Toolbars",
"caption": "{{$:/language/ControlPanel/Toolbars/ViewToolbar/Caption}}",
"text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/ViewToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/ViewToolbar/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/ViewToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>\n"
},
"$:/core/ui/ControlPanel/Toolbars": {
"title": "$:/core/ui/ControlPanel/Toolbars",
"tags": "$:/tags/ControlPanel/Appearance",
"caption": "{{$:/language/ControlPanel/Toolbars/Caption}}",
"text": "{{$:/language/ControlPanel/Toolbars/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Toolbars]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Toolbars/ViewToolbar\" \"$:/state/tabs/controlpanel/toolbars\" \"tc-vertical\">>\n</div>\n"
},
"$:/ControlPanel": {
"title": "$:/ControlPanel",
"icon": "$:/core/images/options-button",
"color": "#bbb",
"text": "<div class=\"tc-control-panel\">\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/ControlPanel]!has[draft.of]]\" \"$:/core/ui/ControlPanel/Info\">>\n</div>\n"
},
"$:/core/ui/DefaultSearchResultList": {
"title": "$:/core/ui/DefaultSearchResultList",
"tags": "$:/tags/SearchResults",
"caption": "{{$:/language/Search/DefaultResults/Caption}}",
"text": "\\define searchResultList()\n//<small>{{$:/language/Search/Matches/Title}}</small>//\n\n<$list filter=\"[!is[system]search:title{$(searchTiddler)$}sort[title]limit[250]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n\n//<small>{{$:/language/Search/Matches/All}}</small>//\n\n<$list filter=\"[!is[system]search{$(searchTiddler)$}sort[title]limit[250]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n\n\\end\n<<searchResultList>>\n"
},
"$:/core/ui/EditTemplate/body/preview/diffs-current": {
"title": "$:/core/ui/EditTemplate/body/preview/diffs-current",
"tags": "$:/tags/EditPreview",
"caption": "differences from current",
"list-after": "$:/core/ui/EditTemplate/body/preview/output",
"text": "<$list filter=\"[<currentTiddler>!is[image]]\" emptyMessage={{$:/core/ui/EditTemplate/body/preview/output}}>\n\n<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle={{!!draft.of}} destTiddlerTitle=<<currentTiddler>>/>\n\n</$list>\n\n"
},
"$:/core/ui/EditTemplate/body/preview/diffs-shadow": {
"title": "$:/core/ui/EditTemplate/body/preview/diffs-shadow",
"tags": "$:/tags/EditPreview",
"caption": "differences from shadow (if any)",
"list-after": "$:/core/ui/EditTemplate/body/preview/output",
"text": "<$list filter=\"[<currentTiddler>!is[image]]\" emptyMessage={{$:/core/ui/EditTemplate/body/preview/output}}>\n\n<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle={{{ [{!!draft.of}shadowsource[]] }}} sourceSubTiddlerTitle={{!!draft.of}} destTiddlerTitle=<<currentTiddler>>/>\n\n</$list>\n\n"
},
"$:/core/ui/EditTemplate/body/preview/output": {
"title": "$:/core/ui/EditTemplate/body/preview/output",
"tags": "$:/tags/EditPreview",
"caption": "{{$:/language/EditTemplate/Body/Preview/Type/Output}}",
"text": "\\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]]\n<$set name=\"tv-tiddler-preview\" value=\"yes\">\n\n<$transclude />\n\n</$set>\n"
},
"$:/state/showeditpreview": {
"title": "$:/state/showeditpreview",
"text": "no"
},
"$:/core/ui/EditTemplate/body/editor": {
"title": "$:/core/ui/EditTemplate/body/editor",
"text": "<$edit\n\n field=\"text\"\n class=\"tc-edit-texteditor tc-edit-texteditor-body\"\n placeholder={{$:/language/EditTemplate/Body/Placeholder}}\n tabindex={{$:/config/EditTabIndex}}\n focus={{{ [{$:/config/AutoFocus}match[text]then[true]] ~[[false]] }}}\n\n><$set\n\n name=\"targetTiddler\"\n value=<<currentTiddler>>\n\n><$list\n\n filter=\"[all[shadows+tiddlers]tag[$:/tags/EditorToolbar]!has[draft.of]]\"\n\n><$reveal\n\n type=\"nomatch\"\n state=<<config-visibility-title>>\n text=\"hide\"\n class=\"tc-text-editor-toolbar-item-wrapper\"\n\n><$transclude\n\n tiddler=\"$:/core/ui/EditTemplate/body/toolbar/button\"\n mode=\"inline\"\n\n/></$reveal></$list></$set></$edit>\n"
},
"$:/core/ui/EditTemplate/body/toolbar/button": {
"title": "$:/core/ui/EditTemplate/body/toolbar/button",
"text": "\\define toolbar-button-icon()\n<$list\n\n filter=\"[all[current]!has[custom-icon]]\"\n variable=\"no-custom-icon\"\n\n><$transclude\n\n tiddler={{!!icon}}\n\n/></$list>\n\\end\n\n\\define toolbar-button-tooltip()\n{{!!description}}<$macrocall $name=\"displayshortcuts\" $output=\"text/plain\" shortcuts={{!!shortcuts}} prefix=\"` - [\" separator=\"] [\" suffix=\"]`\"/>\n\\end\n\n\\define toolbar-button()\n<$list\n\n filter={{!!condition}}\n variable=\"list-condition\"\n\n><$wikify\n\n name=\"tooltip-text\"\n text=<<toolbar-button-tooltip>>\n mode=\"inline\"\n output=\"text\"\n\n><$list\n\n filter=\"[all[current]!has[dropdown]]\"\n variable=\"no-dropdown\"\n\n><$button\n\n class=\"tc-btn-invisible $(buttonClasses)$\"\n tooltip=<<tooltip-text>>\n actions={{!!actions}}\n\n><span\n\n data-tw-keyboard-shortcut={{!!shortcuts}}\n\n/><<toolbar-button-icon>><$transclude\n\n tiddler=<<currentTiddler>>\n field=\"text\"\n\n/></$button></$list><$list\n\n filter=\"[all[current]has[dropdown]]\"\n variable=\"dropdown\"\n\n><$set\n\n name=\"dropdown-state\"\n value=<<qualify \"$:/state/EditorToolbarDropdown\">>\n\n><$button\n\n popup=<<dropdown-state>>\n class=\"tc-popup-keep tc-btn-invisible $(buttonClasses)$\"\n selectedClass=\"tc-selected\"\n tooltip=<<tooltip-text>>\n actions={{!!actions}}\n\n><span\n\n data-tw-keyboard-shortcut={{!!shortcuts}}\n\n/><<toolbar-button-icon>><$transclude\n\n tiddler=<<currentTiddler>>\n field=\"text\"\n\n/></$button><$reveal\n\n state=<<dropdown-state>>\n type=\"popup\"\n position=\"below\"\n animate=\"yes\"\n tag=\"span\"\n\n><div\n\n class=\"tc-drop-down tc-popup-keep\"\n\n><$transclude\n\n tiddler={{!!dropdown}}\n mode=\"block\"\n\n/></div></$reveal></$set></$list></$wikify></$list>\n\\end\n\n\\define toolbar-button-outer()\n<$set\n\n name=\"buttonClasses\"\n value={{!!button-classes}}\n\n><<toolbar-button>></$set>\n\\end\n\n<<toolbar-button-outer>>"
},
"$:/core/ui/EditTemplate/body": {
"title": "$:/core/ui/EditTemplate/body",
"tags": "$:/tags/EditTemplate",
"text": "\\define lingo-base() $:/language/EditTemplate/Body/\n\\define config-visibility-title()\n$:/config/EditorToolbarButtons/Visibility/$(currentTiddler)$\n\\end\n<$list filter=\"[all[current]has[_canonical_uri]]\">\n\n<div class=\"tc-message-box\">\n\n<<lingo External/Hint>>\n\n<a href={{!!_canonical_uri}}><$text text={{!!_canonical_uri}}/></a>\n\n<$edit-text field=\"_canonical_uri\" class=\"tc-edit-fields\" tabindex={{$:/config/EditTabIndex}}></$edit-text>\n\n</div>\n\n</$list>\n\n<$list filter=\"[all[current]!has[_canonical_uri]]\">\n\n<$reveal state=\"$:/state/showeditpreview\" type=\"match\" text=\"yes\">\n\n<div class=\"tc-tiddler-preview\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/editor\" mode=\"inline\"/>\n\n<div class=\"tc-tiddler-preview-preview\">\n\n<$transclude tiddler={{$:/state/editpreviewtype}} mode=\"inline\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/preview/output\" mode=\"inline\"/>\n\n</$transclude>\n\n</div>\n\n</div>\n\n</$reveal>\n\n<$reveal state=\"$:/state/showeditpreview\" type=\"nomatch\" text=\"yes\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/editor\" mode=\"inline\"/>\n\n</$reveal>\n\n</$list>\n"
},
"$:/core/ui/EditTemplate/controls": {
"title": "$:/core/ui/EditTemplate/controls",
"tags": "$:/tags/EditTemplate",
"text": "\\define config-title()\n$:/config/EditToolbarButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-tiddler-title tc-tiddler-edit-title\">\n<$view field=\"title\"/>\n<span class=\"tc-tiddler-controls tc-titlebar\"><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditToolbar]!has[draft.of]]\" variable=\"listItem\"><$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"><$transclude tiddler=<<listItem>>/></$reveal></$list></span>\n<div style=\"clear: both;\"></div>\n</div>\n"
},
"$:/core/ui/EditTemplate/fields": {
"title": "$:/core/ui/EditTemplate/fields",
"tags": "$:/tags/EditTemplate",
"text": "\\define lingo-base() $:/language/EditTemplate/\n\\define config-title()\n$:/config/EditTemplateFields/Visibility/$(currentField)$\n\\end\n\n\\define config-filter()\n[[hide]] -[title{$(config-title)$}]\n\\end\n\n\\define current-tiddler-new-field-selector()\n[data-tiddler-title=\"$(currentTiddlerCSSescaped)$\"] .tc-edit-field-add-name input\n\\end\n\n\\define new-field-actions()\n<$action-sendmessage $message=\"tm-add-field\" $name={{{ [<newFieldNameTiddler>get[text]] }}} $value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<$action-deletetiddler $tiddler=<<newFieldNameTiddler>>/>\n<$action-deletetiddler $tiddler=<<newFieldValueTiddler>>/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/>\n\\end\n\n\\define new-field()\n<$vars name={{{ [<newFieldNameTiddler>get[text]] }}}>\n<$reveal type=\"nomatch\" text=\"\" default=<<name>>>\n<$button tooltip=<<lingo Fields/Add/Button/Hint>>>\n<$action-sendmessage $message=\"tm-add-field\"\n$name=<<name>>\n$value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<$action-deletetiddler $tiddler=<<newFieldNameTiddler>>/>\n<$action-deletetiddler $tiddler=<<newFieldValueTiddler>>/>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" text=\"\" default=<<name>>>\n<$button>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n</$vars>\n\\end\n\\whitespace trim\n\n<div class=\"tc-edit-fields\">\n<table class=\"tc-edit-fields\">\n<tbody>\n<$list filter=\"[all[current]fields[]] +[sort[title]]\" variable=\"currentField\" storyview=\"pop\">\n<$list filter=<<config-filter>> variable=\"temp\">\n<tr class=\"tc-edit-field\">\n<td class=\"tc-edit-field-name\">\n<$text text=<<currentField>>/>:</td>\n<td class=\"tc-edit-field-value\">\n<$edit-text tiddler=<<currentTiddler>> field=<<currentField>> placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} tabindex={{$:/config/EditTabIndex}}/>\n</td>\n<td class=\"tc-edit-field-remove\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Field/Remove/Hint}} aria-label={{$:/language/EditTemplate/Field/Remove/Caption}}>\n<$action-deletefield $field=<<currentField>>/>\n{{$:/core/images/delete-button}}\n</$button>\n</td>\n</tr>\n</$list>\n</$list>\n</tbody>\n</table>\n</div>\n\n<$fieldmangler>\n<div class=\"tc-edit-field-add\">\n<em class=\"tc-edit\">\n<<lingo Fields/Add/Prompt>> \n</em>\n<span class=\"tc-edit-field-add-name\">\n<$edit-text tiddler=<<newFieldNameTiddler>> tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Name/Placeholder}} focusPopup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-edit-texteditor tc-popup-handle\" tabindex={{$:/config/EditTabIndex}} focus={{{ [{$:/config/AutoFocus}match[fields]then[true]] ~[[false]] }}}/>\n</span> \n<$button popup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Field/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Field/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button> \n<$reveal state=<<qualify \"$:/state/popup/field-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher to=<<newFieldNameTiddler>>>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/User>>\n</div>\n<$set name=\"newFieldName\" value={{{ [<newFieldNameTiddler>get[text]] }}}>\n<$list filter=\"[!is[shadow]!is[system]fields[]search:title<newFieldName>sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type\" variable=\"currentField\">\n<$link to=<<currentField>>>\n<$text text=<<currentField>>/>\n</$link>\n</$list>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/System>>\n</div>\n<$list filter=\"[fields[]search:title<newFieldName>sort[]] -[!is[shadow]!is[system]fields[]]\" variable=\"currentField\">\n<$link to=<<currentField>>>\n<$text text=<<currentField>>/>\n</$link>\n</$list>\n</$set>\n</$linkcatcher>\n</$set>\n</div>\n</$reveal>\n<span class=\"tc-edit-field-add-value\">\n<$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}>\n<$keyboard key=\"((add-field))\" actions=<<new-field-actions>>>\n<$edit-text tiddler=<<newFieldValueTiddler>> tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} class=\"tc-edit-texteditor\" tabindex={{$:/config/EditTabIndex}}/>\n</$keyboard>\n</$set>\n</span> \n<span class=\"tc-edit-field-add-button\">\n<$macrocall $name=\"new-field\"/>\n</span>\n</div>\n</$fieldmangler>\n"
},
"$:/core/ui/EditTemplate/shadow": {
"title": "$:/core/ui/EditTemplate/shadow",
"tags": "$:/tags/EditTemplate",
"text": "\\define lingo-base() $:/language/EditTemplate/Shadow/\n\\define pluginLinkBody()\n<$link to=\"\"\"$(pluginTitle)$\"\"\">\n<$text text=\"\"\"$(pluginTitle)$\"\"\"/>\n</$link>\n\\end\n<$list filter=\"[all[current]get[draft.of]is[shadow]!is[tiddler]]\">\n\n<$list filter=\"[all[current]shadowsource[]]\" variable=\"pluginTitle\">\n\n<$set name=\"pluginLink\" value=<<pluginLinkBody>>>\n<div class=\"tc-message-box\">\n\n<<lingo Warning>>\n\n</div>\n</$set>\n</$list>\n\n</$list>\n\n<$list filter=\"[all[current]get[draft.of]is[shadow]is[tiddler]]\">\n\n<$list filter=\"[all[current]shadowsource[]]\" variable=\"pluginTitle\">\n\n<$set name=\"pluginLink\" value=<<pluginLinkBody>>>\n<div class=\"tc-message-box\">\n\n<<lingo OverriddenWarning>>\n\n</div>\n</$set>\n</$list>\n\n</$list>"
},
"$:/core/ui/EditTemplate/tags": {
"title": "$:/core/ui/EditTemplate/tags",
"tags": "$:/tags/EditTemplate",
"text": "\\whitespace trim\n\n\\define lingo-base() $:/language/EditTemplate/\n\n\\define tag-styles()\nbackground-color:$(backgroundColor)$;\nfill:$(foregroundColor)$;\ncolor:$(foregroundColor)$;\n\\end\n\n\\define tag-body-inner(colour,fallbackTarget,colourA,colourB,icon)\n\\whitespace trim\n<$vars foregroundColor=<<contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"$fallbackTarget$\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\">> backgroundColor=\"\"\"$colour$\"\"\">\n<span style=<<tag-styles>> class=\"tc-tag-label tc-tag-list-item\">\n<$transclude tiddler=\"\"\"$icon$\"\"\"/><$view field=\"title\" format=\"text\" />\n<$button message=\"tm-remove-tag\" param={{!!title}} class=\"tc-btn-invisible tc-remove-tag-button\">{{$:/core/images/close-button}}</$button>\n</span>\n</$vars>\n\\end\n\n\\define tag-body(colour,palette,icon)\n<$macrocall $name=\"tag-body-inner\" colour=\"\"\"$colour$\"\"\" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}} icon=\"\"\"$icon$\"\"\"/>\n\\end\n\n<div class=\"tc-edit-tags\">\n<$fieldmangler>\n<$list filter=\"[all[current]tags[]sort[title]]\" storyview=\"pop\">\n<$macrocall $name=\"tag-body\" colour={{!!color}} palette={{$:/palette}} icon={{!!icon}}/>\n</$list>\n<$set name=\"tabIndex\" value={{$:/config/EditTabIndex}}>\n<$macrocall $name=\"tag-picker\"/>\n</$set>\n</$fieldmangler>\n</div>\n"
},
"$:/core/ui/EditTemplate/title": {
"title": "$:/core/ui/EditTemplate/title",
"tags": "$:/tags/EditTemplate",
"text": "<$edit-text field=\"draft.title\" class=\"tc-titlebar tc-edit-texteditor\" focus={{{ [{$:/config/AutoFocus}match[title]then[true]] ~[[false]] }}} tabindex={{$:/config/EditTabIndex}}/>\n\n<$vars pattern=\"\"\"[\\|\\[\\]{}]\"\"\" bad-chars=\"\"\"`| [ ] { }`\"\"\">\n\n<$list filter=\"[all[current]regexp:draft.title<pattern>]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/BadCharacterWarning}}\n\n</div>\n\n</$list>\n\n</$vars>\n\n<$reveal state=\"!!draft.title\" type=\"nomatch\" text={{!!draft.of}} tag=\"div\">\n\n<$list filter=\"[{!!draft.title}!is[missing]]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/Exists/Prompt}}\n\n</div>\n\n</$list>\n\n<$list filter=\"[{!!draft.of}!is[missing]]\" variable=\"listItem\">\n\n<$vars fromTitle={{!!draft.of}} toTitle={{!!draft.title}}>\n\n<$checkbox tiddler=\"$:/config/RelinkOnRename\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> {{$:/language/EditTemplate/Title/Relink/Prompt}}</$checkbox>\n\n<$list filter=\"[title<fromTitle>backlinks[]limit[1]]\" variable=\"listItem\">\n\n<$vars stateTiddler=<<qualify \"$:/state/edit/references\">> >\n\n<$reveal type=\"nomatch\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"show\" class=\"tc-btn-invisible\">{{$:/core/images/right-arrow}} \n<<lingo EditTemplate/Title/References/Prompt>></$button>\n</$reveal>\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"hide\" class=\"tc-btn-invisible\">{{$:/core/images/down-arrow}} \n<<lingo EditTemplate/Title/References/Prompt>></$button>\n</$reveal>\n\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$tiddler tiddler=<<fromTitle>> >\n<$transclude tiddler=\"$:/core/ui/TiddlerInfo/References\"/>\n</$tiddler>\n</$reveal>\n\n</$vars>\n\n</$list>\n\n</$vars>\n\n</$list>\n\n</$reveal>\n"
},
"$:/core/ui/EditTemplate/type": {
"title": "$:/core/ui/EditTemplate/type",
"tags": "$:/tags/EditTemplate",
"text": "\\define lingo-base() $:/language/EditTemplate/\n\\whitespace trim\n<div class=\"tc-type-selector\"><$fieldmangler>\n<em class=\"tc-edit\"><<lingo Type/Prompt>></em> <$edit-text field=\"type\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Type/Placeholder}} focusPopup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-edit-typeeditor tc-edit-texteditor tc-popup-handle\" tabindex={{$:/config/EditTabIndex}} focus={{{ [{$:/config/AutoFocus}match[type]then[true]] ~[[false]] }}}/> <$button popup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Type/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Type/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button> <$button message=\"tm-remove-field\" param=\"type\" class=\"tc-btn-invisible tc-btn-icon\" tooltip={{$:/language/EditTemplate/Type/Delete/Hint}} aria-label={{$:/language/EditTemplate/Type/Delete/Caption}}>{{$:/core/images/delete-button}}</$button>\n</$fieldmangler></div>\n\n<div class=\"tc-block-dropdown-wrapper\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$reveal state=<<qualify \"$:/state/popup/type-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$linkcatcher to=\"!!type\">\n<$list filter='[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]each[group]sort[group-sort]]'>\n<div class=\"tc-dropdown-item\">\n<$text text={{!!group}}/>\n</div>\n<$list filter=\"[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]group{!!group}] +[sort[description]]\"><$link to={{!!name}}><$view field=\"description\"/> (<$view field=\"name\"/>)</$link>\n</$list>\n</$list>\n</$linkcatcher>\n</div>\n</$reveal>\n</$set>\n</div>\n"
},
"$:/core/ui/EditTemplate": {
"title": "$:/core/ui/EditTemplate",
"text": "\\define save-tiddler-actions()\n<$action-sendmessage $message=\"tm-add-tag\" $param={{{ [<newTagNameTiddler>get[text]] }}}/>\n<$action-deletetiddler $tiddler=<<newTagNameTiddler>>/>\n<$action-sendmessage $message=\"tm-add-field\" $name={{{ [<newFieldNameTiddler>get[text]] }}} $value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<$action-deletetiddler $tiddler=<<newFieldNameTiddler>>/>\n<$action-deletetiddler $tiddler=<<newFieldValueTiddler>>/>\n<$action-sendmessage $message=\"tm-save-tiddler\"/>\n\\end\n<div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class={{{ tc-tiddler-frame tc-tiddler-edit-frame [<currentTiddler>is[tiddler]then[tc-tiddler-exists]] [<currentTiddler>is[missing]!is[shadow]then[tc-tiddler-missing]] [<currentTiddler>is[shadow]then[tc-tiddler-exists tc-tiddler-shadow]] [<currentTiddler>is[system]then[tc-tiddler-system]] [{!!class}] [<currentTiddler>tags[]encodeuricomponent[]addprefix[tc-tagged-]] +[join[ ]] }}}>\n<$fieldmangler>\n<$vars storyTiddler=<<currentTiddler>> newTagNameTiddler=<<qualify \"$:/temp/NewTagName\">> newFieldNameTiddler=<<qualify \"$:/temp/NewFieldName\">> newFieldValueTiddler=<<qualify \"$:/temp/NewFieldValue\">>>\n<$keyboard key=\"((cancel-edit-tiddler))\" message=\"tm-cancel-tiddler\">\n<$keyboard key=\"((save-tiddler))\" actions=<<save-tiddler-actions>>>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditTemplate]!has[draft.of]]\" variable=\"listItem\">\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n<$transclude tiddler=<<listItem>>/>\n</$set>\n</$list>\n</$keyboard>\n</$keyboard>\n</$vars>\n</$fieldmangler>\n</div>\n"
},
"$:/core/ui/Buttons/cancel": {
"title": "$:/core/ui/Buttons/cancel",
"tags": "$:/tags/EditToolbar",
"caption": "{{$:/core/images/cancel-button}} {{$:/language/Buttons/Cancel/Caption}}",
"description": "{{$:/language/Buttons/Cancel/Hint}}",
"text": "<$button message=\"tm-cancel-tiddler\" tooltip={{$:/language/Buttons/Cancel/Hint}} aria-label={{$:/language/Buttons/Cancel/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/cancel-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Cancel/Caption}}/></span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/delete": {
"title": "$:/core/ui/Buttons/delete",
"tags": "$:/tags/EditToolbar $:/tags/ViewToolbar",
"caption": "{{$:/core/images/delete-button}} {{$:/language/Buttons/Delete/Caption}}",
"description": "{{$:/language/Buttons/Delete/Hint}}",
"text": "<$button message=\"tm-delete-tiddler\" tooltip={{$:/language/Buttons/Delete/Hint}} aria-label={{$:/language/Buttons/Delete/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/delete-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Delete/Caption}}/></span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/save": {
"title": "$:/core/ui/Buttons/save",
"tags": "$:/tags/EditToolbar",
"caption": "{{$:/core/images/done-button}} {{$:/language/Buttons/Save/Caption}}",
"description": "{{$:/language/Buttons/Save/Hint}}",
"text": "\\define save-tiddler-button()\n<$fieldmangler><$button tooltip={{$:/language/Buttons/Save/Hint}} aria-label={{$:/language/Buttons/Save/Caption}} class=<<tv-config-toolbar-class>>>\n<<save-tiddler-actions>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/done-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Save/Caption}}/></span>\n</$list>\n</$button></$fieldmangler>\n\\end\n<<save-tiddler-button>>\n"
},
"$:/core/ui/EditorToolbar/bold": {
"title": "$:/core/ui/EditorToolbar/bold",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/bold",
"caption": "{{$:/language/Buttons/Bold/Caption}}",
"description": "{{$:/language/Buttons/Bold/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((bold))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"''\"\n\tsuffix=\"''\"\n/>\n"
},
"$:/core/ui/EditorToolbar/clear-dropdown": {
"title": "$:/core/ui/EditorToolbar/clear-dropdown",
"text": "''{{$:/language/Buttons/Clear/Hint}}''\n\n<div class=\"tc-colour-chooser\">\n\n<$macrocall $name=\"colour-picker\" actions=\"\"\"\n\n<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"clear\"\n\tcolour=<<colour-picker-value>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n\n</div>\n"
},
"$:/core/ui/EditorToolbar/clear": {
"title": "$:/core/ui/EditorToolbar/clear",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/erase",
"caption": "{{$:/language/Buttons/Clear/Caption}}",
"description": "{{$:/language/Buttons/Clear/Hint}}",
"condition": "[<targetTiddler>is[image]]",
"dropdown": "$:/core/ui/EditorToolbar/clear-dropdown",
"text": ""
},
"$:/core/ui/EditorToolbar/editor-height-dropdown": {
"title": "$:/core/ui/EditorToolbar/editor-height-dropdown",
"text": "\\define lingo-base() $:/language/Buttons/EditorHeight/\n''<<lingo Hint>>''\n\n<$radio tiddler=\"$:/config/TextEditor/EditorHeight/Mode\" value=\"auto\"> {{$:/core/images/auto-height}} <<lingo Caption/Auto>></$radio>\n\n<$radio tiddler=\"$:/config/TextEditor/EditorHeight/Mode\" value=\"fixed\"> {{$:/core/images/fixed-height}} <<lingo Caption/Fixed>> <$edit-text tag=\"input\" tiddler=\"$:/config/TextEditor/EditorHeight/Height\" default=\"100px\"/></$radio>\n"
},
"$:/core/ui/EditorToolbar/editor-height": {
"title": "$:/core/ui/EditorToolbar/editor-height",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/fixed-height",
"custom-icon": "yes",
"caption": "{{$:/language/Buttons/EditorHeight/Caption}}",
"description": "{{$:/language/Buttons/EditorHeight/Hint}}",
"condition": "[<targetTiddler>type[]] [<targetTiddler>get[type]prefix[text/]] +[first[]]",
"dropdown": "$:/core/ui/EditorToolbar/editor-height-dropdown",
"text": "<$reveal tag=\"span\" state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"fixed\">\n{{$:/core/images/fixed-height}}\n</$reveal>\n<$reveal tag=\"span\" state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"auto\">\n{{$:/core/images/auto-height}}\n</$reveal>\n"
},
"$:/core/ui/EditorToolbar/excise-dropdown": {
"title": "$:/core/ui/EditorToolbar/excise-dropdown",
"text": "\\define lingo-base() $:/language/Buttons/Excise/\n\n\\define body(config-title)\n''<<lingo Hint>>''\n\n<<lingo Caption/NewTitle>> <$edit-text tag=\"input\" tiddler=\"$config-title$/new-title\" default=\"\" focus=\"true\"/>\n\n<$set name=\"new-title\" value={{$config-title$/new-title}}>\n<$list filter=\"\"\"[<new-title>is[tiddler]]\"\"\">\n<div class=\"tc-error\">\n<<lingo Caption/TiddlerExists>>\n</div>\n</$list>\n</$set>\n\n<$checkbox tiddler=\"\"\"$config-title$/tagnew\"\"\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"false\"> <<lingo Caption/Tag>></$checkbox>\n\n<<lingo Caption/Replace>> <$select tiddler=\"\"\"$config-title$/type\"\"\" default=\"transclude\">\n<option value=\"link\"><<lingo Caption/Replace/Link>></option>\n<option value=\"transclude\"><<lingo Caption/Replace/Transclusion>></option>\n<option value=\"macro\"><<lingo Caption/Replace/Macro>></option>\n</$select>\n\n<$reveal state=\"\"\"$config-title$/type\"\"\" type=\"match\" text=\"macro\">\n<<lingo Caption/MacroName>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/macro-title\"\"\" default=\"translink\"/>\n</$reveal>\n\n<$button>\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"excise\"\n\ttitle={{$config-title$/new-title}}\n\ttype={{$config-title$/type}}\n\tmacro={{$config-title$/macro-title}}\n\ttagnew={{$config-title$/tagnew}}\n/>\n<$action-deletetiddler\n\t$tiddler=\"$config-title$/new-title\"\n/>\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n<<lingo Caption/Excise>>\n</$button>\n\\end\n\n<$macrocall $name=\"body\" config-title=<<qualify \"$:/state/Excise/\">>/>\n"
},
"$:/core/ui/EditorToolbar/excise": {
"title": "$:/core/ui/EditorToolbar/excise",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/excise",
"caption": "{{$:/language/Buttons/Excise/Caption}}",
"description": "{{$:/language/Buttons/Excise/Hint}}",
"condition": "[<targetTiddler>type[]] [<targetTiddler>type[text/vnd.tiddlywiki]] +[first[]]",
"shortcuts": "((excise))",
"dropdown": "$:/core/ui/EditorToolbar/excise-dropdown",
"text": ""
},
"$:/core/ui/EditorToolbar/heading-1": {
"title": "$:/core/ui/EditorToolbar/heading-1",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-1",
"caption": "{{$:/language/Buttons/Heading1/Caption}}",
"description": "{{$:/language/Buttons/Heading1/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"button-classes": "tc-text-editor-toolbar-item-start-group",
"shortcuts": "((heading-1))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"1\"\n/>\n"
},
"$:/core/ui/EditorToolbar/heading-2": {
"title": "$:/core/ui/EditorToolbar/heading-2",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-2",
"caption": "{{$:/language/Buttons/Heading2/Caption}}",
"description": "{{$:/language/Buttons/Heading2/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((heading-2))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"2\"\n/>\n"
},
"$:/core/ui/EditorToolbar/heading-3": {
"title": "$:/core/ui/EditorToolbar/heading-3",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-3",
"caption": "{{$:/language/Buttons/Heading3/Caption}}",
"description": "{{$:/language/Buttons/Heading3/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((heading-3))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"3\"\n/>\n"
},
"$:/core/ui/EditorToolbar/heading-4": {
"title": "$:/core/ui/EditorToolbar/heading-4",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-4",
"caption": "{{$:/language/Buttons/Heading4/Caption}}",
"description": "{{$:/language/Buttons/Heading4/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((heading-4))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"4\"\n/>\n"
},
"$:/core/ui/EditorToolbar/heading-5": {
"title": "$:/core/ui/EditorToolbar/heading-5",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-5",
"caption": "{{$:/language/Buttons/Heading5/Caption}}",
"description": "{{$:/language/Buttons/Heading5/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((heading-5))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"5\"\n/>\n"
},
"$:/core/ui/EditorToolbar/heading-6": {
"title": "$:/core/ui/EditorToolbar/heading-6",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-6",
"caption": "{{$:/language/Buttons/Heading6/Caption}}",
"description": "{{$:/language/Buttons/Heading6/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((heading-6))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"6\"\n/>\n"
},
"$:/core/ui/EditorToolbar/italic": {
"title": "$:/core/ui/EditorToolbar/italic",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/italic",
"caption": "{{$:/language/Buttons/Italic/Caption}}",
"description": "{{$:/language/Buttons/Italic/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((italic))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"//\"\n\tsuffix=\"//\"\n/>\n"
},
"$:/core/ui/EditorToolbar/line-width-dropdown": {
"title": "$:/core/ui/EditorToolbar/line-width-dropdown",
"text": "\\define lingo-base() $:/language/Buttons/LineWidth/\n\n\\define toolbar-line-width-inner()\n<$button tag=\"a\" tooltip=\"\"\"$(line-width)$\"\"\">\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/LineWidth\"\n\t$value=\"$(line-width)$\"\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<div style=\"display: inline-block; margin: 4px calc(80px - $(line-width)$); background-color: #000; width: calc(100px + $(line-width)$ * 2); height: $(line-width)$; border-radius: 120px; vertical-align: middle;\"/>\n\n<span style=\"margin-left: 8px;\">\n\n<$text text=\"\"\"$(line-width)$\"\"\"/>\n\n<$reveal state=\"$:/config/BitmapEditor/LineWidth\" type=\"match\" text=\"\"\"$(line-width)$\"\"\" tag=\"span\">\n\n<$entity entity=\" \"/>\n\n<$entity entity=\"✓\"/>\n\n</$reveal>\n\n</span>\n\n</$button>\n\\end\n\n''<<lingo Hint>>''\n\n<$list filter={{$:/config/BitmapEditor/LineWidths}} variable=\"line-width\">\n\n<<toolbar-line-width-inner>>\n\n</$list>\n"
},
"$:/core/ui/EditorToolbar/line-width": {
"title": "$:/core/ui/EditorToolbar/line-width",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/line-width",
"caption": "{{$:/language/Buttons/LineWidth/Caption}}",
"description": "{{$:/language/Buttons/LineWidth/Hint}}",
"condition": "[<targetTiddler>is[image]]",
"dropdown": "$:/core/ui/EditorToolbar/line-width-dropdown",
"text": "<$text text={{$:/config/BitmapEditor/LineWidth}}/>"
},
"$:/core/ui/EditorToolbar/link-dropdown": {
"title": "$:/core/ui/EditorToolbar/link-dropdown",
"text": "\\define lingo-base() $:/language/Buttons/Link/\n\n\\define add-link-actions()\n<$action-sendmessage $message=\"tm-edit-text-operation\" $param=\"make-link\" text={{$(linkTiddler)$}} />\n<$action-deletetiddler $tiddler=<<dropdown-state>> />\n<$action-deletetiddler $tiddler=<<searchTiddler>> />\n<$action-deletetiddler $tiddler=<<linkTiddler>> />\n\\end\n\n\\define external-link()\n<$button class=\"tc-btn-invisible\" style=\"width: auto; display: inline-block; background-colour: inherit;\" actions=<<add-link-actions>>>\n{{$:/core/images/chevron-right}}\n</$button>\n\\end\n\n\\define body(config-title)\n''<<lingo Hint>>''\n\n<$vars searchTiddler=\"\"\"$config-title$/search\"\"\" linkTiddler=\"\"\"$config-title$/link\"\"\" linktext=\"\" >\n\n<$vars linkTiddler=<<searchTiddler>>>\n<$keyboard key=\"ENTER\" actions=<<add-link-actions>>>\n<$edit-text tiddler=<<searchTiddler>> type=\"search\" tag=\"input\" focus=\"true\" placeholder={{$:/language/Search/Search}} default=\"\"/>\n<$reveal tag=\"span\" state=<<searchTiddler>> type=\"nomatch\" text=\"\">\n<<external-link>>\n<$button class=\"tc-btn-invisible\" style=\"width: auto; display: inline-block; background-colour: inherit;\">\n<$action-setfield $tiddler=<<searchTiddler>> text=\"\" />\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</$keyboard>\n</$vars>\n\n<$reveal tag=\"div\" state=<<searchTiddler>> type=\"nomatch\" text=\"\">\n\n<$linkcatcher actions=<<add-link-actions>> to=<<linkTiddler>>>\n\n{{$:/core/ui/SearchResults}}\n\n</$linkcatcher>\n\n</$reveal>\n\n</$vars>\n\n\\end\n\n<$macrocall $name=\"body\" config-title=<<qualify \"$:/state/Link/\">>/>"
},
"$:/core/ui/EditorToolbar/link": {
"title": "$:/core/ui/EditorToolbar/link",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/link",
"caption": "{{$:/language/Buttons/Link/Caption}}",
"description": "{{$:/language/Buttons/Link/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"button-classes": "tc-text-editor-toolbar-item-start-group",
"shortcuts": "((link))",
"dropdown": "$:/core/ui/EditorToolbar/link-dropdown",
"text": ""
},
"$:/core/ui/EditorToolbar/linkify": {
"title": "$:/core/ui/EditorToolbar/linkify",
"caption": "{{$:/language/Buttons/Linkify/Caption}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"description": "{{$:/language/Buttons/Linkify/Hint}}",
"icon": "$:/core/images/linkify",
"list-before": "$:/core/ui/EditorToolbar/mono-block",
"shortcuts": "((linkify))",
"tags": "$:/tags/EditorToolbar",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"[[\"\n\tsuffix=\"]]\"\n/>\n"
},
"$:/core/ui/EditorToolbar/list-bullet": {
"title": "$:/core/ui/EditorToolbar/list-bullet",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/list-bullet",
"caption": "{{$:/language/Buttons/ListBullet/Caption}}",
"description": "{{$:/language/Buttons/ListBullet/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((list-bullet))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"*\"\n\tcount=\"1\"\n/>\n"
},
"$:/core/ui/EditorToolbar/list-number": {
"title": "$:/core/ui/EditorToolbar/list-number",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/list-number",
"caption": "{{$:/language/Buttons/ListNumber/Caption}}",
"description": "{{$:/language/Buttons/ListNumber/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((list-number))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"1\"\n/>\n"
},
"$:/core/ui/EditorToolbar/mono-block": {
"title": "$:/core/ui/EditorToolbar/mono-block",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/mono-block",
"caption": "{{$:/language/Buttons/MonoBlock/Caption}}",
"description": "{{$:/language/Buttons/MonoBlock/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"button-classes": "tc-text-editor-toolbar-item-start-group",
"shortcuts": "((mono-block))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-lines\"\n\tprefix=\"\n```\"\n\tsuffix=\"```\"\n/>\n"
},
"$:/core/ui/EditorToolbar/mono-line": {
"title": "$:/core/ui/EditorToolbar/mono-line",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/mono-line",
"caption": "{{$:/language/Buttons/MonoLine/Caption}}",
"description": "{{$:/language/Buttons/MonoLine/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((mono-line))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"`\"\n\tsuffix=\"`\"\n/>\n"
},
"$:/core/ui/EditorToolbar/more-dropdown": {
"title": "$:/core/ui/EditorToolbar/more-dropdown",
"text": "\\define config-title()\n$:/config/EditorToolbarButtons/Visibility/$(toolbarItem)$\n\\end\n\n\\define conditional-button()\n<$list filter={{$(toolbarItem)$!!condition}} variable=\"condition\">\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/toolbar/button\" mode=\"inline\"/> <$transclude tiddler=<<toolbarItem>> field=\"description\"/>\n</$list>\n\\end\n\n<div class=\"tc-text-editor-toolbar-more\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditorToolbar]!has[draft.of]] -[[$:/core/ui/EditorToolbar/more]]\">\n<$reveal type=\"match\" state=<<config-visibility-title>> text=\"hide\" tag=\"div\">\n<<conditional-button>>\n</$reveal>\n</$list>\n</div>\n"
},
"$:/core/ui/EditorToolbar/more": {
"title": "$:/core/ui/EditorToolbar/more",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/down-arrow",
"caption": "{{$:/language/Buttons/More/Caption}}",
"description": "{{$:/language/Buttons/More/Hint}}",
"condition": "[<targetTiddler>]",
"dropdown": "$:/core/ui/EditorToolbar/more-dropdown",
"text": ""
},
"$:/core/ui/EditorToolbar/opacity-dropdown": {
"title": "$:/core/ui/EditorToolbar/opacity-dropdown",
"text": "\\define lingo-base() $:/language/Buttons/Opacity/\n\n\\define toolbar-opacity-inner()\n<$button tag=\"a\" tooltip=\"\"\"$(opacity)$\"\"\">\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/Opacity\"\n\t$value=\"$(opacity)$\"\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<div style=\"display: inline-block; vertical-align: middle; background-color: $(current-paint-colour)$; opacity: $(opacity)$; width: 1em; height: 1em; border-radius: 50%;\"/>\n\n<span style=\"margin-left: 8px;\">\n\n<$text text=\"\"\"$(opacity)$\"\"\"/>\n\n<$reveal state=\"$:/config/BitmapEditor/Opacity\" type=\"match\" text=\"\"\"$(opacity)$\"\"\" tag=\"span\">\n\n<$entity entity=\" \"/>\n\n<$entity entity=\"✓\"/>\n\n</$reveal>\n\n</span>\n\n</$button>\n\\end\n\n\\define toolbar-opacity()\n''<<lingo Hint>>''\n\n<$list filter={{$:/config/BitmapEditor/Opacities}} variable=\"opacity\">\n\n<<toolbar-opacity-inner>>\n\n</$list>\n\\end\n\n<$set name=\"current-paint-colour\" value={{$:/config/BitmapEditor/Colour}}>\n\n<$set name=\"current-opacity\" value={{$:/config/BitmapEditor/Opacity}}>\n\n<<toolbar-opacity>>\n\n</$set>\n\n</$set>\n"
},
"$:/core/ui/EditorToolbar/opacity": {
"title": "$:/core/ui/EditorToolbar/opacity",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/opacity",
"caption": "{{$:/language/Buttons/Opacity/Caption}}",
"description": "{{$:/language/Buttons/Opacity/Hint}}",
"condition": "[<targetTiddler>is[image]]",
"dropdown": "$:/core/ui/EditorToolbar/opacity-dropdown",
"text": "<$text text={{$:/config/BitmapEditor/Opacity}}/>\n"
},
"$:/core/ui/EditorToolbar/paint-dropdown": {
"title": "$:/core/ui/EditorToolbar/paint-dropdown",
"text": "''{{$:/language/Buttons/Paint/Hint}}''\n\n<$macrocall $name=\"colour-picker\" actions=\"\"\"\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/Colour\"\n\t$value=<<colour-picker-value>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n"
},
"$:/core/ui/EditorToolbar/paint": {
"title": "$:/core/ui/EditorToolbar/paint",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/paint",
"caption": "{{$:/language/Buttons/Paint/Caption}}",
"description": "{{$:/language/Buttons/Paint/Hint}}",
"condition": "[<targetTiddler>is[image]]",
"dropdown": "$:/core/ui/EditorToolbar/paint-dropdown",
"text": "\\define toolbar-paint()\n<div style=\"display: inline-block; vertical-align: middle; background-color: $(colour-picker-value)$; width: 1em; height: 1em; border-radius: 50%;\"/>\n\\end\n<$set name=\"colour-picker-value\" value={{$:/config/BitmapEditor/Colour}}>\n<<toolbar-paint>>\n</$set>\n"
},
"$:/core/ui/EditorToolbar/picture-dropdown": {
"title": "$:/core/ui/EditorToolbar/picture-dropdown",
"text": "\\define replacement-text()\n[img[$(imageTitle)$]]\n\\end\n\n''{{$:/language/Buttons/Picture/Hint}}''\n\n<$macrocall $name=\"image-picker\" actions=\"\"\"\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"replace-selection\"\n\ttext=<<replacement-text>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n"
},
"$:/core/ui/EditorToolbar/picture": {
"title": "$:/core/ui/EditorToolbar/picture",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/picture",
"caption": "{{$:/language/Buttons/Picture/Caption}}",
"description": "{{$:/language/Buttons/Picture/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((picture))",
"dropdown": "$:/core/ui/EditorToolbar/picture-dropdown",
"text": ""
},
"$:/core/ui/EditorToolbar/preview-type-dropdown": {
"title": "$:/core/ui/EditorToolbar/preview-type-dropdown",
"text": "\\define preview-type-button()\n<$button tag=\"a\">\n\n<$action-setfield $tiddler=\"$:/state/editpreviewtype\" $value=\"$(previewType)$\"/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<$transclude tiddler=<<previewType>> field=\"caption\" mode=\"inline\">\n\n<$view tiddler=<<previewType>> field=\"title\" mode=\"inline\"/>\n\n</$transclude> \n\n<$reveal tag=\"span\" state=\"$:/state/editpreviewtype\" type=\"match\" text=<<previewType>> default=\"$:/core/ui/EditTemplate/body/preview/output\">\n\n<$entity entity=\" \"/>\n\n<$entity entity=\"✓\"/>\n\n</$reveal>\n\n</$button>\n\\end\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditPreview]!has[draft.of]]\" variable=\"previewType\">\n\n<<preview-type-button>>\n\n</$list>\n"
},
"$:/core/ui/EditorToolbar/preview-type": {
"title": "$:/core/ui/EditorToolbar/preview-type",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/chevron-down",
"caption": "{{$:/language/Buttons/PreviewType/Caption}}",
"description": "{{$:/language/Buttons/PreviewType/Hint}}",
"condition": "[all[shadows+tiddlers]tag[$:/tags/EditPreview]!has[draft.of]butfirst[]limit[1]]",
"button-classes": "tc-text-editor-toolbar-item-adjunct",
"dropdown": "$:/core/ui/EditorToolbar/preview-type-dropdown"
},
"$:/core/ui/EditorToolbar/preview": {
"title": "$:/core/ui/EditorToolbar/preview",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/preview-open",
"custom-icon": "yes",
"caption": "{{$:/language/Buttons/Preview/Caption}}",
"description": "{{$:/language/Buttons/Preview/Hint}}",
"condition": "[<targetTiddler>]",
"button-classes": "tc-text-editor-toolbar-item-start-group",
"shortcuts": "((preview))",
"text": "<$reveal state=\"$:/state/showeditpreview\" type=\"match\" text=\"yes\" tag=\"span\">\n{{$:/core/images/preview-open}}\n<$action-setfield $tiddler=\"$:/state/showeditpreview\" $value=\"no\"/>\n</$reveal>\n<$reveal state=\"$:/state/showeditpreview\" type=\"nomatch\" text=\"yes\" tag=\"span\">\n{{$:/core/images/preview-closed}}\n<$action-setfield $tiddler=\"$:/state/showeditpreview\" $value=\"yes\"/>\n</$reveal>\n"
},
"$:/core/ui/EditorToolbar/quote": {
"title": "$:/core/ui/EditorToolbar/quote",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/quote",
"caption": "{{$:/language/Buttons/Quote/Caption}}",
"description": "{{$:/language/Buttons/Quote/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((quote))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-lines\"\n\tprefix=\"\n<<<\"\n\tsuffix=\"<<<\"\n/>\n"
},
"$:/core/ui/EditorToolbar/rotate-left": {
"title": "$:/core/ui/EditorToolbar/rotate-left",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/rotate-left",
"caption": "{{$:/language/Buttons/RotateLeft/Caption}}",
"description": "{{$:/language/Buttons/RotateLeft/Hint}}",
"condition": "[<targetTiddler>is[image]]",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"rotate-left\"\n/>\n"
},
"$:/core/ui/EditorToolbar/size-dropdown": {
"title": "$:/core/ui/EditorToolbar/size-dropdown",
"text": "\\define lingo-base() $:/language/Buttons/Size/\n\n\\define toolbar-button-size-preset(config-title)\n<$set name=\"width\" filter=\"$(sizePair)$ +[first[]]\">\n\n<$set name=\"height\" filter=\"$(sizePair)$ +[last[]]\">\n\n<$button tag=\"a\">\n\n<$action-setfield\n\t$tiddler=\"\"\"$config-title$/new-width\"\"\"\n\t$value=<<width>>\n/>\n\n<$action-setfield\n\t$tiddler=\"\"\"$config-title$/new-height\"\"\"\n\t$value=<<height>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/presets-popup\"\"\"\n/>\n\n<$text text=<<width>>/> × <$text text=<<height>>/>\n\n</$button>\n\n</$set>\n\n</$set>\n\\end\n\n\\define toolbar-button-size(config-title)\n''{{$:/language/Buttons/Size/Hint}}''\n\n<<lingo Caption/Width>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/new-width\"\"\" default=<<tv-bitmap-editor-width>> focus=\"true\" size=\"8\"/> <<lingo Caption/Height>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/new-height\"\"\" default=<<tv-bitmap-editor-height>> size=\"8\"/> <$button popup=\"\"\"$config-title$/presets-popup\"\"\" class=\"tc-btn-invisible tc-popup-keep\" style=\"width: auto; display: inline-block; background-colour: inherit;\" selectedClass=\"tc-selected\">\n{{$:/core/images/down-arrow}}\n</$button>\n\n<$reveal tag=\"span\" state=\"\"\"$config-title$/presets-popup\"\"\" type=\"popup\" position=\"belowleft\" animate=\"yes\">\n\n<div class=\"tc-drop-down tc-popup-keep\">\n\n<$list filter={{$:/config/BitmapEditor/ImageSizes}} variable=\"sizePair\">\n\n<$macrocall $name=\"toolbar-button-size-preset\" config-title=\"$config-title$\"/>\n\n</$list>\n\n</div>\n\n</$reveal>\n\n<$button>\n<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"resize\"\n\twidth={{$config-title$/new-width}}\n\theight={{$config-title$/new-height}}\n/>\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/new-width\"\"\"\n/>\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/new-height\"\"\"\n/>\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n<<lingo Caption/Resize>>\n</$button>\n\\end\n\n<$macrocall $name=\"toolbar-button-size\" config-title=<<qualify \"$:/state/Size/\">>/>\n"
},
"$:/core/ui/EditorToolbar/size": {
"title": "$:/core/ui/EditorToolbar/size",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/size",
"caption": "{{$:/language/Buttons/Size/Caption}}",
"description": "{{$:/language/Buttons/Size/Hint}}",
"condition": "[<targetTiddler>is[image]]",
"dropdown": "$:/core/ui/EditorToolbar/size-dropdown",
"text": ""
},
"$:/core/ui/EditorToolbar/stamp-dropdown": {
"title": "$:/core/ui/EditorToolbar/stamp-dropdown",
"text": "\\define toolbar-button-stamp-inner()\n<$button tag=\"a\">\n\n<$list filter=\"[[$(snippetTitle)$]addsuffix[/prefix]is[missing]removesuffix[/prefix]addsuffix[/suffix]is[missing]]\">\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"replace-selection\"\n\ttext={{$(snippetTitle)$}}\n/>\n\n</$list>\n\n\n<$list filter=\"[[$(snippetTitle)$]addsuffix[/prefix]is[missing]removesuffix[/prefix]addsuffix[/suffix]!is[missing]] [[$(snippetTitle)$]addsuffix[/prefix]!is[missing]removesuffix[/prefix]addsuffix[/suffix]is[missing]] [[$(snippetTitle)$]addsuffix[/prefix]!is[missing]removesuffix[/prefix]addsuffix[/suffix]!is[missing]]\">\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix={{{ [[$(snippetTitle)$]addsuffix[/prefix]get[text]] }}}\nsuffix={{{ [[$(snippetTitle)$]addsuffix[/suffix]get[text]] }}}\n/>\n\n</$list>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<$transclude tiddler=<<snippetTitle>> field=\"caption\" mode=\"inline\">\n\n<$view tiddler=<<snippetTitle>> field=\"title\" />\n\n</$transclude>\n\n</$button>\n\\end\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TextEditor/Snippet]!has[draft.of]sort[caption]]\" variable=\"snippetTitle\">\n\n<<toolbar-button-stamp-inner>>\n\n</$list>\n\n----\n\n<$button tag=\"a\">\n\n<$action-sendmessage\n\t$message=\"tm-new-tiddler\"\n\ttags=\"$:/tags/TextEditor/Snippet\"\n\tcaption={{$:/language/Buttons/Stamp/New/Title}}\n\ttext={{$:/language/Buttons/Stamp/New/Text}}\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<em>\n\n<$text text={{$:/language/Buttons/Stamp/Caption/New}}/>\n\n</em>\n\n</$button>\n"
},
"$:/core/ui/EditorToolbar/stamp": {
"title": "$:/core/ui/EditorToolbar/stamp",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/stamp",
"caption": "{{$:/language/Buttons/Stamp/Caption}}",
"description": "{{$:/language/Buttons/Stamp/Hint}}",
"condition": "[<targetTiddler>type[]] [<targetTiddler>get[type]prefix[text/]] +[first[]]",
"shortcuts": "((stamp))",
"dropdown": "$:/core/ui/EditorToolbar/stamp-dropdown",
"text": ""
},
"$:/core/ui/EditorToolbar/strikethrough": {
"title": "$:/core/ui/EditorToolbar/strikethrough",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/strikethrough",
"caption": "{{$:/language/Buttons/Strikethrough/Caption}}",
"description": "{{$:/language/Buttons/Strikethrough/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((strikethrough))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"~~\"\n\tsuffix=\"~~\"\n/>\n"
},
"$:/core/ui/EditorToolbar/subscript": {
"title": "$:/core/ui/EditorToolbar/subscript",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/subscript",
"caption": "{{$:/language/Buttons/Subscript/Caption}}",
"description": "{{$:/language/Buttons/Subscript/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((subscript))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\",,\"\n\tsuffix=\",,\"\n/>\n"
},
"$:/core/ui/EditorToolbar/superscript": {
"title": "$:/core/ui/EditorToolbar/superscript",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/superscript",
"caption": "{{$:/language/Buttons/Superscript/Caption}}",
"description": "{{$:/language/Buttons/Superscript/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((superscript))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"^^\"\n\tsuffix=\"^^\"\n/>\n"
},
"$:/core/ui/EditorToolbar/transcludify": {
"title": "$:/core/ui/EditorToolbar/transcludify",
"caption": "{{$:/language/Buttons/Transcludify/Caption}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"description": "{{$:/language/Buttons/Transcludify/Hint}}",
"icon": "$:/core/images/transcludify",
"list-before": "$:/core/ui/EditorToolbar/mono-block",
"shortcuts": "((transcludify))",
"tags": "$:/tags/EditorToolbar",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"{{\"\n\tsuffix=\"}}\"\n/>\n"
},
"$:/core/ui/EditorToolbar/underline": {
"title": "$:/core/ui/EditorToolbar/underline",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/underline",
"caption": "{{$:/language/Buttons/Underline/Caption}}",
"description": "{{$:/language/Buttons/Underline/Hint}}",
"condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
"shortcuts": "((underline))",
"text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"__\"\n\tsuffix=\"__\"\n/>\n"
},
"$:/core/Filters/AllTags": {
"title": "$:/core/Filters/AllTags",
"tags": "$:/tags/Filter",
"filter": "[tags[]!is[system]sort[title]]",
"description": "{{$:/language/Filters/AllTags}}",
"text": ""
},
"$:/core/Filters/AllTiddlers": {
"title": "$:/core/Filters/AllTiddlers",
"tags": "$:/tags/Filter",
"filter": "[!is[system]sort[title]]",
"description": "{{$:/language/Filters/AllTiddlers}}",
"text": ""
},
"$:/core/Filters/Drafts": {
"title": "$:/core/Filters/Drafts",
"tags": "$:/tags/Filter",
"filter": "[has[draft.of]sort[title]]",
"description": "{{$:/language/Filters/Drafts}}",
"text": ""
},
"$:/core/Filters/Missing": {
"title": "$:/core/Filters/Missing",
"tags": "$:/tags/Filter",
"filter": "[all[missing]sort[title]]",
"description": "{{$:/language/Filters/Missing}}",
"text": ""
},
"$:/core/Filters/Orphans": {
"title": "$:/core/Filters/Orphans",
"tags": "$:/tags/Filter",
"filter": "[all[orphans]sort[title]]",
"description": "{{$:/language/Filters/Orphans}}",
"text": ""
},
"$:/core/Filters/OverriddenShadowTiddlers": {
"title": "$:/core/Filters/OverriddenShadowTiddlers",
"tags": "$:/tags/Filter",
"filter": "[is[shadow]]",
"description": "{{$:/language/Filters/OverriddenShadowTiddlers}}",
"text": ""
},
"$:/core/Filters/RecentSystemTiddlers": {
"title": "$:/core/Filters/RecentSystemTiddlers",
"tags": "$:/tags/Filter",
"filter": "[has[modified]!sort[modified]limit[50]]",
"description": "{{$:/language/Filters/RecentSystemTiddlers}}",
"text": ""
},
"$:/core/Filters/RecentTiddlers": {
"title": "$:/core/Filters/RecentTiddlers",
"tags": "$:/tags/Filter",
"filter": "[!is[system]has[modified]!sort[modified]limit[50]]",
"description": "{{$:/language/Filters/RecentTiddlers}}",
"text": ""
},
"$:/core/Filters/SessionTiddlers": {
"title": "$:/core/Filters/SessionTiddlers",
"tags": "$:/tags/Filter",
"filter": "[haschanged[]]",
"description": "{{$:/language/Filters/SessionTiddlers}}",
"text": ""
},
"$:/core/Filters/ShadowTiddlers": {
"title": "$:/core/Filters/ShadowTiddlers",
"tags": "$:/tags/Filter",
"filter": "[all[shadows]sort[title]]",
"description": "{{$:/language/Filters/ShadowTiddlers}}",
"text": ""
},
"$:/core/Filters/StoryList": {
"title": "$:/core/Filters/StoryList",
"tags": "$:/tags/Filter",
"filter": "[list[$:/StoryList]] -$:/AdvancedSearch",
"description": "{{$:/language/Filters/StoryList}}",
"text": ""
},
"$:/core/Filters/SystemTags": {
"title": "$:/core/Filters/SystemTags",
"tags": "$:/tags/Filter",
"filter": "[all[shadows+tiddlers]tags[]is[system]sort[title]]",
"description": "{{$:/language/Filters/SystemTags}}",
"text": ""
},
"$:/core/Filters/SystemTiddlers": {
"title": "$:/core/Filters/SystemTiddlers",
"tags": "$:/tags/Filter",
"filter": "[is[system]sort[title]]",
"description": "{{$:/language/Filters/SystemTiddlers}}",
"text": ""
},
"$:/core/Filters/TypedTiddlers": {
"title": "$:/core/Filters/TypedTiddlers",
"tags": "$:/tags/Filter",
"filter": "[!is[system]has[type]each[type]sort[type]] -[type[text/vnd.tiddlywiki]]",
"description": "{{$:/language/Filters/TypedTiddlers}}",
"text": ""
},
"$:/core/ui/ImportListing": {
"title": "$:/core/ui/ImportListing",
"text": "\\define lingo-base() $:/language/Import/\n\n\\define messageField()\nmessage-$(payloadTiddler)$\n\\end\n\n\\define selectionField()\nselection-$(payloadTiddler)$\n\\end\n\n\\define previewPopupState()\n$(currentTiddler)$!!popup-$(payloadTiddler)$\n\\end\n\n\\define select-all-actions()\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" variable=\"payloadTiddler\">\n<$action-setfield $field={{{ [<payloadTiddler>addprefix[selection-]] }}} $value={{$:/state/import/select-all}}/>\n</$list>\n\\end\n\n<table>\n<tbody>\n<tr>\n<th>\n<$checkbox tiddler=\"$:/state/import/select-all\" field=\"text\" checked=\"checked\" unchecked=\"unchecked\" default=\"checked\" actions=<<select-all-actions>>>\n<<lingo Listing/Select/Caption>>\n</$checkbox>\n</th>\n<th>\n<<lingo Listing/Title/Caption>>\n</th>\n<th>\n<<lingo Listing/Status/Caption>>\n</th>\n</tr>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" variable=\"payloadTiddler\">\n<tr>\n<td>\n<$checkbox field=<<selectionField>> checked=\"checked\" unchecked=\"unchecked\" default=\"checked\"/>\n</td>\n<td>\n<$reveal type=\"nomatch\" stateTitle=<<previewPopupState>> text=\"yes\" tag=\"div\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" setTitle=<<previewPopupState>> setTo=\"yes\">\n{{$:/core/images/right-arrow}} <$text text=<<payloadTiddler>>/>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<previewPopupState>> text=\"yes\" tag=\"div\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" setTitle=<<previewPopupState>> setTo=\"no\">\n{{$:/core/images/down-arrow}} <$text text=<<payloadTiddler>>/>\n</$button>\n</$reveal>\n</td>\n<td>\n<$view field=<<messageField>>/>\n</td>\n</tr>\n<tr>\n<td colspan=\"3\">\n<$reveal type=\"match\" text=\"yes\" stateTitle=<<previewPopupState>> tag=\"div\">\n<$list filter=\"[{$:/state/importpreviewtype}has[text]]\" variable=\"listItem\" emptyMessage={{$:/core/ui/ImportPreviews/Text}}>\n<$transclude tiddler={{$:/state/importpreviewtype}}/>\n</$list>\n</$reveal>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
},
"$:/core/ui/ImportPreviews/Diff": {
"title": "$:/core/ui/ImportPreviews/Diff",
"tags": "$:/tags/ImportPreview",
"caption": "{{$:/language/Import/Listing/Preview/Diff}}",
"text": "<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle=<<payloadTiddler>> destTiddlerTitle=<<currentTiddler>> destSubTiddlerTitle=<<payloadTiddler>>/>\n"
},
"$:/core/ui/ImportPreviews/DiffFields": {
"title": "$:/core/ui/ImportPreviews/DiffFields",
"tags": "$:/tags/ImportPreview",
"caption": "{{$:/language/Import/Listing/Preview/DiffFields}}",
"text": "<$macrocall $name=\"compareTiddlers\" sourceTiddlerTitle=<<payloadTiddler>> destTiddlerTitle=<<currentTiddler>> destSubTiddlerTitle=<<payloadTiddler>> exclude=\"text\"/>\n"
},
"$:/core/ui/ImportPreviews/Fields": {
"title": "$:/core/ui/ImportPreviews/Fields",
"tags": "$:/tags/ImportPreview",
"caption": "{{$:/language/Import/Listing/Preview/Fields}}",
"text": "<table class=\"tc-view-field-table\">\n<tbody>\n<$list filter=\"[<payloadTiddler>subtiddlerfields<currentTiddler>sort[]] -text\" variable=\"fieldName\">\n<tr class=\"tc-view-field\">\n<td class=\"tc-view-field-name\">\n<$text text=<<fieldName>>/>\n</td>\n<td class=\"tc-view-field-value\">\n<$view field=<<fieldName>> tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>>/>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
},
"$:/core/ui/ImportPreviews/Text": {
"title": "$:/core/ui/ImportPreviews/Text",
"tags": "$:/tags/ImportPreview",
"caption": "{{$:/language/Import/Listing/Preview/Text}}",
"text": "<$transclude tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>> mode=\"block\"/>\n"
},
"$:/core/ui/ImportPreviews/TextRaw": {
"title": "$:/core/ui/ImportPreviews/TextRaw",
"tags": "$:/tags/ImportPreview",
"caption": "{{$:/language/Import/Listing/Preview/TextRaw}}",
"text": "<pre><code><$view tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>> /></code></pre>"
},
"$:/core/ui/KeyboardShortcuts/advanced-search": {
"title": "$:/core/ui/KeyboardShortcuts/advanced-search",
"tags": "$:/tags/KeyboardShortcut",
"key": "((advanced-search))",
"text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\">\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\"[data-tiddler-title=\"$:/AdvancedSearch\"] .tc-search input\"\"\"/>\n</$navigator>\n"
},
"$:/core/ui/KeyboardShortcuts/new-image": {
"title": "$:/core/ui/KeyboardShortcuts/new-image",
"tags": "$:/tags/KeyboardShortcut",
"key": "((new-image))",
"text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-image}}\n</$navigator>\n"
},
"$:/core/ui/KeyboardShortcuts/new-journal": {
"title": "$:/core/ui/KeyboardShortcuts/new-journal",
"tags": "$:/tags/KeyboardShortcut",
"key": "((new-journal))",
"text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-journal}}\n</$navigator>\n"
},
"$:/core/ui/KeyboardShortcuts/new-tiddler": {
"title": "$:/core/ui/KeyboardShortcuts/new-tiddler",
"tags": "$:/tags/KeyboardShortcut",
"key": "((new-tiddler))",
"text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-tiddler}}\n</$navigator>\n"
},
"$:/core/ui/KeyboardShortcuts/sidebar-search": {
"title": "$:/core/ui/KeyboardShortcuts/sidebar-search",
"tags": "$:/tags/KeyboardShortcut",
"key": "((sidebar-search))",
"text": "<$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-search input\"/>\n"
},
"$:/core/ui/KeyboardShortcut/toggle-sidebar": {
"title": "$:/core/ui/KeyboardShortcut/toggle-sidebar",
"tags": "$:/tags/KeyboardShortcut",
"key": "((toggle-sidebar))",
"text": "<$list filter=\"[[$:/state/sidebar]is[missing]] [{$:/state/sidebar}removeprefix[yes]]\" emptyMessage=\"\"\"\n<$action-setfield $tiddler=\"$:/state/sidebar\" text=\"yes\"/>\n\"\"\">\n<$action-setfield $tiddler=\"$:/state/sidebar\" text=\"no\"/>\n</$list>\n"
},
"$:/core/ui/ListItemTemplate": {
"title": "$:/core/ui/ListItemTemplate",
"text": "<div class=\"tc-menu-list-item\">\n<$link />\n</div>"
},
"$:/Manager/ItemMain/Fields": {
"title": "$:/Manager/ItemMain/Fields",
"tags": "$:/tags/Manager/ItemMain",
"caption": "{{$:/language/Manager/Item/Fields}}",
"text": "<table>\n<tbody>\n<$list filter=\"[all[current]fields[]sort[title]] -text\" template=\"$:/core/ui/TiddlerFieldTemplate\" variable=\"listItem\"/>\n</tbody>\n</table>\n"
},
"$:/Manager/ItemMain/RawText": {
"title": "$:/Manager/ItemMain/RawText",
"tags": "$:/tags/Manager/ItemMain",
"caption": "{{$:/language/Manager/Item/RawText}}",
"text": "<pre><code><$view/></code></pre>\n"
},
"$:/Manager/ItemMain/WikifiedText": {
"title": "$:/Manager/ItemMain/WikifiedText",
"tags": "$:/tags/Manager/ItemMain",
"caption": "{{$:/language/Manager/Item/WikifiedText}}",
"text": "<$transclude mode=\"block\"/>\n"
},
"$:/Manager/ItemSidebar/Colour": {
"title": "$:/Manager/ItemSidebar/Colour",
"tags": "$:/tags/Manager/ItemSidebar",
"caption": "{{$:/language/Manager/Item/Colour}}",
"text": "\\define swatch-styles()\nheight: 1em;\nbackground-color: $(colour)$\n\\end\n\n<$vars colour={{!!color}}>\n<p style=<<swatch-styles>>/>\n</$vars>\n<p>\n<$edit-text field=\"color\" tag=\"input\" type=\"color\"/> / <$edit-text field=\"color\" tag=\"input\" type=\"text\" size=\"9\"/>\n</p>\n"
},
"$:/Manager/ItemSidebar/Icon": {
"title": "$:/Manager/ItemSidebar/Icon",
"tags": "$:/tags/Manager/ItemSidebar",
"caption": "{{$:/language/Manager/Item/Icon}}",
"text": "<p>\n<div class=\"tc-manager-icon-editor\">\n<$button popup=<<qualify \"$:/state/popup/image-picker\">> class=\"tc-btn-invisible\">\n<$transclude tiddler={{!!icon}}>\n{{$:/language/Manager/Item/Icon/None}}\n</$transclude>\n</$button>\n<div class=\"tc-block-dropdown-wrapper\" style=\"position: static;\">\n<$reveal state=<<qualify \"$:/state/popup/image-picker\">> type=\"nomatch\" text=\"\" default=\"\" tag=\"div\" class=\"tc-popup\">\n<div class=\"tc-block-dropdown tc-popup-keep\" style=\"width: 80%; left: 10%; right: 10%; padding: 0.5em;\">\n<$macrocall $name=\"image-picker-include-tagged-images\" actions=\"\"\"\n<$action-setfield $field=\"icon\" $value=<<imageTitle>>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/image-picker\">>/>\n\"\"\"/>\n</div>\n</$reveal>\n</div>\n</div>\n</p>\n"
},
"$:/Manager/ItemSidebar/Tags": {
"title": "$:/Manager/ItemSidebar/Tags",
"tags": "$:/tags/Manager/ItemSidebar",
"caption": "{{$:/language/Manager/Item/Tags}}",
"text": "\\define tag-checkbox-actions()\n<$action-listops\n\t$tiddler=\"$:/config/Manager/RecentTags\"\n\t$subfilter=\"[<tag>] [list[$:/config/Manager/RecentTags]] +[limit[12]]\"\n/>\n\\end\n\n\\define tag-picker-actions()\n<<tag-checkbox-actions>>\n<$action-listops\n\t$tiddler=<<currentTiddler>>\n\t$field=\"tags\"\n\t$subfilter=\"[<tag>] [all[current]tags[]]\"\n/>\n\\end\n\n<p>\n<$list filter=\"[all[current]tags[]] [list[$:/config/Manager/RecentTags]] +[sort[title]] \" variable=\"tag\">\n<div>\n<$checkbox tiddler=<<currentTiddler>> tag=<<tag>> actions=<<tag-checkbox-actions>>>\n<$macrocall $name=\"tag-pill\" tag=<<tag>>/>\n</$checkbox>\n</div>\n</$list>\n</p>\n<p>\n<$macrocall $name=\"tag-picker\" actions=<<tag-picker-actions>>/>\n</p>\n"
},
"$:/Manager/ItemSidebar/Tools": {
"title": "$:/Manager/ItemSidebar/Tools",
"tags": "$:/tags/Manager/ItemSidebar",
"caption": "{{$:/language/Manager/Item/Tools}}",
"text": "<p>\n<$button to=<<currentTiddler>>>{{$:/core/images/link}} open</$button>\n</p>\n<p>\n<$button message=\"tm-edit-tiddler\" param=<<currentTiddler>>>{{$:/core/images/edit-button}} edit</$button>\n</p>\n"
},
"$:/Manager": {
"title": "$:/Manager",
"icon": "$:/core/images/list",
"color": "#bbb",
"text": "\\define lingo-base() $:/language/Manager/\n\n\\define list-item-content-item()\n<div class=\"tc-manager-list-item-content-item\">\n\t<$vars state-title=\"\"\"$:/state/popup/manager/item/$(listItem)$\"\"\">\n\t\t<$reveal state=<<state-title>> type=\"match\" text=\"show\" default=\"show\" tag=\"div\">\n\t\t\t<$button set=<<state-title>> setTo=\"hide\" class=\"tc-btn-invisible tc-manager-list-item-content-item-heading\">\n\t\t\t\t{{$:/core/images/down-arrow}} <$transclude tiddler=<<listItem>> field=\"caption\"/>\n\t\t\t</$button>\n\t\t</$reveal>\n\t\t<$reveal state=<<state-title>> type=\"nomatch\" text=\"show\" default=\"show\" tag=\"div\">\n\t\t\t<$button set=<<state-title>> setTo=\"show\" class=\"tc-btn-invisible tc-manager-list-item-content-item-heading\">\n\t\t\t\t{{$:/core/images/right-arrow}} <$transclude tiddler=<<listItem>> field=\"caption\"/>\n\t\t\t</$button>\n\t\t</$reveal>\n\t\t<$reveal state=<<state-title>> type=\"match\" text=\"show\" default=\"show\" tag=\"div\" class=\"tc-manager-list-item-content-item-body\">\n\t\t\t<$transclude tiddler=<<listItem>>/>\n\t\t</$reveal>\n\t</$vars>\n</div>\n\\end\n\n<div class=\"tc-manager-wrapper\">\n\t<div class=\"tc-manager-controls\">\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Show/Prompt>> <$select tiddler=\"$:/config/Manager/Show\" default=\"tiddlers\">\n\t\t\t\t<option value=\"tiddlers\"><<lingo Controls/Show/Option/Tiddlers>></option>\n\t\t\t\t<option value=\"tags\"><<lingo Controls/Show/Option/Tags>></option>\n\t\t\t</$select>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Search/Prompt>> <$edit-text tiddler=\"$:/config/Manager/Filter\" tag=\"input\" default=\"\" placeholder={{$:/language/Manager/Controls/Search/Placeholder}}/>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/FilterByTag/Prompt>> <$select tiddler=\"$:/config/Manager/Tag\" default=\"\">\n\t\t\t\t<option value=\"\"><<lingo Controls/FilterByTag/None>></option>\n\t\t\t\t<$list filter=\"[!is{$:/config/Manager/System}tags[]!is[system]sort[title]]\" variable=\"tag\">\n\t\t\t\t\t<option value=<<tag>>><$text text=<<tag>>/></option>\n\t\t\t\t</$list>\n\t\t\t</$select>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Sort/Prompt>> <$select tiddler=\"$:/config/Manager/Sort\" default=\"title\">\n\t\t\t\t<optgroup label=\"Common\">\n\t\t\t\t\t<$list filter=\"title modified modifier created creator created\" variable=\"field\">\n\t\t\t\t\t\t<option value=<<field>>><$text text=<<field>>/></option>\n\t\t\t\t\t</$list>\n\t\t\t\t</optgroup>\n\t\t\t\t<optgroup label=\"All\">\n\t\t\t\t\t<$list filter=\"[all{$:/config/Manager/Show}!is{$:/config/Manager/System}fields[]sort[title]] -title -modified -modifier -created -creator -created\" variable=\"field\">\n\t\t\t\t\t\t<option value=<<field>>><$text text=<<field>>/></option>\n\t\t\t\t\t</$list>\n\t\t\t\t</optgroup>\n\t\t\t</$select>\n\t\t\t<$checkbox tiddler=\"$:/config/Manager/Order\" field=\"text\" checked=\"reverse\" unchecked=\"forward\" default=\"forward\">\n\t\t\t\t<<lingo Controls/Order/Prompt>>\n\t\t\t</$checkbox>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<$checkbox tiddler=\"$:/config/Manager/System\" field=\"text\" checked=\"\" unchecked=\"system\" default=\"system\">\n\t\t\t\t{{$:/language/SystemTiddlers/Include/Prompt}}\n\t\t\t</$checkbox>\n\t\t</div>\n\t</div>\n\t<div class=\"tc-manager-list\">\n\t\t<$list filter=\"[all{$:/config/Manager/Show}!is{$:/config/Manager/System}search{$:/config/Manager/Filter}tag:strict{$:/config/Manager/Tag}sort{$:/config/Manager/Sort}order{$:/config/Manager/Order}]\">\n\t\t\t<$vars transclusion=<<currentTiddler>>>\n\t\t\t\t<div style=\"tc-manager-list-item\">\n\t\t\t\t\t<$button popup=<<qualify \"$:/state/manager/popup\">> class=\"tc-btn-invisible tc-manager-list-item-heading\" selectedClass=\"tc-manager-list-item-heading-selected\">\n\t\t\t\t\t\t<$text text=<<currentTiddler>>/>\n\t\t\t\t\t</$button>\n\t\t\t\t\t<$reveal state=<<qualify \"$:/state/manager/popup\">> type=\"nomatch\" text=\"\" default=\"\" tag=\"div\" class=\"tc-manager-list-item-content tc-popup-handle\">\n\t\t\t\t\t\t<div class=\"tc-manager-list-item-content-tiddler\">\n\t\t\t\t\t\t\t<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Manager/ItemMain]!has[draft.of]]\" variable=\"listItem\">\n\t\t\t\t\t\t\t\t<<list-item-content-item>>\n\t\t\t\t\t\t\t</$list>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class=\"tc-manager-list-item-content-sidebar\">\n\t\t\t\t\t\t\t<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Manager/ItemSidebar]!has[draft.of]]\" variable=\"listItem\">\n\t\t\t\t\t\t\t\t<<list-item-content-item>>\n\t\t\t\t\t\t\t</$list>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</$reveal>\n\t\t\t\t</div>\n\t\t\t</$vars>\n\t\t</$list>\n\t</div>\n</div>\n"
},
"$:/core/ui/MissingTemplate": {
"title": "$:/core/ui/MissingTemplate",
"text": "<div class=\"tc-tiddler-missing\">\n<$button popup=<<qualify \"$:/state/popup/missing\">> class=\"tc-btn-invisible tc-missing-tiddler-label\">\n<$view field=\"title\" format=\"text\" />\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/missing\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n<hr>\n<$list filter=\"[all[current]backlinks[]sort[title]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$reveal>\n</div>\n"
},
"$:/core/ui/MoreSideBar/All": {
"title": "$:/core/ui/MoreSideBar/All",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/All/Caption}}",
"text": "<$list filter={{$:/core/Filters/AllTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
},
"$:/core/ui/MoreSideBar/Drafts": {
"title": "$:/core/ui/MoreSideBar/Drafts",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/Drafts/Caption}}",
"text": "<$list filter={{$:/core/Filters/Drafts!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
},
"$:/core/ui/MoreSideBar/Explorer": {
"title": "$:/core/ui/MoreSideBar/Explorer",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/Explorer/Caption}}",
"text": "<<tree \"$:/\">>\n"
},
"$:/core/ui/MoreSideBar/Missing": {
"title": "$:/core/ui/MoreSideBar/Missing",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/Missing/Caption}}",
"text": "<$list filter={{$:/core/Filters/Missing!!filter}} template=\"$:/core/ui/MissingTemplate\"/>\n"
},
"$:/core/ui/MoreSideBar/Orphans": {
"title": "$:/core/ui/MoreSideBar/Orphans",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/Orphans/Caption}}",
"text": "<$list filter={{$:/core/Filters/Orphans!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
},
"$:/core/ui/MoreSideBar/Plugins": {
"title": "$:/core/ui/MoreSideBar/Plugins",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/ControlPanel/Plugins/Caption}}",
"text": "\n{{$:/language/ControlPanel/Plugins/Installed/Hint}}\n\n<<tabs \"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar/Plugins]!has[draft.of]]\" \"$:/core/ui/MoreSideBar/Plugins/Plugins\">>\n"
},
"$:/core/ui/MoreSideBar/Recent": {
"title": "$:/core/ui/MoreSideBar/Recent",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/Recent/Caption}}",
"text": "<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n"
},
"$:/core/ui/MoreSideBar/Shadows": {
"title": "$:/core/ui/MoreSideBar/Shadows",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/Shadows/Caption}}",
"text": "<$list filter={{$:/core/Filters/ShadowTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
},
"$:/core/ui/MoreSideBar/System": {
"title": "$:/core/ui/MoreSideBar/System",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/System/Caption}}",
"text": "<$list filter={{$:/core/Filters/SystemTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
},
"$:/core/ui/MoreSideBar/Tags": {
"title": "$:/core/ui/MoreSideBar/Tags",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/Tags/Caption}}",
"text": "<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n{{$:/core/ui/Buttons/tag-manager}}\n\n</$set>\n\n</$set>\n\n</$set>\n\n<$list filter={{$:/core/Filters/AllTags!!filter}}>\n\n<$transclude tiddler=\"$:/core/ui/TagTemplate\"/>\n\n</$list>\n\n<hr class=\"tc-untagged-separator\">\n\n{{$:/core/ui/UntaggedTemplate}}\n"
},
"$:/core/ui/MoreSideBar/Types": {
"title": "$:/core/ui/MoreSideBar/Types",
"tags": "$:/tags/MoreSideBar",
"caption": "{{$:/language/SideBar/Types/Caption}}",
"text": "<$list filter={{$:/core/Filters/TypedTiddlers!!filter}}>\n<div class=\"tc-menu-list-item\">\n<$view field=\"type\"/>\n<$list filter=\"[type{!!type}!is[system]sort[title]]\">\n<div class=\"tc-menu-list-subitem\">\n<$link to={{!!title}}><$view field=\"title\"/></$link>\n</div>\n</$list>\n</div>\n</$list>\n"
},
"$:/core/ui/MoreSideBar/Plugins/Languages": {
"title": "$:/core/ui/MoreSideBar/Plugins/Languages",
"tags": "$:/tags/MoreSideBar/Plugins",
"caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}}",
"text": "<$list filter=\"[!has[draft.of]plugin-type[language]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}/>\n"
},
"$:/core/ui/MoreSideBar/Plugins/Plugins": {
"title": "$:/core/ui/MoreSideBar/Plugins/Plugins",
"tags": "$:/tags/MoreSideBar/Plugins",
"caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}}",
"text": "<$list filter=\"[!has[draft.of]plugin-type[plugin]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}>>/>\n"
},
"$:/core/ui/MoreSideBar/Plugins/Theme": {
"title": "$:/core/ui/MoreSideBar/Plugins/Theme",
"tags": "$:/tags/MoreSideBar/Plugins",
"caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}}",
"text": "<$list filter=\"[!has[draft.of]plugin-type[theme]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}/>\n"
},
"$:/core/ui/Buttons/advanced-search": {
"title": "$:/core/ui/Buttons/advanced-search",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/advanced-search-button}} {{$:/language/Buttons/AdvancedSearch/Caption}}",
"description": "{{$:/language/Buttons/AdvancedSearch/Hint}}",
"text": "\\whitespace trim\n\\define control-panel-button(class)\n<$button to=\"$:/AdvancedSearch\" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/advanced-search-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/AdvancedSearch/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/AdvancedSearch]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
},
"$:/core/ui/Buttons/close-all": {
"title": "$:/core/ui/Buttons/close-all",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/close-all-button}} {{$:/language/Buttons/CloseAll/Caption}}",
"description": "{{$:/language/Buttons/CloseAll/Hint}}",
"text": "<$button message=\"tm-close-all-tiddlers\" tooltip={{$:/language/Buttons/CloseAll/Hint}} aria-label={{$:/language/Buttons/CloseAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/close-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/CloseAll/Caption}}/></span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/control-panel": {
"title": "$:/core/ui/Buttons/control-panel",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/options-button}} {{$:/language/Buttons/ControlPanel/Caption}}",
"description": "{{$:/language/Buttons/ControlPanel/Hint}}",
"text": "\\whitespace trim\n\\define control-panel-button(class)\n<$button to=\"$:/ControlPanel\" tooltip={{$:/language/Buttons/ControlPanel/Hint}} aria-label={{$:/language/Buttons/ControlPanel/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/options-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/ControlPanel/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/ControlPanel]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
},
"$:/core/ui/Buttons/encryption": {
"title": "$:/core/ui/Buttons/encryption",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/locked-padlock}} {{$:/language/Buttons/Encryption/Caption}}",
"description": "{{$:/language/Buttons/Encryption/Hint}}",
"text": "\\whitespace trim\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\n<$button message=\"tm-clear-password\" tooltip={{$:/language/Buttons/Encryption/ClearPassword/Hint}} aria-label={{$:/language/Buttons/Encryption/ClearPassword/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/locked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Encryption/ClearPassword/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n<$button message=\"tm-set-password\" tooltip={{$:/language/Buttons/Encryption/SetPassword/Hint}} aria-label={{$:/language/Buttons/Encryption/SetPassword/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/unlocked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Encryption/SetPassword/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n"
},
"$:/core/ui/Buttons/export-page": {
"title": "$:/core/ui/Buttons/export-page",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/export-button}} {{$:/language/Buttons/ExportPage/Caption}}",
"description": "{{$:/language/Buttons/ExportPage/Hint}}",
"text": "<$macrocall $name=\"exportButton\" exportFilter=\"[!is[system]sort[title]]\" lingoBase=\"$:/language/Buttons/ExportPage/\"/>"
},
"$:/core/ui/Buttons/fold-all": {
"title": "$:/core/ui/Buttons/fold-all",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/fold-all-button}} {{$:/language/Buttons/FoldAll/Caption}}",
"description": "{{$:/language/Buttons/FoldAll/Hint}}",
"text": "<$button tooltip={{$:/language/Buttons/FoldAll/Hint}} aria-label={{$:/language/Buttons/FoldAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-all-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/FoldAll/Caption}}/></span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/full-screen": {
"title": "$:/core/ui/Buttons/full-screen",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/full-screen-button}} {{$:/language/Buttons/FullScreen/Caption}}",
"description": "{{$:/language/Buttons/FullScreen/Hint}}",
"text": "<$button message=\"tm-full-screen\" tooltip={{$:/language/Buttons/FullScreen/Hint}} aria-label={{$:/language/Buttons/FullScreen/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/full-screen-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/FullScreen/Caption}}/></span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/home": {
"title": "$:/core/ui/Buttons/home",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/home-button}} {{$:/language/Buttons/Home/Caption}}",
"description": "{{$:/language/Buttons/Home/Hint}}",
"text": "<$button message=\"tm-home\" tooltip={{$:/language/Buttons/Home/Hint}} aria-label={{$:/language/Buttons/Home/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/home-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Home/Caption}}/></span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/import": {
"title": "$:/core/ui/Buttons/import",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/import-button}} {{$:/language/Buttons/Import/Caption}}",
"description": "{{$:/language/Buttons/Import/Hint}}",
"text": "<div class=\"tc-file-input-wrapper\">\n<$button tooltip={{$:/language/Buttons/Import/Hint}} aria-label={{$:/language/Buttons/Import/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/import-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Import/Caption}}/></span>\n</$list>\n</$button>\n<$browse tooltip={{$:/language/Buttons/Import/Hint}}/>\n</div>"
},
"$:/core/ui/Buttons/language": {
"title": "$:/core/ui/Buttons/language",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/globe}} {{$:/language/Buttons/Language/Caption}}",
"description": "{{$:/language/Buttons/Language/Hint}}",
"text": "\\whitespace trim\n\\define flag-title()\n$(languagePluginTitle)$/icon\n\\end\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/language\">> tooltip={{$:/language/Buttons/Language/Hint}} aria-label={{$:/language/Buttons/Language/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n<span class=\"tc-image-button\">\n<$set name=\"languagePluginTitle\" value={{$:/language}}>\n<$image source=<<flag-title>>/>\n</$set>\n</span>\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Language/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/language\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n{{$:/snippets/languageswitcher}}\n</div>\n</$reveal>\n"
},
"$:/core/ui/Buttons/manager": {
"title": "$:/core/ui/Buttons/manager",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/list}} {{$:/language/Buttons/Manager/Caption}}",
"description": "{{$:/language/Buttons/Manager/Hint}}",
"text": "\\whitespace trim\n\\define manager-button(class)\n<$button to=\"$:/Manager\" tooltip={{$:/language/Buttons/Manager/Hint}} aria-label={{$:/language/Buttons/Manager/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/list}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Manager/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/Manager]]\" emptyMessage=<<manager-button>>>\n<<manager-button \"tc-selected\">>\n</$list>\n"
},
"$:/core/ui/Buttons/more-page-actions": {
"title": "$:/core/ui/Buttons/more-page-actions",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/down-arrow}} {{$:/language/Buttons/More/Caption}}",
"description": "{{$:/language/Buttons/More/Hint}}",
"text": "\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n<$button popup=<<qualify \"$:/state/popup/more\">> tooltip={{$:/language/Buttons/More/Hint}} aria-label={{$:/language/Buttons/More/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/More/Caption}}/></span>\n</$list>\n</$button><$reveal state=<<qualify \"$:/state/popup/more\">> type=\"popup\" position=\"below\" animate=\"yes\">\n\n<div class=\"tc-drop-down\">\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"tc-btn-invisible\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]] -[[$:/core/ui/Buttons/more-page-actions]]\" variable=\"listItem\">\n\n<$reveal type=\"match\" state=<<config-title>> text=\"hide\">\n\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$set>\n\n</$reveal>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</div>\n\n</$reveal>"
},
"$:/core/ui/Buttons/new-image": {
"title": "$:/core/ui/Buttons/new-image",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/new-image-button}} {{$:/language/Buttons/NewImage/Caption}}",
"description": "{{$:/language/Buttons/NewImage/Hint}}",
"text": "\\whitespace trim\n<$button tooltip={{$:/language/Buttons/NewImage/Hint}} aria-label={{$:/language/Buttons/NewImage/Caption}} class=<<tv-config-toolbar-class>> actions={{$:/core/ui/Actions/new-image}}>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-image-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewImage/Caption}}/></span>\n</$list>\n</$button>\n"
},
"$:/core/ui/Buttons/new-journal": {
"title": "$:/core/ui/Buttons/new-journal",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournal/Caption}}",
"description": "{{$:/language/Buttons/NewJournal/Hint}}",
"text": "\\whitespace trim\n\\define journalButton()\n<$button tooltip={{$:/language/Buttons/NewJournal/Hint}} aria-label={{$:/language/Buttons/NewJournal/Caption}} class=<<tv-config-toolbar-class>> actions={{$:/core/ui/Actions/new-journal}}>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewJournal/Caption}}/></span>\n</$list>\n</$button>\n\\end\n<<journalButton>>\n"
},
"$:/core/ui/Buttons/new-tiddler": {
"title": "$:/core/ui/Buttons/new-tiddler",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/new-button}} {{$:/language/Buttons/NewTiddler/Caption}}",
"description": "{{$:/language/Buttons/NewTiddler/Hint}}",
"text": "\\whitespace trim\n<$button actions={{$:/core/ui/Actions/new-tiddler}} tooltip={{$:/language/Buttons/NewTiddler/Hint}} aria-label={{$:/language/Buttons/NewTiddler/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewTiddler/Caption}}/></span>\n</$list>\n</$button>\n"
},
"$:/core/ui/Buttons/palette": {
"title": "$:/core/ui/Buttons/palette",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/palette}} {{$:/language/Buttons/Palette/Caption}}",
"description": "{{$:/language/Buttons/Palette/Hint}}",
"text": "\\whitespace trim\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/palette\">> tooltip={{$:/language/Buttons/Palette/Hint}} aria-label={{$:/language/Buttons/Palette/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/palette}}\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Palette/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/palette\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\" style=\"font-size:0.7em;\">\n{{$:/snippets/paletteswitcher}}\n</div>\n</$reveal>\n"
},
"$:/core/ui/Buttons/print": {
"title": "$:/core/ui/Buttons/print",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/print-button}} {{$:/language/Buttons/Print/Caption}}",
"description": "{{$:/language/Buttons/Print/Hint}}",
"text": "<$button message=\"tm-print\" tooltip={{$:/language/Buttons/Print/Hint}} aria-label={{$:/language/Buttons/Print/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/print-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Print/Caption}}/></span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/refresh": {
"title": "$:/core/ui/Buttons/refresh",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/refresh-button}} {{$:/language/Buttons/Refresh/Caption}}",
"description": "{{$:/language/Buttons/Refresh/Hint}}",
"text": "<$button message=\"tm-browser-refresh\" tooltip={{$:/language/Buttons/Refresh/Hint}} aria-label={{$:/language/Buttons/Refresh/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/refresh-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Refresh/Caption}}/></span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/save-wiki": {
"title": "$:/core/ui/Buttons/save-wiki",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/save-button}} {{$:/language/Buttons/SaveWiki/Caption}}",
"description": "{{$:/language/Buttons/SaveWiki/Hint}}",
"text": "<$button tooltip={{$:/language/Buttons/SaveWiki/Hint}} aria-label={{$:/language/Buttons/SaveWiki/Caption}} class=<<tv-config-toolbar-class>>>\n<$wikify name=\"site-title\" text={{$:/config/SaveWikiButton/Filename}}>\n<$action-sendmessage $message=\"tm-save-wiki\" $param={{$:/config/SaveWikiButton/Template}} filename=<<site-title>>/>\n</$wikify>\n<span class=\"tc-dirty-indicator\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/save-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/SaveWiki/Caption}}/></span>\n</$list>\n</span>\n</$button>"
},
"$:/core/ui/Buttons/storyview": {
"title": "$:/core/ui/Buttons/storyview",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/storyview-classic}} {{$:/language/Buttons/StoryView/Caption}}",
"description": "{{$:/language/Buttons/StoryView/Hint}}",
"text": "\\whitespace trim\n\\define icon()\n$:/core/images/storyview-$(storyview)$\n\\end\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/storyview\">> tooltip={{$:/language/Buttons/StoryView/Hint}} aria-label={{$:/language/Buttons/StoryView/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n<$set name=\"storyview\" value={{$:/view}}>\n<$transclude tiddler=<<icon>>/>\n</$set>\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/StoryView/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/storyview\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n{{$:/snippets/viewswitcher}}\n</div>\n</$reveal>\n"
},
"$:/core/ui/Buttons/tag-manager": {
"title": "$:/core/ui/Buttons/tag-manager",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/tag-button}} {{$:/language/Buttons/TagManager/Caption}}",
"description": "{{$:/language/Buttons/TagManager/Hint}}",
"text": "\\whitespace trim\n\\define control-panel-button(class)\n<$button to=\"$:/TagManager\" tooltip={{$:/language/Buttons/TagManager/Hint}} aria-label={{$:/language/Buttons/TagManager/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/tag-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/TagManager/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/TagManager]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
},
"$:/core/ui/Buttons/theme": {
"title": "$:/core/ui/Buttons/theme",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/theme-button}} {{$:/language/Buttons/Theme/Caption}}",
"description": "{{$:/language/Buttons/Theme/Hint}}",
"text": "\\whitespace trim\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/theme\">> tooltip={{$:/language/Buttons/Theme/Hint}} aria-label={{$:/language/Buttons/Theme/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/theme-button}}\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Theme/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/theme\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$linkcatcher to=\"$:/theme\">\n{{$:/snippets/themeswitcher}}\n</$linkcatcher>\n</div>\n</$reveal>\n"
},
"$:/core/ui/Buttons/timestamp": {
"title": "$:/core/ui/Buttons/timestamp",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/timestamp-on}} {{$:/language/Buttons/Timestamp/Caption}}",
"description": "{{$:/language/Buttons/Timestamp/Hint}}",
"text": "\\whitespace trim\n<$reveal type=\"nomatch\" state=\"$:/config/TimestampDisable\" text=\"yes\">\n<$button tooltip={{$:/language/Buttons/Timestamp/On/Hint}} aria-label={{$:/language/Buttons/Timestamp/On/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-setfield $tiddler=\"$:/config/TimestampDisable\" $value=\"yes\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/timestamp-on}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Timestamp/On/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=\"$:/config/TimestampDisable\" text=\"yes\">\n<$button tooltip={{$:/language/Buttons/Timestamp/Off/Hint}} aria-label={{$:/language/Buttons/Timestamp/Off/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-setfield $tiddler=\"$:/config/TimestampDisable\" $value=\"no\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/timestamp-off}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Timestamp/Off/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n"
},
"$:/core/ui/Buttons/unfold-all": {
"title": "$:/core/ui/Buttons/unfold-all",
"tags": "$:/tags/PageControls",
"caption": "{{$:/core/images/unfold-all-button}} {{$:/language/Buttons/UnfoldAll/Caption}}",
"description": "{{$:/language/Buttons/UnfoldAll/Hint}}",
"text": "<$button tooltip={{$:/language/Buttons/UnfoldAll/Hint}} aria-label={{$:/language/Buttons/UnfoldAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-unfold-all-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/UnfoldAll/Caption}}/></span>\n</$list>\n</$button>"
},
"$:/core/ui/PageTemplate/pagecontrols": {
"title": "$:/core/ui/PageTemplate/pagecontrols",
"text": "\\whitespace trim\n\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-page-controls\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\" variable=\"listItem\">\n<$set name=\"hidden\" value=<<config-title>>>\n<$list filter=\"[<hidden>!text[hide]]\" storyview=\"pop\" variable=\"ignore\">\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n</$set>\n</$list>\n</$set>\n</$list>\n</div>\n"
},
"$:/core/ui/PageStylesheet": {
"title": "$:/core/ui/PageStylesheet",
"text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$set name=\"currentTiddler\" value={{$:/language}}>\n\n<$set name=\"languageTitle\" value={{!!name}}>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<$transclude mode=\"block\"/>\n</$list>\n\n</$set>\n\n</$set>\n"
},
"$:/core/ui/PageTemplate/alerts": {
"title": "$:/core/ui/PageTemplate/alerts",
"tags": "$:/tags/PageTemplate",
"text": "<div class=\"tc-alerts\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Alert]!has[draft.of]]\" template=\"$:/core/ui/AlertTemplate\" storyview=\"pop\"/>\n\n</div>\n"
},
"$:/core/ui/PageTemplate/drafts": {
"title": "$:/core/ui/PageTemplate/drafts",
"tags": "$:/tags/PageTemplate",
"text": "\\whitespace trim\n<$reveal state=\"$:/status/IsReadOnly\" type=\"nomatch\" text=\"yes\" tag=\"div\" class=\"tc-drafts-list\">\n<$list filter=\"[has[draft.of]!sort[modified]] -[list[$:/StoryList]]\">\n<$link>\n{{$:/core/images/edit-button}} <$text text=<<currentTiddler>>/>\n</$link>\n</$list>\n</$reveal>\n"
},
"$:/core/ui/PageTemplate/pluginreloadwarning": {
"title": "$:/core/ui/PageTemplate/pluginreloadwarning",
"tags": "$:/tags/PageTemplate",
"text": "\\define lingo-base() $:/language/\n\n<$list filter=\"[{$:/status/RequireReloadDueToPluginChange}match[yes]]\">\n\n<$reveal type=\"nomatch\" state=\"$:/temp/HidePluginWarning\" text=\"yes\">\n\n<div class=\"tc-plugin-reload-warning\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<<lingo PluginReloadWarning>> <$button set=\"$:/temp/HidePluginWarning\" setTo=\"yes\" class=\"tc-btn-invisible\">{{$:/core/images/close-button}}</$button>\n\n</$set>\n\n</div>\n\n</$reveal>\n\n</$list>\n"
},
"$:/core/ui/PageTemplate/sidebar": {
"title": "$:/core/ui/PageTemplate/sidebar",
"tags": "$:/tags/PageTemplate",
"text": "\\whitespace trim\n\\define config-title()\n$:/config/SideBarSegments/Visibility/$(listItem)$\n\\end\n\n<$scrollable fallthrough=\"no\" class=\"tc-sidebar-scrollable\">\n\n<div class=\"tc-sidebar-header\">\n\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"yes\" default=\"yes\" retain=\"yes\" animate=\"yes\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SideBarSegment]!has[draft.of]]\" variable=\"listItem\">\n\n<$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\" tag=\"div\">\n\n<$transclude tiddler=<<listItem>> mode=\"block\"/>\n\n</$reveal>\n\n</$list>\n\n</$reveal>\n\n</div>\n\n</$scrollable>\n"
},
"$:/core/ui/PageTemplate/story": {
"title": "$:/core/ui/PageTemplate/story",
"tags": "$:/tags/PageTemplate",
"text": "\\whitespace trim\n<section class=\"tc-story-river\">\n\n<section class=\"story-backdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/AboveStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n<$list filter=\"[list[$:/StoryList]]\" history=\"$:/HistoryList\" template={{$:/config/ui/ViewTemplate}} editTemplate={{$:/config/ui/EditTemplate}} storyview={{$:/view}} emptyMessage={{$:/config/EmptyStoryMessage}}/>\n\n<section class=\"story-frontdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/BelowStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n</section>\n"
},
"$:/core/ui/PageTemplate/topleftbar": {
"title": "$:/core/ui/PageTemplate/topleftbar",
"tags": "$:/tags/PageTemplate",
"text": "<span class=\"tc-topbar tc-topbar-left\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopLeftBar]!has[draft.of]]\" variable=\"listItem\" storyview=\"pop\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$list>\n\n</span>\n"
},
"$:/core/ui/PageTemplate/toprightbar": {
"title": "$:/core/ui/PageTemplate/toprightbar",
"tags": "$:/tags/PageTemplate",
"text": "<span class=\"tc-topbar tc-topbar-right\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopRightBar]!has[draft.of]]\" variable=\"listItem\" storyview=\"pop\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$list>\n\n</span>\n"
},
"$:/core/ui/PageTemplate": {
"title": "$:/core/ui/PageTemplate",
"text": "\\whitespace trim\n\\define containerClasses()\ntc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$set name=\"tv-config-toolbar-icons\" value={{$:/config/Toolbar/Icons}}>\n\n<$set name=\"tv-config-toolbar-text\" value={{$:/config/Toolbar/Text}}>\n\n<$set name=\"tv-config-toolbar-class\" value={{$:/config/Toolbar/ButtonClass}}>\n\n<$set name=\"tv-enable-drag-and-drop\" value={{$:/config/DragAndDrop/Enable}}>\n\n<$set name=\"tv-show-missing-links\" value={{$:/config/MissingLinks}}>\n\n<$set name=\"storyviewTitle\" value={{$:/view}}>\n\n<$set name=\"languageTitle\" value={{{ [{$:/language}get[name]] }}}>\n\n<div class=<<containerClasses>>>\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n\n<$dropzone enable=<<tv-enable-drag-and-drop>>>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageTemplate]!has[draft.of]]\" variable=\"listItem\">\n\n<$transclude tiddler=<<listItem>>/>\n\n</$list>\n\n</$dropzone>\n\n</$navigator>\n\n</div>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</$set>\n"
},
"$:/PaletteManager": {
"title": "$:/PaletteManager",
"text": "\\define lingo-base() $:/language/ControlPanel/Palette/Editor/\n\\define describePaletteColour(colour)\n<$transclude tiddler=\"$:/language/Docs/PaletteColours/$colour$\"><$text text=\"$colour$\"/></$transclude>\n\\end\n\\define edit-colour-placeholder()\n edit $(colourName)$\n\\end\n\\define colour-tooltip(showhide) $showhide$ editor for $(newColourName)$ \n\\define resolve-colour(macrocall)\n\\import $:/core/macros/utils\n\\whitespace trim\n<$wikify name=\"name\" text=\"\"\"$macrocall$\"\"\">\n<<name>>\n</$wikify>\n\\end\n\\define delete-colour-index-actions() <$action-setfield $index=<<colourName>>/>\n\\define palette-manager-colour-row-segment()\n\\whitespace trim\n<$edit-text index=<<colourName>> tag=\"input\" placeholder=<<edit-colour-placeholder>> default=\"\"/>\n<br>\n<$edit-text index=<<colourName>> type=\"color\" tag=\"input\" class=\"tc-palette-manager-colour-input\"/>\n<$list filter=\"[<currentTiddler>getindex<colourName>removeprefix[<<]removesuffix[>>]] [<currentTiddler>getindex<colourName>removeprefix[<$]removesuffix[/>]]\" variable=\"ignore\">\n<$set name=\"state\" value={{{ [[$:/state/palettemanager/]addsuffix<currentTiddler>addsuffix[/]addsuffix<colourName>] }}}>\n<$wikify name=\"newColourName\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall={{{ [<currentTiddler>getindex<colourName>] }}}/>\"\"\">\n<$reveal state=<<state>> type=\"nomatch\" text=\"show\">\n<$button tooltip=<<colour-tooltip show>> aria-label=<<colour-tooltip show>> class=\"tc-btn-invisible\" set=<<state>> setTo=\"show\">{{$:/core/images/down-arrow}} <$text text=<<newColourName>>/></$button><br>\n</$reveal>\n<$reveal state=<<state>> type=\"match\" text=\"show\">\n<$button tooltip=<<colour-tooltip hide>> aria-label=<<colour-tooltip show>> class=\"tc-btn-invisible\" actions=\"\"\"<$action-deletetiddler $tiddler=<<state>>/>\"\"\">{{$:/core/images/up-arrow}} <$text text=<<newColourName>>/></$button><br>\n</$reveal>\n<$reveal state=<<state>> type=\"match\" text=\"show\">\n<$set name=\"colourName\" value=<<newColourName>>>\n<br>\n<<palette-manager-colour-row-segment>>\n<br><br>\n</$set>\n</$reveal>\n</$wikify>\n</$set>\n</$list>\n\\end\n\\define palette-manager-colour-row()\n\\whitespace trim\n<tr>\n<td>\n<span style=\"float:right;\">\n<$button tooltip=<<lingo Delete/Hint>> aria-label=<<lingo Delete/Hint>> class=\"tc-btn-invisible\" actions=<<delete-colour-index-actions>>>\n{{$:/core/images/delete-button}}</$button>\n</span>\n''<$macrocall $name=\"describePaletteColour\" colour=<<colourName>>/>''<br/>\n<$macrocall $name=\"colourName\" $output=\"text/plain\"/>\n</td>\n<td>\n<<palette-manager-colour-row-segment>>\n</td>\n</tr>\n\\end\n\\define palette-manager-table()\n\\whitespace trim\n<table>\n<tbody>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Palette]indexes[]]\" variable=\"colourName\">\n<$list filter=\"[<currentTiddler>indexes[]removeprefix<colourName>suffix[]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$list filter=\"[{$:/state/palettemanager/showexternal}removeprefix[yes]suffix[]]\" variable=\"ignore\">\n<<palette-manager-colour-row>>\n</$list>\n\"\"\">\n<<palette-manager-colour-row>>\n</$list>\n</$list>\n</tbody>\n</table>\n\\end\n<$set name=\"currentTiddler\" value={{$:/palette}}>\n\n<<lingo Prompt>> <$link to={{$:/palette}}><$macrocall $name=\"currentTiddler\" $output=\"text/plain\"/></$link>\n\n<$list filter=\"[all[current]is[shadow]is[tiddler]]\" variable=\"listItem\">\n<<lingo Prompt/Modified>>\n<$button message=\"tm-delete-tiddler\" param={{$:/palette}}><<lingo Reset/Caption>></$button>\n</$list>\n\n<$list filter=\"[all[current]is[shadow]!is[tiddler]]\" variable=\"listItem\">\n<<lingo Clone/Prompt>>\n</$list>\n\n<$button message=\"tm-new-tiddler\" param={{$:/palette}}><<lingo Clone/Caption>></$button>\n\n<$checkbox tiddler=\"$:/state/palettemanager/showexternal\" field=\"text\" checked=\"yes\" unchecked=\"no\"> <<lingo Names/External/Show>></$checkbox>\n\n<<palette-manager-table>>\n"
},
"$:/core/ui/PluginInfo": {
"title": "$:/core/ui/PluginInfo",
"text": "\\define localised-info-tiddler-title()\n$(currentTiddler)$/$(languageTitle)$/$(currentTab)$\n\\end\n\\define info-tiddler-title()\n$(currentTiddler)$/$(currentTab)$\n\\end\n\\define default-tiddler-title()\n$:/core/ui/PluginInfo/Default/$(currentTab)$\n\\end\n<$transclude tiddler=<<localised-info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<localised-info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<default-tiddler-title>> mode=\"block\">\n{{$:/language/ControlPanel/Plugin/NoInfoFound/Hint}}\n</$transclude>\n</$transclude>\n</$transclude>\n</$transclude>\n"
},
"$:/core/ui/PluginInfo/Default/contents": {
"title": "$:/core/ui/PluginInfo/Default/contents",
"text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/PluginInfo/\n<<lingo Hint>>\n<ul>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" emptyMessage=<<lingo Empty/Hint>>>\n<li>\n<$link />\n</li>\n</$list>\n</ul>\n"
},
"$:/core/ui/PluginListItemTemplate": {
"title": "$:/core/ui/PluginListItemTemplate",
"text": "<div class=\"tc-menu-list-item\">\n<$link to={{!!title}}><$view field=\"description\"><$view field=\"title\"/></$view></$link>\n</div>"
},
"$:/core/ui/SearchResults": {
"title": "$:/core/ui/SearchResults",
"text": "<div class=\"tc-search-results\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]butfirst[]limit[1]]\" emptyMessage=\"\"\"\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\">\n<$transclude mode=\"block\"/>\n</$list>\n\"\"\">\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\" default={{$:/config/SearchResults/Default}}/>\n\n</$list>\n\n</div>\n"
},
"$:/core/ui/SideBar/More": {
"title": "$:/core/ui/SideBar/More",
"tags": "$:/tags/SideBar",
"caption": "{{$:/language/SideBar/More/Caption}}",
"text": "<div class=\"tc-more-sidebar\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]\" default={{$:/config/DefaultMoreSidebarTab}} state=\"$:/state/tab/moresidebar\" class=\"tc-vertical tc-sidebar-tabs-more\" />\n</div>"
},
"$:/core/ui/SideBar/Open": {
"title": "$:/core/ui/SideBar/Open",
"tags": "$:/tags/SideBar",
"caption": "{{$:/language/SideBar/Open/Caption}}",
"text": "\\whitespace trim\n\\define lingo-base() $:/language/CloseAll/\n\n\\define drop-actions()\n<$action-listops $tiddler=<<tv-story-list>> $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n\\end\n\n\\define placeholder()\n<div class=\"tc-droppable-placeholder\"/>\n\\end\n\n\\define droppable-item(button)\n\\whitespace trim\n<$droppable actions=<<drop-actions>> enable=<<tv-allow-drag-and-drop>>>\n<<placeholder>>\n<div>\n$button$\n</div>\n</$droppable>\n\\end\n\n<div class=\"tc-sidebar-tab-open\">\n<$list filter=\"[list<tv-story-list>]\" history=<<tv-history-list>> storyview=\"pop\">\n<div class=\"tc-sidebar-tab-open-item\">\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=\"tc-btn-invisible tc-btn-mini\">{{$:/core/images/close-button}}</$button> <$link to={{!!title}}><$view field=\"title\"/></$link>\"\"\"/>\n</div>\n</$list>\n<$tiddler tiddler=\"\">\n<div>\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-all-tiddlers\" class=\"tc-btn-invisible tc-btn-mini\"><<lingo Button>></$button>\"\"\"/>\n</div>\n</$tiddler>\n</div>\n"
},
"$:/core/ui/SideBar/Recent": {
"title": "$:/core/ui/SideBar/Recent",
"tags": "$:/tags/SideBar",
"caption": "{{$:/language/SideBar/Recent/Caption}}",
"text": "<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n"
},
"$:/core/ui/SideBar/Tools": {
"title": "$:/core/ui/SideBar/Tools",
"tags": "$:/tags/SideBar",
"caption": "{{$:/language/SideBar/Tools/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/\n\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n\n<<lingo Basics/Version/Prompt>> <<version>>\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\" variable=\"listItem\">\n\n<div style=\"position:relative;\" class={{{ [<listItem>encodeuricomponent[]addprefix[tc-btn-]] }}}>\n\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <$transclude tiddler=<<listItem>>/> <i class=\"tc-muted\"><$transclude tiddler=<<listItem>> field=\"description\"/></i>\n\n</div>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n"
},
"$:/core/ui/SideBarLists": {
"title": "$:/core/ui/SideBarLists",
"text": "<$transclude tiddler=\"$:/core/ui/SideBarSegments/search\"/>\n\n<$transclude tiddler=\"$:/core/ui/SideBarSegments/tabs\"/>\n\n"
},
"$:/core/ui/SideBarSegments/page-controls": {
"title": "$:/core/ui/SideBarSegments/page-controls",
"tags": "$:/tags/SideBarSegment",
"text": "{{||$:/core/ui/PageTemplate/pagecontrols}}\n"
},
"$:/core/ui/SideBarSegments/search": {
"title": "$:/core/ui/SideBarSegments/search",
"tags": "$:/tags/SideBarSegment",
"text": "\\whitespace trim\n<div class=\"tc-sidebar-lists tc-sidebar-search\">\n\n<$set name=\"searchTiddler\" value=\"$:/temp/search\">\n<div class=\"tc-search\">\n<$edit-text tiddler=\"$:/temp/search\" type=\"search\" tag=\"input\" focus={{$:/config/Search/AutoFocus}} focusPopup=<<qualify \"$:/state/popup/search-dropdown\">> class=\"tc-popup-handle\"/>\n<$reveal state=\"$:/temp/search\" type=\"nomatch\" text=\"\">\n<$button tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" text={{$:/temp/search}}/>\n<$action-setfield $tiddler=\"$:/temp/search\" text=\"\"/>\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n{{$:/core/images/advanced-search-button}}\n</$button>\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/search\" text=\"\" />\n{{$:/core/images/close-button}}\n</$button>\n<$button popup=<<qualify \"$:/state/popup/search-dropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n<$list filter=\"[{$:/temp/search}minlength{$:/config/Search/MinLength}limit[1]]\" variable=\"listItem\">\n<$set name=\"searchTerm\" value={{{ [<searchTiddler>get[text]] }}}>\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[!is[system]search<searchTerm>]\"/>\"\"\">\n{{$:/language/Search/Matches}}\n</$set>\n</$set>\n</$list>\n</$button>\n</$reveal>\n<$reveal state=\"$:/temp/search\" type=\"match\" text=\"\">\n<$button to=\"$:/AdvancedSearch\" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"tc-btn-invisible\">\n{{$:/core/images/advanced-search-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal tag=\"div\" class=\"tc-block-dropdown-wrapper\" state=\"$:/temp/search\" type=\"nomatch\" text=\"\">\n\n<$reveal tag=\"div\" class=\"tc-block-dropdown tc-search-drop-down tc-popup-handle\" state=<<qualify \"$:/state/popup/search-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n\n<$list filter=\"[{$:/temp/search}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n{{$:/core/ui/SearchResults}}\n\n</$list>\n\n</$reveal>\n\n</$reveal>\n\n</$set>\n\n</div>\n"
},
"$:/core/ui/SideBarSegments/site-subtitle": {
"title": "$:/core/ui/SideBarSegments/site-subtitle",
"tags": "$:/tags/SideBarSegment",
"text": "<div class=\"tc-site-subtitle\">\n\n<$transclude tiddler=\"$:/SiteSubtitle\" mode=\"inline\"/>\n\n</div>\n"
},
"$:/core/ui/SideBarSegments/site-title": {
"title": "$:/core/ui/SideBarSegments/site-title",
"tags": "$:/tags/SideBarSegment",
"text": "<h1 class=\"tc-site-title\">\n\n<$transclude tiddler=\"$:/SiteTitle\" mode=\"inline\"/>\n\n</h1>\n"
},
"$:/core/ui/SideBarSegments/tabs": {
"title": "$:/core/ui/SideBarSegments/tabs",
"tags": "$:/tags/SideBarSegment",
"text": "<div class=\"tc-sidebar-lists tc-sidebar-tabs\">\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]]\" default={{$:/config/DefaultSidebarTab}} state=\"$:/state/tab/sidebar\" class=\"tc-sidebar-tabs-main\"/>\n\n</div>\n"
},
"$:/TagManager": {
"title": "$:/TagManager",
"icon": "$:/core/images/tag-button",
"color": "#bbb",
"text": "\\define lingo-base() $:/language/TagManager/\n\\define iconEditorTab(type)\n\\whitespace trim\n<$link to=\"\"><<lingo Icons/None>></$link>\n<$list filter=\"[all[shadows+tiddlers]is[image]] [all[shadows+tiddlers]tag[$:/tags/Image]] -[type[application/pdf]] +[sort[title]] +[$type$is[system]]\">\n<$link to={{!!title}}>\n<$transclude/> <$view field=\"title\"/>\n</$link>\n</$list>\n\\end\n\\define iconEditor(title)\n\\whitespace trim\n<div class=\"tc-drop-down-wrapper\">\n<$button popupTitle={{{ [[$:/state/popup/icon/]addsuffix<__title__>] }}} class=\"tc-btn-invisible tc-btn-dropdown\">{{$:/core/images/down-arrow}}</$button>\n<$reveal stateTitle={{{ [[$:/state/popup/icon/]addsuffix<__title__>] }}} type=\"popup\" position=\"belowleft\" text=\"\" default=\"\">\n<div class=\"tc-drop-down\">\n<$linkcatcher actions=\"\"\"<$action-setfield $tiddler=<<__title__>> icon=<<navigateTo>>/>\"\"\">\n<<iconEditorTab type:\"!\">>\n<hr/>\n<<iconEditorTab type:\"\">>\n</$linkcatcher>\n</div>\n</$reveal>\n</div>\n\\end\n\\define toggleButton(state)\n\\whitespace trim\n<$reveal stateTitle=<<__state__>> type=\"match\" text=\"closed\" default=\"closed\">\n<$button setTitle=<<__state__>> setTo=\"open\" class=\"tc-btn-invisible tc-btn-dropdown\" selectedClass=\"tc-selected\">\n{{$:/core/images/info-button}}\n</$button>\n</$reveal>\n<$reveal stateTitle=<<__state__>> type=\"match\" text=\"open\" default=\"closed\">\n<$button setTitle=<<__state__>> setTo=\"closed\" class=\"tc-btn-invisible tc-btn-dropdown\" selectedClass=\"tc-selected\">\n{{$:/core/images/info-button}}\n</$button>\n</$reveal>\n\\end\n\\whitespace trim\n<table class=\"tc-tag-manager-table\">\n<tbody>\n<tr>\n<th><<lingo Colour/Heading>></th>\n<th class=\"tc-tag-manager-tag\"><<lingo Tag/Heading>></th>\n<th><<lingo Count/Heading>></th>\n<th><<lingo Icon/Heading>></th>\n<th><<lingo Info/Heading>></th>\n</tr>\n<$list filter=\"[tags[]!is[system]sort[title]]\">\n<tr>\n<td><$edit-text field=\"color\" tag=\"input\" type=\"color\"/></td>\n<td>{{||$:/core/ui/TagTemplate}}</td>\n<td><$count filter=\"[all[current]tagging[]]\"/></td>\n<td>\n<$macrocall $name=\"iconEditor\" title={{!!title}}/>\n</td>\n<td>\n<$macrocall $name=\"toggleButton\" state={{{ [[$:/state/tag-manager/]addsuffix<currentTiddler>] }}} /> \n</td>\n</tr>\n<tr>\n<td></td>\n<td colspan=\"4\">\n<$reveal stateTitle={{{ [[$:/state/tag-manager/]addsuffix<currentTiddler>] }}} type=\"match\" text=\"open\" default=\"\">\n<table>\n<tbody>\n<tr><td><<lingo Colour/Heading>></td><td><$edit-text field=\"color\" tag=\"input\" type=\"text\" size=\"9\"/></td></tr>\n<tr><td><<lingo Icon/Heading>></td><td><$edit-text field=\"icon\" tag=\"input\" size=\"45\"/></td></tr>\n</tbody>\n</table>\n</$reveal>\n</td>\n</tr>\n</$list>\n<tr>\n<td></td>\n<td style=\"position:relative;\">\n{{$:/core/ui/UntaggedTemplate}}\n</td>\n<td>\n<small class=\"tc-menu-list-count\"><$count filter=\"[untagged[]!is[system]] -[tags[]]\"/></small>\n</td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n"
},
"$:/core/ui/TagTemplate": {
"title": "$:/core/ui/TagTemplate",
"text": "\\whitespace trim\n<span class=\"tc-tag-list-item\">\n<$set name=\"transclusion\" value=<<currentTiddler>>>\n<$macrocall $name=\"tag-pill-body\" tag=<<currentTiddler>> icon={{!!icon}} colour={{!!color}} palette={{$:/palette}} element-tag=\"\"\"$button\"\"\" element-attributes=\"\"\"popup=<<qualify \"$:/state/popup/tag\">> dragFilter='[all[current]tagging[]]' tag='span'\"\"\"/>\n<$reveal state=<<qualify \"$:/state/popup/tag\">> type=\"popup\" position=\"below\" animate=\"yes\" class=\"tc-drop-down\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</$set>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TagDropdown]!has[draft.of]]\" variable=\"listItem\"> \n<$transclude tiddler=<<listItem>>/> \n</$list>\n<hr>\n<$macrocall $name=\"list-tagged-draggable\" tag=<<currentTiddler>>/>\n</$reveal>\n</$set>\n</span>\n"
},
"$:/core/ui/TiddlerFieldTemplate": {
"title": "$:/core/ui/TiddlerFieldTemplate",
"text": "<tr class=\"tc-view-field\">\n<td class=\"tc-view-field-name\">\n<$text text=<<listItem>>/>\n</td>\n<td class=\"tc-view-field-value\">\n<$view field=<<listItem>>/>\n</td>\n</tr>"
},
"$:/core/ui/TiddlerFields": {
"title": "$:/core/ui/TiddlerFields",
"text": "<table class=\"tc-view-field-table\">\n<tbody>\n<$list filter=\"[all[current]fields[]sort[title]] -text\" template=\"$:/core/ui/TiddlerFieldTemplate\" variable=\"listItem\"/>\n</tbody>\n</table>\n"
},
"$:/core/ui/TiddlerInfo/Advanced/PluginInfo": {
"title": "$:/core/ui/TiddlerInfo/Advanced/PluginInfo",
"tags": "$:/tags/TiddlerInfo/Advanced",
"text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/PluginInfo/\n<$list filter=\"[all[current]has[plugin-type]]\">\n\n! <<lingo Heading>>\n\n<<lingo Hint>>\n<ul>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" emptyMessage=<<lingo Empty/Hint>>>\n<li>\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</li>\n</$list>\n</ul>\n\n</$list>\n"
},
"$:/core/ui/TiddlerInfo/Advanced/ShadowInfo": {
"title": "$:/core/ui/TiddlerInfo/Advanced/ShadowInfo",
"tags": "$:/tags/TiddlerInfo/Advanced",
"text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/ShadowInfo/\n<$set name=\"infoTiddler\" value=<<currentTiddler>>>\n\n''<<lingo Heading>>''\n\n<$list filter=\"[all[current]!is[shadow]]\">\n\n<<lingo NotShadow/Hint>>\n\n</$list>\n\n<$list filter=\"[all[current]is[shadow]]\">\n\n<<lingo Shadow/Hint>>\n\n<$list filter=\"[all[current]shadowsource[]]\">\n\n<$set name=\"pluginTiddler\" value=<<currentTiddler>>>\n<<lingo Shadow/Source>>\n</$set>\n\n</$list>\n\n<$list filter=\"[all[current]is[shadow]is[tiddler]]\">\n\n<<lingo OverriddenShadow/Hint>>\n\n</$list>\n\n\n</$list>\n</$set>\n"
},
"$:/core/ui/TiddlerInfo/Advanced": {
"title": "$:/core/ui/TiddlerInfo/Advanced",
"tags": "$:/tags/TiddlerInfo",
"caption": "{{$:/language/TiddlerInfo/Advanced/Caption}}",
"text": "<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfo/Advanced]!has[draft.of]]\" variable=\"listItem\">\n<$transclude tiddler=<<listItem>>/>\n\n</$list>\n"
},
"$:/core/ui/TiddlerInfo/Fields": {
"title": "$:/core/ui/TiddlerInfo/Fields",
"tags": "$:/tags/TiddlerInfo",
"caption": "{{$:/language/TiddlerInfo/Fields/Caption}}",
"text": "<$transclude tiddler=\"$:/core/ui/TiddlerFields\"/>\n"
},
"$:/core/ui/TiddlerInfo/List": {
"title": "$:/core/ui/TiddlerInfo/List",
"tags": "$:/tags/TiddlerInfo",
"caption": "{{$:/language/TiddlerInfo/List/Caption}}",
"text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[list{!!title}]\" emptyMessage=<<lingo List/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
},
"$:/core/ui/TiddlerInfo/Listed": {
"title": "$:/core/ui/TiddlerInfo/Listed",
"tags": "$:/tags/TiddlerInfo",
"caption": "{{$:/language/TiddlerInfo/Listed/Caption}}",
"text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]listed[]!is[system]]\" emptyMessage=<<lingo Listed/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
},
"$:/core/ui/TiddlerInfo/References": {
"title": "$:/core/ui/TiddlerInfo/References",
"tags": "$:/tags/TiddlerInfo",
"caption": "{{$:/language/TiddlerInfo/References/Caption}}",
"text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]backlinks[]sort[title]]\" emptyMessage=<<lingo References/Empty>> template=\"$:/core/ui/ListItemTemplate\">\n</$list>"
},
"$:/core/ui/TiddlerInfo/Tagging": {
"title": "$:/core/ui/TiddlerInfo/Tagging",
"tags": "$:/tags/TiddlerInfo",
"caption": "{{$:/language/TiddlerInfo/Tagging/Caption}}",
"text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]tagging[]]\" emptyMessage=<<lingo Tagging/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
},
"$:/core/ui/TiddlerInfo/Tools": {
"title": "$:/core/ui/TiddlerInfo/Tools",
"tags": "$:/tags/TiddlerInfo",
"caption": "{{$:/language/TiddlerInfo/Tools/Caption}}",
"text": "\\define lingo-base() $:/language/TiddlerInfo/\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]\" variable=\"listItem\">\n\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <$transclude tiddler=<<listItem>>/> <i class=\"tc-muted\"><$transclude tiddler=<<listItem>> field=\"description\"/></i>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n"
},
"$:/core/ui/TiddlerInfo": {
"title": "$:/core/ui/TiddlerInfo",
"text": "<div style=\"position:relative;\">\n<div class=\"tc-tiddler-controls\" style=\"position:absolute;right:0;\">\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"sticky\">\n<$button set=<<tiddlerInfoState>> setTo=\"\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=\"tc-btn-invisible\">\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n</div>\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfo]!has[draft.of]]\" default={{$:/config/TiddlerInfo/Default}}/>"
},
"$:/core/ui/TopBar/menu": {
"title": "$:/core/ui/TopBar/menu",
"tags": "$:/tags/TopRightBar",
"text": "<$list filter=\"[[$:/state/sidebar]get[text]] +[else[yes]!match[no]]\" variable=\"ignore\">\n<$button set=\"$:/state/sidebar\" setTo=\"no\" tooltip={{$:/language/Buttons/HideSideBar/Hint}} aria-label={{$:/language/Buttons/HideSideBar/Caption}} class=\"tc-btn-invisible\">{{$:/core/images/chevron-right}}</$button>\n</$list>\n<$list filter=\"[[$:/state/sidebar]get[text]] +[else[yes]match[no]]\" variable=\"ignore\">\n<$button set=\"$:/state/sidebar\" setTo=\"yes\" tooltip={{$:/language/Buttons/ShowSideBar/Hint}} aria-label={{$:/language/Buttons/ShowSideBar/Caption}} class=\"tc-btn-invisible\">{{$:/core/images/chevron-left}}</$button>\n</$list>\n"
},
"$:/core/ui/UntaggedTemplate": {
"title": "$:/core/ui/UntaggedTemplate",
"text": "\\define lingo-base() $:/language/SideBar/\n<$button popup=<<qualify \"$:/state/popup/tag\">> class=\"tc-btn-invisible tc-untagged-label tc-tag-label\">\n<<lingo Tags/Untagged/Caption>>\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/tag\">> type=\"popup\" position=\"below\">\n<div class=\"tc-drop-down\">\n<$list filter=\"[untagged[]!is[system]] -[tags[]] +[sort[title]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$reveal>\n"
},
"$:/core/ui/ViewTemplate/body": {
"title": "$:/core/ui/ViewTemplate/body",
"tags": "$:/tags/ViewTemplate",
"text": "<$reveal tag=\"div\" class=\"tc-tiddler-body\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" retain=\"yes\" animate=\"yes\">\n\n<$list filter=\"[all[current]!has[plugin-type]!field:hide-body[yes]]\">\n\n<$transclude>\n\n<$transclude tiddler=\"$:/language/MissingTiddler/Hint\"/>\n\n</$transclude>\n\n</$list>\n\n</$reveal>\n"
},
"$:/core/ui/ViewTemplate/classic": {
"title": "$:/core/ui/ViewTemplate/classic",
"tags": "$:/tags/ViewTemplate $:/tags/EditTemplate",
"text": "\\define lingo-base() $:/language/ClassicWarning/\n<$list filter=\"[all[current]type[text/x-tiddlywiki]]\">\n<div class=\"tc-message-box\">\n\n<<lingo Hint>>\n\n<$button set=\"!!type\" setTo=\"text/vnd.tiddlywiki\"><<lingo Upgrade/Caption>></$button>\n\n</div>\n</$list>\n"
},
"$:/core/ui/ViewTemplate/import": {
"title": "$:/core/ui/ViewTemplate/import",
"tags": "$:/tags/ViewTemplate",
"text": "\\define lingo-base() $:/language/Import/\n\n\\define buttons()\n<$button message=\"tm-delete-tiddler\" param=<<currentTiddler>>><<lingo Listing/Cancel/Caption>></$button>\n<$button message=\"tm-perform-import\" param=<<currentTiddler>>><<lingo Listing/Import/Caption>></$button>\n<<lingo Listing/Preview>> <$select tiddler=\"$:/state/importpreviewtype\" default=\"$:/core/ui/ImportPreviews/Text\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ImportPreview]!has[draft.of]]\">\n<option value=<<currentTiddler>>>{{!!caption}}</option>\n</$list>\n</$select>\n\\end\n\n<$list filter=\"[all[current]field:plugin-type[import]]\">\n\n<div class=\"tc-import\">\n\n<<lingo Listing/Hint>>\n\n<<buttons>>\n\n{{||$:/core/ui/ImportListing}}\n\n<<buttons>>\n\n</div>\n\n</$list>\n"
},
"$:/core/ui/ViewTemplate/plugin": {
"title": "$:/core/ui/ViewTemplate/plugin",
"tags": "$:/tags/ViewTemplate",
"text": "<$list filter=\"[all[current]has[plugin-type]] -[all[current]field:plugin-type[import]]\">\n<$set name=\"plugin-type\" value={{!!plugin-type}}>\n<$set name=\"default-popup-state\" value=\"yes\">\n<$set name=\"qualified-state\" value=<<qualify \"$:/state/plugin-info\">>>\n{{||$:/core/ui/Components/plugin-info}}\n</$set>\n</$set>\n</$set>\n</$list>\n"
},
"$:/core/ui/ViewTemplate/subtitle": {
"title": "$:/core/ui/ViewTemplate/subtitle",
"tags": "$:/tags/ViewTemplate",
"text": "\\whitespace trim\n<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<div class=\"tc-subtitle\">\n<$link to={{!!modifier}} />\n<$view field=\"modified\" format=\"date\" template={{$:/language/Tiddler/DateFormat}}/>\n</div>\n</$reveal>\n"
},
"$:/core/ui/ViewTemplate/tags": {
"title": "$:/core/ui/ViewTemplate/tags",
"tags": "$:/tags/ViewTemplate",
"text": "<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<div class=\"tc-tags-wrapper\"><$list filter=\"[all[current]tags[]sort[title]]\" template=\"$:/core/ui/TagTemplate\" storyview=\"pop\"/></div>\n</$reveal>\n"
},
"$:/core/ui/ViewTemplate/title": {
"title": "$:/core/ui/ViewTemplate/title",
"tags": "$:/tags/ViewTemplate",
"text": "\\whitespace trim\n\\define title-styles()\nfill:$(foregroundColor)$;\n\\end\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-tiddler-title\">\n<div class=\"tc-titlebar\">\n<span class=\"tc-tiddler-controls\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]\" variable=\"listItem\"><$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"><$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\"><$transclude tiddler=<<listItem>>/></$set></$reveal></$list>\n</span>\n<$set name=\"tv-wikilinks\" value={{$:/config/Tiddlers/TitleLinks}}>\n<$link>\n<$set name=\"foregroundColor\" value={{!!color}}>\n<span class=\"tc-tiddler-title-icon\" style=<<title-styles>>>\n<$transclude tiddler={{!!icon}}>\n<$transclude tiddler={{$:/config/DefaultTiddlerIcon}}/>\n</$transclude>\n</span>\n</$set>\n<$list filter=\"[all[current]removeprefix[$:/]]\">\n<h2 class=\"tc-title\" title={{$:/language/SystemTiddler/Tooltip}}>\n<span class=\"tc-system-title-prefix\">$:/</span><$text text=<<currentTiddler>>/>\n</h2>\n</$list>\n<$list filter=\"[all[current]!prefix[$:/]]\">\n<h2 class=\"tc-title\">\n<$view field=\"title\"/>\n</h2>\n</$list>\n</$link>\n</$set>\n</div>\n\n<$reveal type=\"nomatch\" text=\"\" default=\"\" state=<<tiddlerInfoState>> class=\"tc-tiddler-info tc-popup-handle\" animate=\"yes\" retain=\"yes\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfoSegment]!has[draft.of]] [[$:/core/ui/TiddlerInfo]]\" variable=\"listItem\"><$transclude tiddler=<<listItem>> mode=\"block\"/></$list>\n\n</$reveal>\n</div>"
},
"$:/core/ui/ViewTemplate/unfold": {
"title": "$:/core/ui/ViewTemplate/unfold",
"tags": "$:/tags/ViewTemplate",
"text": "<$reveal tag=\"div\" type=\"nomatch\" state=\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar\" text=\"hide\">\n<$reveal tag=\"div\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" default=\"show\" retain=\"yes\" animate=\"yes\">\n<$button tooltip={{$:/language/Buttons/Fold/Hint}} aria-label={{$:/language/Buttons/Fold/Caption}} class=\"tc-fold-banner\">\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n{{$:/core/images/chevron-up}}\n</$button>\n</$reveal>\n<$reveal tag=\"div\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"show\" default=\"show\" retain=\"yes\" animate=\"yes\">\n<$button tooltip={{$:/language/Buttons/Unfold/Hint}} aria-label={{$:/language/Buttons/Unfold/Caption}} class=\"tc-unfold-banner\">\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</$reveal>\n"
},
"$:/core/ui/ViewTemplate": {
"title": "$:/core/ui/ViewTemplate",
"text": "\\define folded-state()\n$:/state/folded/$(currentTiddler)$\n\\end\n\\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]]\n<$vars storyTiddler=<<currentTiddler>> tiddlerInfoState=<<qualify \"$:/state/popup/tiddler-info\">>><div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class={{{ tc-tiddler-frame tc-tiddler-view-frame [<currentTiddler>is[tiddler]then[tc-tiddler-exists]] [<currentTiddler>is[missing]!is[shadow]then[tc-tiddler-missing]] [<currentTiddler>is[shadow]then[tc-tiddler-exists tc-tiddler-shadow]] [<currentTiddler>is[shadow]is[tiddler]then[tc-tiddler-overridden-shadow]] [<currentTiddler>is[system]then[tc-tiddler-system]] [{!!class}] [<currentTiddler>tags[]encodeuricomponent[]addprefix[tc-tagged-]] +[join[ ]] }}}><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewTemplate]!has[draft.of]]\" variable=\"listItem\"><$transclude tiddler=<<listItem>>/></$list>\n</div>\n</$vars>\n"
},
"$:/core/ui/Buttons/clone": {
"title": "$:/core/ui/Buttons/clone",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/clone-button}} {{$:/language/Buttons/Clone/Caption}}",
"description": "{{$:/language/Buttons/Clone/Hint}}",
"text": "\\whitespace trim\n<$button message=\"tm-new-tiddler\" param=<<currentTiddler>> tooltip={{$:/language/Buttons/Clone/Hint}} aria-label={{$:/language/Buttons/Clone/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/clone-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Clone/Caption}}/>\n</span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/close-others": {
"title": "$:/core/ui/Buttons/close-others",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/close-others-button}} {{$:/language/Buttons/CloseOthers/Caption}}",
"description": "{{$:/language/Buttons/CloseOthers/Hint}}",
"text": "\\whitespace trim\n<$button message=\"tm-close-other-tiddlers\" param=<<currentTiddler>> tooltip={{$:/language/Buttons/CloseOthers/Hint}} aria-label={{$:/language/Buttons/CloseOthers/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/close-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/CloseOthers/Caption}}/>\n</span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/close": {
"title": "$:/core/ui/Buttons/close",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/close-button}} {{$:/language/Buttons/Close/Caption}}",
"description": "{{$:/language/Buttons/Close/Hint}}",
"text": "\\whitespace trim\n<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/close-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/Close/Caption}}/>\n</span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/edit": {
"title": "$:/core/ui/Buttons/edit",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/edit-button}} {{$:/language/Buttons/Edit/Caption}}",
"description": "{{$:/language/Buttons/Edit/Hint}}",
"text": "\\whitespace trim\n<$button message=\"tm-edit-tiddler\" tooltip={{$:/language/Buttons/Edit/Hint}} aria-label={{$:/language/Buttons/Edit/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/edit-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Edit/Caption}}/>\n</span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/export-tiddler": {
"title": "$:/core/ui/Buttons/export-tiddler",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/export-button}} {{$:/language/Buttons/ExportTiddler/Caption}}",
"description": "{{$:/language/Buttons/ExportTiddler/Hint}}",
"text": "\\define makeExportFilter()\n[[$(currentTiddler)$]]\n\\end\n<$macrocall $name=\"exportButton\" exportFilter=<<makeExportFilter>> lingoBase=\"$:/language/Buttons/ExportTiddler/\" baseFilename=<<currentTiddler>>/>"
},
"$:/core/ui/Buttons/fold-bar": {
"title": "$:/core/ui/Buttons/fold-bar",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/chevron-up}} {{$:/language/Buttons/Fold/FoldBar/Caption}}",
"description": "{{$:/language/Buttons/Fold/FoldBar/Hint}}",
"text": "<!-- This dummy toolbar button is here to allow visibility of the fold-bar to be controlled as if it were a toolbar button -->"
},
"$:/core/ui/Buttons/fold-others": {
"title": "$:/core/ui/Buttons/fold-others",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/fold-others-button}} {{$:/language/Buttons/FoldOthers/Caption}}",
"description": "{{$:/language/Buttons/FoldOthers/Hint}}",
"text": "\\whitespace trim\n<$button tooltip={{$:/language/Buttons/FoldOthers/Hint}} aria-label={{$:/language/Buttons/FoldOthers/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-other-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/FoldOthers/Caption}}/>\n</span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/fold": {
"title": "$:/core/ui/Buttons/fold",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/fold-button}} {{$:/language/Buttons/Fold/Caption}}",
"description": "{{$:/language/Buttons/Fold/Hint}}",
"text": "\\whitespace trim\n<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" default=\"show\">\n<$button tooltip={{$:/language/Buttons/Fold/Hint}} aria-label={{$:/language/Buttons/Fold/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Fold/Caption}}/>\n</span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<folded-state>> text=\"hide\" default=\"show\">\n<$button tooltip={{$:/language/Buttons/Unfold/Hint}} aria-label={{$:/language/Buttons/Unfold/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Unfold/Caption}}/>\n</span>\n</$list>\n</$button>\n</$reveal>\n"
},
"$:/core/ui/Buttons/info": {
"title": "$:/core/ui/Buttons/info",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/info-button}} {{$:/language/Buttons/Info/Caption}}",
"description": "{{$:/language/Buttons/Info/Hint}}",
"text": "\\whitespace trim\n\\define button-content()\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/info-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/Info/Caption}}/>\n</span>\n</$list>\n\\end\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"popup\">\n<$button popup=<<tiddlerInfoState>> tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"sticky\">\n<$reveal state=<<tiddlerInfoState>> type=\"match\" text=\"\" default=\"\">\n<$button set=<<tiddlerInfoState>> setTo=\"yes\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n<$reveal state=<<tiddlerInfoState>> type=\"nomatch\" text=\"\" default=\"\">\n<$button set=<<tiddlerInfoState>> setTo=\"\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n</$reveal>"
},
"$:/core/ui/Buttons/more-tiddler-actions": {
"title": "$:/core/ui/Buttons/more-tiddler-actions",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/down-arrow}} {{$:/language/Buttons/More/Caption}}",
"description": "{{$:/language/Buttons/More/Hint}}",
"text": "\\whitespace trim\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<$button popup=<<qualify \"$:/state/popup/more\">> tooltip={{$:/language/Buttons/More/Hint}} aria-label={{$:/language/Buttons/More/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/More/Caption}}/>\n</span>\n</$list>\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/more\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n\n<div class=\"tc-drop-down\">\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"tc-btn-invisible\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]] -[[$:/core/ui/Buttons/more-tiddler-actions]]\" variable=\"listItem\">\n\n<$reveal type=\"match\" state=<<config-title>> text=\"hide\">\n\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$set>\n\n</$reveal>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</div>\n\n</$reveal>"
},
"$:/core/ui/Buttons/new-here": {
"title": "$:/core/ui/Buttons/new-here",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/new-here-button}} {{$:/language/Buttons/NewHere/Caption}}",
"description": "{{$:/language/Buttons/NewHere/Hint}}",
"text": "\\whitespace trim\n\\define newHereActions()\n<$set name=\"tags\" filter=\"[<currentTiddler>] [{$:/config/NewTiddler/Tags!!tags}]\">\n<$action-sendmessage $message=\"tm-new-tiddler\" tags=<<tags>>/>\n</$set>\n\\end\n\\define newHereButton()\n<$button actions=<<newHereActions>> tooltip={{$:/language/Buttons/NewHere/Hint}} aria-label={{$:/language/Buttons/NewHere/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-here-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewHere/Caption}}/>\n</span>\n</$list>\n</$button>\n\\end\n<<newHereButton>>\n"
},
"$:/core/ui/Buttons/new-journal-here": {
"title": "$:/core/ui/Buttons/new-journal-here",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournalHere/Caption}}",
"description": "{{$:/language/Buttons/NewJournalHere/Hint}}",
"text": "\\whitespace trim\n\\define journalButtonTags()\n[[$(currentTiddlerTag)$]] $(journalTags)$\n\\end\n\\define journalButton()\n<$button tooltip={{$:/language/Buttons/NewJournalHere/Hint}} aria-label={{$:/language/Buttons/NewJournalHere/Caption}} class=<<tv-config-toolbar-class>>>\n<$wikify name=\"journalTitle\" text=\"\"\"<$macrocall $name=\"now\" format=<<journalTitleTemplate>>/>\"\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<journalButtonTags>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewJournalHere/Caption}}/>\n</span>\n</$list>\n</$wikify>\n</$button>\n\\end\n<$set name=\"journalTitleTemplate\" value={{$:/config/NewJournal/Title}}>\n<$set name=\"journalTags\" value={{$:/config/NewJournal/Tags!!tags}}>\n<$set name=\"currentTiddlerTag\" value=<<currentTiddler>>>\n<<journalButton>>\n</$set>\n</$set>\n</$set>\n"
},
"$:/core/ui/Buttons/open-window": {
"title": "$:/core/ui/Buttons/open-window",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/open-window}} {{$:/language/Buttons/OpenWindow/Caption}}",
"description": "{{$:/language/Buttons/OpenWindow/Hint}}",
"text": "\\whitespace trim\n<$button message=\"tm-open-window\" tooltip={{$:/language/Buttons/OpenWindow/Hint}} aria-label={{$:/language/Buttons/OpenWindow/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/open-window}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/OpenWindow/Caption}}/>\n</span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/permalink": {
"title": "$:/core/ui/Buttons/permalink",
"tags": "$:/tags/ViewToolbar",
"caption": "{{$:/core/images/permalink-button}} {{$:/language/Buttons/Permalink/Caption}}",
"description": "{{$:/language/Buttons/Permalink/Hint}}",
"text": "\\whitespace trim\n<$button message=\"tm-permalink\" tooltip={{$:/language/Buttons/Permalink/Hint}} aria-label={{$:/language/Buttons/Permalink/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/permalink-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Permalink/Caption}}/>\n</span>\n</$list>\n</$button>"
},
"$:/core/ui/Buttons/permaview": {
"title": "$:/core/ui/Buttons/permaview",
"tags": "$:/tags/ViewToolbar $:/tags/PageControls",
"caption": "{{$:/core/images/permaview-button}} {{$:/language/Buttons/Permaview/Caption}}",
"description": "{{$:/language/Buttons/Permaview/Hint}}",
"text": "\\whitespace trim\n<$button message=\"tm-permaview\" tooltip={{$:/language/Buttons/Permaview/Hint}} aria-label={{$:/language/Buttons/Permaview/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/permaview-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Permaview/Caption}}/>\n</span>\n</$list>\n</$button>"
},
"$:/DefaultTiddlers": {
"title": "$:/DefaultTiddlers",
"text": "GettingStarted\n"
},
"$:/temp/advancedsearch": {
"title": "$:/temp/advancedsearch",
"text": ""
},
"$:/snippets/allfields": {
"title": "$:/snippets/allfields",
"text": "\\define renderfield(title)\n<tr class=\"tc-view-field\"><td class=\"tc-view-field-name\">''$title$'':</td><td class=\"tc-view-field-value\">//{{$:/language/Docs/Fields/$title$}}//</td></tr>\n\\end\n<table class=\"tc-view-field-table\"><tbody><$list filter=\"[fields[]sort[title]]\" variable=\"listItem\"><$macrocall $name=\"renderfield\" title=<<listItem>>/></$list>\n</tbody></table>\n"
},
"$:/config/AnimationDuration": {
"title": "$:/config/AnimationDuration",
"text": "400"
},
"$:/config/AutoFocus": {
"title": "$:/config/AutoFocus",
"text": "title"
},
"$:/config/AutoSave": {
"title": "$:/config/AutoSave",
"text": "yes"
},
"$:/config/BitmapEditor/Colour": {
"title": "$:/config/BitmapEditor/Colour",
"text": "#444"
},
"$:/config/BitmapEditor/ImageSizes": {
"title": "$:/config/BitmapEditor/ImageSizes",
"text": "[[62px 100px]] [[100px 62px]] [[124px 200px]] [[200px 124px]] [[248px 400px]] [[371px 600px]] [[400px 248px]] [[556px 900px]] [[600px 371px]] [[742px 1200px]] [[900px 556px]] [[1200px 742px]]"
},
"$:/config/BitmapEditor/LineWidth": {
"title": "$:/config/BitmapEditor/LineWidth",
"text": "3px"
},
"$:/config/BitmapEditor/LineWidths": {
"title": "$:/config/BitmapEditor/LineWidths",
"text": "0.25px 0.5px 1px 2px 3px 4px 6px 8px 10px 16px 20px 28px 40px 56px 80px"
},
"$:/config/BitmapEditor/Opacities": {
"title": "$:/config/BitmapEditor/Opacities",
"text": "0.01 0.025 0.05 0.075 0.1 0.15 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0"
},
"$:/config/BitmapEditor/Opacity": {
"title": "$:/config/BitmapEditor/Opacity",
"text": "1.0"
},
"$:/config/DefaultMoreSidebarTab": {
"title": "$:/config/DefaultMoreSidebarTab",
"text": "$:/core/ui/MoreSideBar/Tags"
},
"$:/config/DefaultSidebarTab": {
"title": "$:/config/DefaultSidebarTab",
"text": "$:/core/ui/SideBar/Open"
},
"$:/config/DownloadSaver/AutoSave": {
"title": "$:/config/DownloadSaver/AutoSave",
"text": "no"
},
"$:/config/Drafts/TypingTimeout": {
"title": "$:/config/Drafts/TypingTimeout",
"text": "400"
},
"$:/config/EditTemplateFields/Visibility/title": {
"title": "$:/config/EditTemplateFields/Visibility/title",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/tags": {
"title": "$:/config/EditTemplateFields/Visibility/tags",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/text": {
"title": "$:/config/EditTemplateFields/Visibility/text",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/creator": {
"title": "$:/config/EditTemplateFields/Visibility/creator",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/created": {
"title": "$:/config/EditTemplateFields/Visibility/created",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/modified": {
"title": "$:/config/EditTemplateFields/Visibility/modified",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/modifier": {
"title": "$:/config/EditTemplateFields/Visibility/modifier",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/type": {
"title": "$:/config/EditTemplateFields/Visibility/type",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/draft.title": {
"title": "$:/config/EditTemplateFields/Visibility/draft.title",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/draft.of": {
"title": "$:/config/EditTemplateFields/Visibility/draft.of",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/revision": {
"title": "$:/config/EditTemplateFields/Visibility/revision",
"text": "hide"
},
"$:/config/EditTemplateFields/Visibility/bag": {
"title": "$:/config/EditTemplateFields/Visibility/bag",
"text": "hide"
},
"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4": {
"title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4",
"text": "hide"
},
"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-5": {
"title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-5",
"text": "hide"
},
"$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-6": {
"title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-6",
"text": "hide"
},
"$:/config/EditorTypeMappings/image/gif": {
"title": "$:/config/EditorTypeMappings/image/gif",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/image/webp": {
"title": "$:/config/EditorTypeMappings/image/webp",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/image/heic": {
"title": "$:/config/EditorTypeMappings/image/heic",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/image/heif": {
"title": "$:/config/EditorTypeMappings/image/heif",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/image/jpeg": {
"title": "$:/config/EditorTypeMappings/image/jpeg",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/image/jpg": {
"title": "$:/config/EditorTypeMappings/image/jpg",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/image/png": {
"title": "$:/config/EditorTypeMappings/image/png",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/image/x-icon": {
"title": "$:/config/EditorTypeMappings/image/x-icon",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/text/vnd.tiddlywiki": {
"title": "$:/config/EditorTypeMappings/text/vnd.tiddlywiki",
"text": "text"
},
"$:/config/Manager/Show": {
"title": "$:/config/Manager/Show",
"text": "tiddlers"
},
"$:/config/Manager/Filter": {
"title": "$:/config/Manager/Filter",
"text": ""
},
"$:/config/Manager/Order": {
"title": "$:/config/Manager/Order",
"text": "forward"
},
"$:/config/Manager/Sort": {
"title": "$:/config/Manager/Sort",
"text": "title"
},
"$:/config/Manager/System": {
"title": "$:/config/Manager/System",
"text": "system"
},
"$:/config/Manager/Tag": {
"title": "$:/config/Manager/Tag",
"text": ""
},
"$:/state/popup/manager/item/$:/Manager/ItemMain/RawText": {
"title": "$:/state/popup/manager/item/$:/Manager/ItemMain/RawText",
"text": "hide"
},
"$:/config/MissingLinks": {
"title": "$:/config/MissingLinks",
"text": "yes"
},
"$:/config/Navigation/UpdateAddressBar": {
"title": "$:/config/Navigation/UpdateAddressBar",
"text": "no"
},
"$:/config/Navigation/UpdateHistory": {
"title": "$:/config/Navigation/UpdateHistory",
"text": "no"
},
"$:/config/NewImageType": {
"title": "$:/config/NewImageType",
"text": "jpeg"
},
"$:/config/OfficialPluginLibrary": {
"title": "$:/config/OfficialPluginLibrary",
"tags": "$:/tags/PluginLibrary",
"url": "https://tiddlywiki.com/library/v5.1.22/index.html",
"caption": "{{$:/language/OfficialPluginLibrary}}",
"text": "{{$:/language/OfficialPluginLibrary/Hint}}\n"
},
"$:/config/Navigation/openLinkFromInsideRiver": {
"title": "$:/config/Navigation/openLinkFromInsideRiver",
"text": "below"
},
"$:/config/Navigation/openLinkFromOutsideRiver": {
"title": "$:/config/Navigation/openLinkFromOutsideRiver",
"text": "top"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/fold-all": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/fold-all",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/full-screen": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/full-screen",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/tag-manager": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/tag-manager",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-journal": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-journal",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-image": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-image",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/palette": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/palette",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/permaview": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/permaview",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/print": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/print",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/timestamp": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/timestamp",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/theme": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/theme",
"text": "hide"
},
"$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/unfold-all": {
"title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/unfold-all",
"text": "hide"
},
"$:/config/Performance/Instrumentation": {
"title": "$:/config/Performance/Instrumentation",
"text": "no"
},
"$:/config/RegisterPluginType/plugin": {
"title": "$:/config/RegisterPluginType/plugin",
"text": "yes"
},
"$:/config/RegisterPluginType/theme": {
"title": "$:/config/RegisterPluginType/theme",
"text": "no"
},
"$:/config/RegisterPluginType/language": {
"title": "$:/config/RegisterPluginType/language",
"text": "no"
},
"$:/config/RegisterPluginType/info": {
"title": "$:/config/RegisterPluginType/info",
"text": "no"
},
"$:/config/RegisterPluginType/import": {
"title": "$:/config/RegisterPluginType/import",
"text": "no"
},
"$:/config/SaveWikiButton/Template": {
"title": "$:/config/SaveWikiButton/Template",
"text": "$:/core/save/all"
},
"$:/config/SaverFilter": {
"title": "$:/config/SaverFilter",
"text": "[all[]] -[[$:/HistoryList]] -[[$:/StoryList]] -[[$:/Import]] -[[$:/isEncrypted]] -[[$:/UploadName]] -[prefix[$:/state/]] -[prefix[$:/temp/]]"
},
"$:/config/Search/AutoFocus": {
"title": "$:/config/Search/AutoFocus",
"text": "true"
},
"$:/config/Search/MinLength": {
"title": "$:/config/Search/MinLength",
"text": "3"
},
"$:/config/SearchResults/Default": {
"title": "$:/config/SearchResults/Default",
"text": "$:/core/ui/DefaultSearchResultList"
},
"$:/config/Server/ExternalFilters/[all[tiddlers]!is[system]sort[title]]": {
"title": "$:/config/Server/ExternalFilters/[all[tiddlers]!is[system]sort[title]]",
"text": "yes"
},
"$:/config/ShortcutInfo/add-field": {
"title": "$:/config/ShortcutInfo/add-field",
"text": "{{$:/language/EditTemplate/Fields/Add/Button/Hint}}"
},
"$:/config/ShortcutInfo/advanced-search": {
"title": "$:/config/ShortcutInfo/advanced-search",
"text": "{{$:/language/Buttons/AdvancedSearch/Hint}}"
},
"$:/config/ShortcutInfo/bold": {
"title": "$:/config/ShortcutInfo/bold",
"text": "{{$:/language/Buttons/Bold/Hint}}"
},
"$:/config/ShortcutInfo/cancel-edit-tiddler": {
"title": "$:/config/ShortcutInfo/cancel-edit-tiddler",
"text": "{{$:/language/Buttons/Cancel/Hint}}"
},
"$:/config/ShortcutInfo/excise": {
"title": "$:/config/ShortcutInfo/excise",
"text": "{{$:/language/Buttons/Excise/Hint}}"
},
"$:/config/ShortcutInfo/heading-1": {
"title": "$:/config/ShortcutInfo/heading-1",
"text": "{{$:/language/Buttons/Heading1/Hint}}"
},
"$:/config/ShortcutInfo/heading-2": {
"title": "$:/config/ShortcutInfo/heading-2",
"text": "{{$:/language/Buttons/Heading2/Hint}}"
},
"$:/config/ShortcutInfo/heading-3": {
"title": "$:/config/ShortcutInfo/heading-3",
"text": "{{$:/language/Buttons/Heading3/Hint}}"
},
"$:/config/ShortcutInfo/heading-4": {
"title": "$:/config/ShortcutInfo/heading-4",
"text": "{{$:/language/Buttons/Heading4/Hint}}"
},
"$:/config/ShortcutInfo/heading-5": {
"title": "$:/config/ShortcutInfo/heading-5",
"text": "{{$:/language/Buttons/Heading5/Hint}}"
},
"$:/config/ShortcutInfo/heading-6": {
"title": "$:/config/ShortcutInfo/heading-6",
"text": "{{$:/language/Buttons/Heading6/Hint}}"
},
"$:/config/ShortcutInfo/italic": {
"title": "$:/config/ShortcutInfo/italic",
"text": "{{$:/language/Buttons/Italic/Hint}}"
},
"$:/config/ShortcutInfo/link": {
"title": "$:/config/ShortcutInfo/link",
"text": "{{$:/language/Buttons/Link/Hint}}"
},
"$:/config/ShortcutInfo/list-bullet": {
"title": "$:/config/ShortcutInfo/list-bullet",
"text": "{{$:/language/Buttons/ListBullet/Hint}}"
},
"$:/config/ShortcutInfo/list-number": {
"title": "$:/config/ShortcutInfo/list-number",
"text": "{{$:/language/Buttons/ListNumber/Hint}}"
},
"$:/config/ShortcutInfo/mono-block": {
"title": "$:/config/ShortcutInfo/mono-block",
"text": "{{$:/language/Buttons/MonoBlock/Hint}}"
},
"$:/config/ShortcutInfo/mono-line": {
"title": "$:/config/ShortcutInfo/mono-line",
"text": "{{$:/language/Buttons/MonoLine/Hint}}"
},
"$:/config/ShortcutInfo/new-image": {
"title": "$:/config/ShortcutInfo/new-image",
"text": "{{$:/language/Buttons/NewImage/Hint}}"
},
"$:/config/ShortcutInfo/new-journal": {
"title": "$:/config/ShortcutInfo/new-journal",
"text": "{{$:/language/Buttons/NewJournal/Hint}}"
},
"$:/config/ShortcutInfo/new-tiddler": {
"title": "$:/config/ShortcutInfo/new-tiddler",
"text": "{{$:/language/Buttons/NewTiddler/Hint}}"
},
"$:/config/ShortcutInfo/picture": {
"title": "$:/config/ShortcutInfo/picture",
"text": "{{$:/language/Buttons/Picture/Hint}}"
},
"$:/config/ShortcutInfo/preview": {
"title": "$:/config/ShortcutInfo/preview",
"text": "{{$:/language/Buttons/Preview/Hint}}"
},
"$:/config/ShortcutInfo/quote": {
"title": "$:/config/ShortcutInfo/quote",
"text": "{{$:/language/Buttons/Quote/Hint}}"
},
"$:/config/ShortcutInfo/save-tiddler": {
"title": "$:/config/ShortcutInfo/save-tiddler",
"text": "{{$:/language/Buttons/Save/Hint}}"
},
"$:/config/ShortcutInfo/sidebar-search": {
"title": "$:/config/ShortcutInfo/sidebar-search",
"text": "{{$:/language/Buttons/SidebarSearch/Hint}}"
},
"$:/config/ShortcutInfo/stamp": {
"title": "$:/config/ShortcutInfo/stamp",
"text": "{{$:/language/Buttons/Stamp/Hint}}"
},
"$:/config/ShortcutInfo/strikethrough": {
"title": "$:/config/ShortcutInfo/strikethrough",
"text": "{{$:/language/Buttons/Strikethrough/Hint}}"
},
"$:/config/ShortcutInfo/subscript": {
"title": "$:/config/ShortcutInfo/subscript",
"text": "{{$:/language/Buttons/Subscript/Hint}}"
},
"$:/config/ShortcutInfo/superscript": {
"title": "$:/config/ShortcutInfo/superscript",
"text": "{{$:/language/Buttons/Superscript/Hint}}"
},
"$:/config/ShortcutInfo/toggle-sidebar": {
"title": "$:/config/ShortcutInfo/toggle-sidebar",
"text": "{{$:/language/Buttons/ToggleSidebar/Hint}}"
},
"$:/config/ShortcutInfo/underline": {
"title": "$:/config/ShortcutInfo/underline",
"text": "{{$:/language/Buttons/Underline/Hint}}"
},
"$:/config/SyncFilter": {
"title": "$:/config/SyncFilter",
"text": "[is[tiddler]] -[[$:/HistoryList]] -[[$:/Import]] -[[$:/isEncrypted]] -[prefix[$:/status/]] -[prefix[$:/state/]] -[prefix[$:/temp/]]"
},
"$:/config/Tags/MinLength": {
"title": "$:/config/Tags/MinLength",
"text": "0"
},
"$:/config/TextEditor/EditorHeight/Height": {
"title": "$:/config/TextEditor/EditorHeight/Height",
"text": "400px"
},
"$:/config/TextEditor/EditorHeight/Mode": {
"title": "$:/config/TextEditor/EditorHeight/Mode",
"text": "auto"
},
"$:/config/TiddlerInfo/Default": {
"title": "$:/config/TiddlerInfo/Default",
"text": "$:/core/ui/TiddlerInfo/Fields"
},
"$:/config/TiddlerInfo/Mode": {
"title": "$:/config/TiddlerInfo/Mode",
"text": "popup"
},
"$:/config/Tiddlers/TitleLinks": {
"title": "$:/config/Tiddlers/TitleLinks",
"text": "no"
},
"$:/config/Toolbar/ButtonClass": {
"title": "$:/config/Toolbar/ButtonClass",
"text": "tc-btn-invisible"
},
"$:/config/Toolbar/Icons": {
"title": "$:/config/Toolbar/Icons",
"text": "yes"
},
"$:/config/Toolbar/Text": {
"title": "$:/config/Toolbar/Text",
"text": "no"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/info": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/info",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions",
"text": "show"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/open-window": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/open-window",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permalink": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permalink",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permaview": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permaview",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar",
"text": "hide"
},
"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-others": {
"title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-others",
"text": "hide"
},
"$:/config/shortcuts-mac/bold": {
"title": "$:/config/shortcuts-mac/bold",
"text": "meta-B"
},
"$:/config/shortcuts-mac/italic": {
"title": "$:/config/shortcuts-mac/italic",
"text": "meta-I"
},
"$:/config/shortcuts-mac/underline": {
"title": "$:/config/shortcuts-mac/underline",
"text": "meta-U"
},
"$:/config/shortcuts-mac/new-image": {
"title": "$:/config/shortcuts-mac/new-image",
"text": "ctrl-I"
},
"$:/config/shortcuts-mac/new-journal": {
"title": "$:/config/shortcuts-mac/new-journal",
"text": "ctrl-J"
},
"$:/config/shortcuts-mac/new-tiddler": {
"title": "$:/config/shortcuts-mac/new-tiddler",
"text": "ctrl-N"
},
"$:/config/shortcuts-not-mac/bold": {
"title": "$:/config/shortcuts-not-mac/bold",
"text": "ctrl-B"
},
"$:/config/shortcuts-not-mac/italic": {
"title": "$:/config/shortcuts-not-mac/italic",
"text": "ctrl-I"
},
"$:/config/shortcuts-not-mac/underline": {
"title": "$:/config/shortcuts-not-mac/underline",
"text": "ctrl-U"
},
"$:/config/shortcuts-not-mac/new-image": {
"title": "$:/config/shortcuts-not-mac/new-image",
"text": "alt-I"
},
"$:/config/shortcuts-not-mac/new-journal": {
"title": "$:/config/shortcuts-not-mac/new-journal",
"text": "alt-J"
},
"$:/config/shortcuts-not-mac/new-tiddler": {
"title": "$:/config/shortcuts-not-mac/new-tiddler",
"text": "alt-N"
},
"$:/config/shortcuts/add-field": {
"title": "$:/config/shortcuts/add-field",
"text": "enter"
},
"$:/config/shortcuts/advanced-search": {
"title": "$:/config/shortcuts/advanced-search",
"text": "ctrl-shift-A"
},
"$:/config/shortcuts/cancel-edit-tiddler": {
"title": "$:/config/shortcuts/cancel-edit-tiddler",
"text": "escape"
},
"$:/config/shortcuts/excise": {
"title": "$:/config/shortcuts/excise",
"text": "ctrl-E"
},
"$:/config/shortcuts/sidebar-search": {
"title": "$:/config/shortcuts/sidebar-search",
"text": "ctrl-shift-F"
},
"$:/config/shortcuts/heading-1": {
"title": "$:/config/shortcuts/heading-1",
"text": "ctrl-1"
},
"$:/config/shortcuts/heading-2": {
"title": "$:/config/shortcuts/heading-2",
"text": "ctrl-2"
},
"$:/config/shortcuts/heading-3": {
"title": "$:/config/shortcuts/heading-3",
"text": "ctrl-3"
},
"$:/config/shortcuts/heading-4": {
"title": "$:/config/shortcuts/heading-4",
"text": "ctrl-4"
},
"$:/config/shortcuts/heading-5": {
"title": "$:/config/shortcuts/heading-5",
"text": "ctrl-5"
},
"$:/config/shortcuts/heading-6": {
"title": "$:/config/shortcuts/heading-6",
"text": "ctrl-6"
},
"$:/config/shortcuts/link": {
"title": "$:/config/shortcuts/link",
"text": "ctrl-L"
},
"$:/config/shortcuts/linkify": {
"title": "$:/config/shortcuts/linkify",
"text": "alt-shift-L"
},
"$:/config/shortcuts/list-bullet": {
"title": "$:/config/shortcuts/list-bullet",
"text": "ctrl-shift-L"
},
"$:/config/shortcuts/list-number": {
"title": "$:/config/shortcuts/list-number",
"text": "ctrl-shift-N"
},
"$:/config/shortcuts/mono-block": {
"title": "$:/config/shortcuts/mono-block",
"text": "ctrl-shift-M"
},
"$:/config/shortcuts/mono-line": {
"title": "$:/config/shortcuts/mono-line",
"text": "ctrl-M"
},
"$:/config/shortcuts/picture": {
"title": "$:/config/shortcuts/picture",
"text": "ctrl-shift-I"
},
"$:/config/shortcuts/preview": {
"title": "$:/config/shortcuts/preview",
"text": "alt-P"
},
"$:/config/shortcuts/quote": {
"title": "$:/config/shortcuts/quote",
"text": "ctrl-Q"
},
"$:/config/shortcuts/save-tiddler": {
"title": "$:/config/shortcuts/save-tiddler",
"text": "ctrl+enter"
},
"$:/config/shortcuts/stamp": {
"title": "$:/config/shortcuts/stamp",
"text": "ctrl-S"
},
"$:/config/shortcuts/strikethrough": {
"title": "$:/config/shortcuts/strikethrough",
"text": "ctrl-T"
},
"$:/config/shortcuts/subscript": {
"title": "$:/config/shortcuts/subscript",
"text": "ctrl-shift-B"
},
"$:/config/shortcuts/superscript": {
"title": "$:/config/shortcuts/superscript",
"text": "ctrl-shift-P"
},
"$:/config/shortcuts/toggle-sidebar": {
"title": "$:/config/shortcuts/toggle-sidebar",
"text": "alt-shift-S"
},
"$:/config/shortcuts/transcludify": {
"title": "$:/config/shortcuts/transcludify",
"text": "alt-shift-T"
},
"$:/config/ui/EditTemplate": {
"title": "$:/config/ui/EditTemplate",
"text": "$:/core/ui/EditTemplate"
},
"$:/config/ui/ViewTemplate": {
"title": "$:/config/ui/ViewTemplate",
"text": "$:/core/ui/ViewTemplate"
},
"$:/config/WikiParserRules/Inline/wikilink": {
"title": "$:/config/WikiParserRules/Inline/wikilink",
"text": "enable"
},
"$:/snippets/currpalettepreview": {
"title": "$:/snippets/currpalettepreview",
"text": "\\define swatchStyle()\nbackground-color: $(swatchColour)$;\n\\end\n\\define swatch()\n<$set name=\"swatchColour\" value={{##$(colour)$}}\n><div class=\"tc-swatch\" style=<<swatchStyle>> title=<<colour>>/></$set>\n\\end\n<div class=\"tc-swatches-horiz\"><$list filter=\"\nforeground\nbackground\nmuted-foreground\nprimary\npage-background\ntab-background\ntiddler-info-background\n\" variable=\"colour\"><<swatch>></$list></div>"
},
"$:/snippets/download-wiki-button": {
"title": "$:/snippets/download-wiki-button",
"text": "\\define lingo-base() $:/language/ControlPanel/Tools/Download/\n<$button class=\"tc-btn-big-green\">\n<$action-sendmessage $message=\"tm-download-file\" $param=\"$:/core/save/all\" filename=\"index.html\"/>\n<<lingo Full/Caption>> {{$:/core/images/save-button}}\n</$button>"
},
"$:/language": {
"title": "$:/language",
"text": "$:/languages/en-GB"
},
"$:/snippets/languageswitcher": {
"title": "$:/snippets/languageswitcher",
"text": "\\define flag-title()\n$(languagePluginTitle)$/icon\n\\end\n\n<$linkcatcher to=\"$:/language\">\n<div class=\"tc-chooser tc-language-chooser\">\n<$list filter=\"[[$:/languages/en-GB]] [plugin-type[language]sort[description]]\">\n<$set name=\"cls\" filter=\"[all[current]field:title{$:/language}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>>\n<$link>\n<span class=\"tc-image-button\">\n<$set name=\"languagePluginTitle\" value=<<currentTiddler>>>\n<$transclude subtiddler=<<flag-title>>>\n<$list filter=\"[all[current]field:title[$:/languages/en-GB]]\">\n<$transclude tiddler=\"$:/languages/en-GB/icon\"/>\n</$list>\n</$transclude>\n</$set>\n</span>\n<$view field=\"description\">\n<$view field=\"name\">\n<$view field=\"title\"/>\n</$view>\n</$view>\n</$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
},
"$:/core/macros/CSS": {
"title": "$:/core/macros/CSS",
"tags": "$:/tags/Macro",
"text": "\\define colour(name)\n<$transclude tiddler={{$:/palette}} index=\"$name$\"><$transclude tiddler=\"$:/palettes/Vanilla\" index=\"$name$\"><$transclude tiddler=\"$:/config/DefaultColourMappings/$name$\"/></$transclude></$transclude>\n\\end\n\n\\define color(name)\n<<colour $name$>>\n\\end\n\n\\define box-shadow(shadow)\n``\n -webkit-box-shadow: $shadow$;\n -moz-box-shadow: $shadow$;\n box-shadow: $shadow$;\n``\n\\end\n\n\\define filter(filter)\n``\n -webkit-filter: $filter$;\n -moz-filter: $filter$;\n filter: $filter$;\n``\n\\end\n\n\\define transition(transition)\n``\n -webkit-transition: $transition$;\n -moz-transition: $transition$;\n transition: $transition$;\n``\n\\end\n\n\\define transform-origin(origin)\n``\n -webkit-transform-origin: $origin$;\n -moz-transform-origin: $origin$;\n transform-origin: $origin$;\n``\n\\end\n\n\\define background-linear-gradient(gradient)\n``\nbackground-image: linear-gradient($gradient$);\nbackground-image: -o-linear-gradient($gradient$);\nbackground-image: -moz-linear-gradient($gradient$);\nbackground-image: -webkit-linear-gradient($gradient$);\nbackground-image: -ms-linear-gradient($gradient$);\n``\n\\end\n\n\\define column-count(columns)\n``\n-moz-column-count: $columns$;\n-webkit-column-count: $columns$;\ncolumn-count: $columns$;\n``\n\\end\n\n\\define datauri(title)\n<$macrocall $name=\"makedatauri\" type={{$title$!!type}} text={{$title$}} _canonical_uri={{$title$!!_canonical_uri}}/>\n\\end\n\n\\define if-sidebar(text)\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"yes\" default=\"yes\">$text$</$reveal>\n\\end\n\n\\define if-no-sidebar(text)\n<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"yes\" default=\"yes\">$text$</$reveal>\n\\end\n\n\\define if-background-attachment(text)\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\" type=\"nomatch\" text=\"\">$text$</$reveal>\n\\end\n"
},
"$:/core/macros/colour-picker": {
"title": "$:/core/macros/colour-picker",
"tags": "$:/tags/Macro",
"text": "\\define colour-picker-update-recent()\n<$action-listops\n\t$tiddler=\"$:/config/ColourPicker/Recent\"\n\t$subfilter=\"$(colour-picker-value)$ [list[$:/config/ColourPicker/Recent]remove[$(colour-picker-value)$]] +[limit[8]]\"\n/>\n\\end\n\n\\define colour-picker-inner(actions)\n<$button tag=\"a\" tooltip=\"\"\"$(colour-picker-value)$\"\"\">\n\n$(colour-picker-update-recent)$\n\n$actions$\n\n<span style=\"display:inline-block; background-color: $(colour-picker-value)$; width: 100%; height: 100%; border-radius: 50%;\"/>\n\n</$button>\n\\end\n\n\\define colour-picker-recent-inner(actions)\n<$set name=\"colour-picker-value\" value=\"$(recentColour)$\">\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$set>\n\\end\n\n\\define colour-picker-recent(actions)\n{{$:/language/ColourPicker/Recent}} <$list filter=\"[list[$:/config/ColourPicker/Recent]]\" variable=\"recentColour\">\n<$macrocall $name=\"colour-picker-recent-inner\" actions=\"\"\"$actions$\"\"\"/></$list>\n\\end\n\n\\define colour-picker(actions)\n<div class=\"tc-colour-chooser\">\n\n<$macrocall $name=\"colour-picker-recent\" actions=\"\"\"$actions$\"\"\"/>\n\n---\n\n<$list filter=\"LightPink Pink Crimson LavenderBlush PaleVioletRed HotPink DeepPink MediumVioletRed Orchid Thistle Plum Violet Magenta Fuchsia DarkMagenta Purple MediumOrchid DarkViolet DarkOrchid Indigo BlueViolet MediumPurple MediumSlateBlue SlateBlue DarkSlateBlue Lavender GhostWhite Blue MediumBlue MidnightBlue DarkBlue Navy RoyalBlue CornflowerBlue LightSteelBlue LightSlateGrey SlateGrey DodgerBlue AliceBlue SteelBlue LightSkyBlue SkyBlue DeepSkyBlue LightBlue PowderBlue CadetBlue Azure LightCyan PaleTurquoise Cyan Aqua DarkTurquoise DarkSlateGrey DarkCyan Teal MediumTurquoise LightSeaGreen Turquoise Aquamarine MediumAquamarine MediumSpringGreen MintCream SpringGreen MediumSeaGreen SeaGreen Honeydew LightGreen PaleGreen DarkSeaGreen LimeGreen Lime ForestGreen Green DarkGreen Chartreuse LawnGreen GreenYellow DarkOliveGreen YellowGreen OliveDrab Beige LightGoldenrodYellow Ivory LightYellow Yellow Olive DarkKhaki LemonChiffon PaleGoldenrod Khaki Gold Cornsilk Goldenrod DarkGoldenrod FloralWhite OldLace Wheat Moccasin Orange PapayaWhip BlanchedAlmond NavajoWhite AntiqueWhite Tan BurlyWood Bisque DarkOrange Linen Peru PeachPuff SandyBrown Chocolate SaddleBrown Seashell Sienna LightSalmon Coral OrangeRed DarkSalmon Tomato MistyRose Salmon Snow LightCoral RosyBrown IndianRed Red Brown FireBrick DarkRed Maroon White WhiteSmoke Gainsboro LightGrey Silver DarkGrey Grey DimGrey Black\" variable=\"colour-picker-value\">\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$list>\n\n---\n\n<$edit-text tiddler=\"$:/config/ColourPicker/New\" tag=\"input\" default=\"\" placeholder=\"\"/>\n<$edit-text tiddler=\"$:/config/ColourPicker/New\" type=\"color\" tag=\"input\"/>\n<$set name=\"colour-picker-value\" value={{$:/config/ColourPicker/New}}>\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$set>\n\n</div>\n\n\\end\n"
},
"$:/core/macros/copy-to-clipboard": {
"title": "$:/core/macros/copy-to-clipboard",
"tags": "$:/tags/Macro",
"text": "\\define copy-to-clipboard(src,class:\"tc-btn-invisible\",style)\n<$button class=<<__class__>> style=<<__style__>> message=\"tm-copy-to-clipboard\" param=<<__src__>> tooltip={{$:/language/Buttons/CopyToClipboard/Hint}}>\n{{$:/core/images/copy-clipboard}} <$text text={{$:/language/Buttons/CopyToClipboard/Caption}}/>\n</$button>\n\\end\n\n\\define copy-to-clipboard-above-right(src,class:\"tc-btn-invisible\",style)\n<div style=\"position: relative;\">\n<div style=\"position: absolute; bottom: 0; right: 0;\">\n<$macrocall $name=\"copy-to-clipboard\" src=<<__src__>> class=<<__class__>> style=<<__style__>>/>\n</div>\n</div>\n\\end\n\n"
},
"$:/core/macros/diff": {
"title": "$:/core/macros/diff",
"tags": "$:/tags/Macro",
"text": "\\define compareTiddlerText(sourceTiddlerTitle,sourceSubTiddlerTitle,destTiddlerTitle,destSubTiddlerTitle)\n<$set name=\"source\" tiddler=<<__sourceTiddlerTitle__>> subtiddler=<<__sourceSubTiddlerTitle__>>>\n<$set name=\"dest\" tiddler=<<__destTiddlerTitle__>> subtiddler=<<__destSubTiddlerTitle__>>>\n<$diff-text source=<<source>> dest=<<dest>>/>\n</$set>\n</$set>\n\\end\n\n\\define compareTiddlers(sourceTiddlerTitle,sourceSubTiddlerTitle,destTiddlerTitle,destSubTiddlerTitle,exclude)\n<table class=\"tc-diff-tiddlers\">\n<tbody>\n<$set name=\"sourceFields\" filter=\"[<__sourceTiddlerTitle__>fields[]sort[]]\">\n<$set name=\"destFields\" filter=\"[<__destSubTiddlerTitle__>subtiddlerfields<__destTiddlerTitle__>sort[]]\">\n<$list filter=\"[enlist<sourceFields>] [enlist<destFields>] -[enlist<__exclude__>] +[sort[]]\" variable=\"fieldName\">\n<tr>\n<th>\n<$text text=<<fieldName>>/> \n</th>\n<td>\n<$set name=\"source\" tiddler=<<__sourceTiddlerTitle__>> subtiddler=<<__sourceSubTiddlerTitle__>> field=<<fieldName>>>\n<$set name=\"dest\" tiddler=<<__destTiddlerTitle__>> subtiddler=<<__destSubTiddlerTitle__>> field=<<fieldName>>>\n<$diff-text source=<<source>> dest=<<dest>>>\n</$diff-text>\n</$set>\n</$set>\n</td>\n</tr>\n</$list>\n</$set>\n</$set>\n</tbody>\n</table>\n\\end\n"
},
"$:/core/macros/dumpvariables": {
"title": "$:/core/macros/dumpvariables",
"tags": "$:/tags/Macro",
"text": "\\define dumpvariables()\n<ul>\n<$list filter=\"[variables[]]\" variable=\"varname\">\n<li>\n<strong><code><$text text=<<varname>>/></code></strong>:<br/>\n<$codeblock code={{{ [<varname>getvariable[]] }}}/>\n</li>\n</$list>\n</ul>\n\\end\n"
},
"$:/core/macros/export": {
"title": "$:/core/macros/export",
"tags": "$:/tags/Macro",
"text": "\\define exportButtonFilename(baseFilename)\n$baseFilename$$(extension)$\n\\end\n\n\\define exportButton(exportFilter:\"[!is[system]sort[title]]\",lingoBase,baseFilename:\"tiddlers\")\n<span class=\"tc-popup-keep\"><$button popup=<<qualify \"$:/state/popup/export\">> tooltip={{$lingoBase$Hint}} aria-label={{$lingoBase$Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/export-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$lingoBase$Caption}}/></span>\n</$list>\n</$button></span><$reveal state=<<qualify \"$:/state/popup/export\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Exporter]]\">\n<$set name=\"extension\" value={{!!extension}}>\n<$button class=\"tc-btn-invisible\">\n<$action-sendmessage $message=\"tm-download-file\" $param=<<currentTiddler>> exportFilter=\"\"\"$exportFilter$\"\"\" filename=<<exportButtonFilename \"\"\"$baseFilename$\"\"\">>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/export\">>/>\n<$transclude field=\"description\"/>\n</$button>\n</$set>\n</$list>\n</div>\n</$reveal>\n\\end\n"
},
"$:/core/macros/image-picker": {
"title": "$:/core/macros/image-picker",
"created": "20170715180840889",
"modified": "20170715180914005",
"tags": "$:/tags/Macro",
"type": "text/vnd.tiddlywiki",
"text": "\\define image-picker-thumbnail(actions)\n<$button tag=\"a\" tooltip=\"\"\"$(imageTitle)$\"\"\">\n$actions$\n<$transclude tiddler=<<imageTitle>>/>\n</$button>\n\\end\n\n\\define image-picker-list(filter,actions)\n<$list filter=\"\"\"$filter$\"\"\" variable=\"imageTitle\">\n<$macrocall $name=\"image-picker-thumbnail\" actions=\"\"\"$actions$\"\"\"/>\n</$list>\n\\end\n\n\\define image-picker(actions,filter:\"[all[shadows+tiddlers]is[image]] -[type[application/pdf]] +[!has[draft.of]$subfilter$sort[title]]\",subfilter:\"\")\n<div class=\"tc-image-chooser\">\n<$vars state-system=<<qualify \"$:/state/image-picker/system\">>>\n<$checkbox tiddler=<<state-system>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"hide\">\n{{$:/language/SystemTiddlers/Include/Prompt}}\n</$checkbox>\n<$reveal state=<<state-system>> type=\"match\" text=\"hide\" default=\"hide\" tag=\"div\">\n<$macrocall $name=\"image-picker-list\" filter=\"\"\"$filter$ +[!is[system]]\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</$reveal>\n<$reveal state=<<state-system>> type=\"nomatch\" text=\"hide\" default=\"hide\" tag=\"div\">\n<$macrocall $name=\"image-picker-list\" filter=\"\"\"$filter$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</$reveal>\n</$vars>\n</div>\n\\end\n\n\\define image-picker-include-tagged-images(actions)\n<$macrocall $name=\"image-picker\" filter=\"[all[shadows+tiddlers]is[image]] [all[shadows+tiddlers]tag[$:/tags/Image]] -[type[application/pdf]] +[!has[draft.of]sort[title]]\" actions=\"\"\"$actions$\"\"\"/>\n\\end\n"
},
"$:/core/macros/lingo": {
"title": "$:/core/macros/lingo",
"tags": "$:/tags/Macro",
"text": "\\define lingo-base()\n$:/language/\n\\end\n\n\\define lingo(title)\n{{$(lingo-base)$$title$}}\n\\end\n"
},
"$:/core/macros/list": {
"title": "$:/core/macros/list",
"tags": "$:/tags/Macro",
"text": "\\define list-links(filter,type:\"ul\",subtype:\"li\",class:\"\",emptyMessage)\n\\whitespace trim\n<$type$ class=\"$class$\">\n<$list filter=\"$filter$\" emptyMessage=<<__emptyMessage__>>>\n<$subtype$>\n<$link to={{!!title}}>\n<$transclude field=\"caption\">\n<$view field=\"title\"/>\n</$transclude>\n</$link>\n</$subtype$>\n</$list>\n</$type$>\n\\end\n\n\\define list-links-draggable-drop-actions()\n<$action-listops $tiddler=<<targetTiddler>> $field=<<targetField>> $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n\\end\n\n\\define list-links-draggable(tiddler,field:\"list\",type:\"ul\",subtype:\"li\",class:\"\",itemTemplate)\n\\whitespace trim\n<span class=\"tc-links-draggable-list\">\n<$vars targetTiddler=\"\"\"$tiddler$\"\"\" targetField=\"\"\"$field$\"\"\">\n<$type$ class=\"$class$\">\n<$list filter=\"[list[$tiddler$!!$field$]]\">\n<$droppable actions=<<list-links-draggable-drop-actions>> tag=\"\"\"$subtype$\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<div class=\"tc-droppable-placeholder\"/>\n<div>\n<$transclude tiddler=\"\"\"$itemTemplate$\"\"\">\n<$link to={{!!title}}>\n<$transclude field=\"caption\">\n<$view field=\"title\"/>\n</$transclude>\n</$link>\n</$transclude>\n</div>\n</$droppable>\n</$list>\n</$type$>\n<$tiddler tiddler=\"\">\n<$droppable actions=<<list-links-draggable-drop-actions>> tag=\"div\" enable=<<tv-enable-drag-and-drop>>>\n<div class=\"tc-droppable-placeholder\">\n \n</div>\n<div style=\"height:0.5em;\"/>\n</$droppable>\n</$tiddler>\n</$vars>\n</span>\n\\end\n\n\\define list-tagged-draggable-drop-actions(tag)\n<!-- Save the current ordering of the tiddlers with this tag -->\n<$set name=\"order\" filter=\"[<__tag__>tagging[]]\">\n<!-- Remove any list-after or list-before fields from the tiddlers with this tag -->\n<$list filter=\"[<__tag__>tagging[]]\">\n<$action-deletefield $field=\"list-before\"/>\n<$action-deletefield $field=\"list-after\"/>\n</$list>\n<!-- Save the new order to the Tag Tiddler -->\n<$action-listops $tiddler=<<__tag__>> $field=\"list\" $filter=\"+[enlist<order>] +[insertbefore:currentTiddler<actionTiddler>]\"/>\n<!-- Make sure the newly added item has the right tag -->\n<!-- Removing this line makes dragging tags within the dropdown work as intended -->\n<!--<$action-listops $tiddler=<<actionTiddler>> $tags=<<__tag__>>/>-->\n<!-- Using the following 5 lines as replacement makes dragging titles from outside into the dropdown apply the tag -->\n<$list filter=\"[<actionTiddler>!contains:tags<__tag__>]\">\n<$fieldmangler tiddler=<<actionTiddler>>>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<__tag__>>/>\n</$fieldmangler>\n</$list>\n</$set>\n\\end\n\n\\define list-tagged-draggable(tag,subFilter,emptyMessage,itemTemplate,elementTag:\"div\",storyview:\"\")\n\\whitespace trim\n<span class=\"tc-tagged-draggable-list\">\n<$set name=\"tag\" value=<<__tag__>>>\n<$list filter=\"[<__tag__>tagging[]$subFilter$]\" emptyMessage=<<__emptyMessage__>> storyview=<<__storyview__>>>\n<$elementTag$ class=\"tc-menu-list-item\">\n<$droppable actions=\"\"\"<$macrocall $name=\"list-tagged-draggable-drop-actions\" tag=<<__tag__>>/>\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<$elementTag$ class=\"tc-droppable-placeholder\"/>\n<$elementTag$>\n<$transclude tiddler=\"\"\"$itemTemplate$\"\"\">\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</$transclude>\n</$elementTag$>\n</$droppable>\n</$elementTag$>\n</$list>\n<$tiddler tiddler=\"\">\n<$droppable actions=\"\"\"<$macrocall $name=\"list-tagged-draggable-drop-actions\" tag=<<__tag__>>/>\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<$elementTag$ class=\"tc-droppable-placeholder\"/>\n<$elementTag$ style=\"height:0.5em;\">\n</$elementTag$>\n</$droppable>\n</$tiddler>\n</$set>\n</span>\n\\end\n"
},
"$:/core/macros/tabs": {
"title": "$:/core/macros/tabs",
"tags": "$:/tags/Macro",
"text": "\\define tabs(tabsList,default,state:\"$:/state/tab\",class,template,buttonTemplate,retain)\n<div class=\"tc-tab-set $class$\">\n<div class=\"tc-tab-buttons $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\" storyview=\"pop\"><$set name=\"save-currentTiddler\" value=<<currentTiddler>>><$tiddler tiddler=<<currentTab>>><$button set=<<qualify \"$state$\">> setTo=<<currentTab>> default=\"$default$\" selectedClass=\"tc-tab-selected\" tooltip={{!!tooltip}}>\n<$tiddler tiddler=<<save-currentTiddler>>>\n<$set name=\"tv-wikilinks\" value=\"no\">\n<$transclude tiddler=\"$buttonTemplate$\" mode=\"inline\">\n<$transclude tiddler=<<currentTab>> field=\"caption\">\n<$macrocall $name=\"currentTab\" $type=\"text/plain\" $output=\"text/plain\"/>\n</$transclude>\n</$transclude>\n</$set></$tiddler></$button></$tiddler></$set></$list>\n</div>\n<div class=\"tc-tab-divider $class$\"/>\n<div class=\"tc-tab-content $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\">\n\n<$reveal type=\"match\" state=<<qualify \"$state$\">> text=<<currentTab>> default=\"$default$\" retain=\"\"\"$retain$\"\"\">\n\n<$transclude tiddler=\"$template$\" mode=\"block\">\n\n<$transclude tiddler=<<currentTab>> mode=\"block\"/>\n\n</$transclude>\n\n</$reveal>\n\n</$list>\n</div>\n</div>\n\\end\n"
},
"$:/core/macros/tag-picker": {
"title": "$:/core/macros/tag-picker",
"tags": "$:/tags/Macro",
"text": "\\define add-tag-actions()\n<$action-sendmessage $message=\"tm-add-tag\" $param={{{ [<newTagNameTiddler>get[text]] }}}/>\n<$action-deletetiddler $tiddler=<<newTagNameTiddler>>/>\n\\end\n\n\\define tag-button()\n<$button class=\"tc-btn-invisible\" tag=\"a\" tooltip={{$:/language/EditTemplate/Tags/Add/Button/Hint}}>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<tag>>/>\n<$action-deletetiddler $tiddler=<<newTagNameTiddler>>/>\n<$macrocall $name=\"tag-pill\" tag=<<tag>>/>\n</$button>\n\\end\n\n\\define tag-picker-inner()\n\\whitespace trim\n<div class=\"tc-edit-add-tag\">\n<span class=\"tc-add-tag-name\">\n<$keyboard key=\"ENTER\" actions=<<add-tag-actions>>>\n<$edit-text tiddler=<<newTagNameTiddler>> tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Tags/Add/Placeholder}} focusPopup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-edit-texteditor tc-popup-handle\" tabindex=<<tabIndex>> focus={{{ [{$:/config/AutoFocus}match[tags]then[true]] ~[[false]] }}}/>\n</$keyboard>\n</span> <$button popup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Tags/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Tags/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button> <span class=\"tc-add-tag-button\">\n<$set name=\"tag\" value={{{ [<newTagNameTiddler>get[text]] }}}>\n<$button set=\"$:/temp/NewTagName\" setTo=\"\" class=\"\">\n<<add-tag-actions>>\n<$action-deletetiddler $tiddler=<<newTagNameTiddler>>/>\n{{$:/language/EditTemplate/Tags/Add/Button}}\n</$button>\n</$set>\n</span>\n</div>\n<div class=\"tc-block-dropdown-wrapper\">\n<$reveal state=<<qualify \"$:/state/popup/tags-auto-complete\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown\">\n<$set name=\"newTagName\" value={{{ [<newTagNameTiddler>get[text]] }}}>\n<$list filter=\"[<newTagName>minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=\"[tags[]!is[system]search:title<newTagName>sort[]]\" variable=\"tag\">\n<<tag-button>>\n</$list></$list>\n<hr>\n<$list filter=\"[<newTagName>minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=\"[tags[]is[system]search:title<newTagName>sort[]]\" variable=\"tag\">\n<<tag-button>>\n</$list></$list>\n</$set>\n</div>\n</$reveal>\n</div>\n\\end\n\\define tag-picker()\n\\whitespace trim\n<$list filter=\"[<newTagNameTiddler>match[]]\" emptyMessage=<<tag-picker-inner>>>\n<$set name=\"newTagNameTiddler\" value=<<qualify \"$:/temp/NewTagName\">>>\n<<tag-picker-inner>>\n</$set>\n</$list>\n\\end\n"
},
"$:/core/macros/tag": {
"title": "$:/core/macros/tag",
"tags": "$:/tags/Macro",
"text": "\\define tag-pill-styles()\nbackground-color:$(backgroundColor)$;\nfill:$(foregroundColor)$;\ncolor:$(foregroundColor)$;\n\\end\n\n\\define tag-pill-inner(tag,icon,colour,fallbackTarget,colourA,colourB,element-tag,element-attributes,actions)\n<$vars foregroundColor=<<contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"$fallbackTarget$\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\">> backgroundColor=\"\"\"$colour$\"\"\">\n<$element-tag$ $element-attributes$ class=\"tc-tag-label tc-btn-invisible\" style=<<tag-pill-styles>>>\n$actions$<$transclude tiddler=\"\"\"$icon$\"\"\"/><$view tiddler=<<__tag__>> field=\"title\" format=\"text\" />\n</$element-tag$>\n</$vars>\n\\end\n\n\\define tag-pill-body(tag,icon,colour,palette,element-tag,element-attributes,actions)\n<$macrocall $name=\"tag-pill-inner\" tag=<<__tag__>> icon=\"\"\"$icon$\"\"\" colour=\"\"\"$colour$\"\"\" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}} element-tag=\"\"\"$element-tag$\"\"\" element-attributes=\"\"\"$element-attributes$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n\\end\n\n\\define tag-pill(tag,element-tag:\"span\",element-attributes:\"\",actions:\"\")\n<span class=\"tc-tag-list-item\">\n<$macrocall $name=\"tag-pill-body\" tag=<<__tag__>> icon={{{ [<__tag__>get[icon]] }}} colour={{{ [<__tag__>get[color]] }}} palette={{$:/palette}} element-tag=\"\"\"$element-tag$\"\"\" element-attributes=\"\"\"$element-attributes$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</span>\n\\end\n\n\\define tag(tag)\n{{$tag$||$:/core/ui/TagTemplate}}\n\\end\n"
},
"$:/core/macros/thumbnails": {
"title": "$:/core/macros/thumbnails",
"tags": "$:/tags/Macro",
"text": "\\define thumbnail(link,icon,color,background-color,image,caption,width:\"280\",height:\"157\")\n<$link to=\"\"\"$link$\"\"\"><div class=\"tc-thumbnail-wrapper\">\n<div class=\"tc-thumbnail-image\" style=\"width:$width$px;height:$height$px;\"><$reveal type=\"nomatch\" text=\"\" default=\"\"\"$image$\"\"\" tag=\"div\" style=\"width:$width$px;height:$height$px;\">\n[img[$image$]]\n</$reveal><$reveal type=\"match\" text=\"\" default=\"\"\"$image$\"\"\" tag=\"div\" class=\"tc-thumbnail-background\" style=\"width:$width$px;height:$height$px;background-color:$background-color$;\"></$reveal></div><div class=\"tc-thumbnail-icon\" style=\"fill:$color$;color:$color$;\">\n$icon$\n</div><div class=\"tc-thumbnail-caption\">\n$caption$\n</div>\n</div></$link>\n\\end\n\n\\define thumbnail-right(link,icon,color,background-color,image,caption,width:\"280\",height:\"157\")\n<div class=\"tc-thumbnail-right-wrapper\"><<thumbnail \"\"\"$link$\"\"\" \"\"\"$icon$\"\"\" \"\"\"$color$\"\"\" \"\"\"$background-color$\"\"\" \"\"\"$image$\"\"\" \"\"\"$caption$\"\"\" \"\"\"$width$\"\"\" \"\"\"$height$\"\"\">></div>\n\\end\n\n\\define list-thumbnails(filter,width:\"280\",height:\"157\")\n<$list filter=\"\"\"$filter$\"\"\"><$macrocall $name=\"thumbnail\" link={{!!link}} icon={{!!icon}} color={{!!color}} background-color={{!!background-color}} image={{!!image}} caption={{!!caption}} width=\"\"\"$width$\"\"\" height=\"\"\"$height$\"\"\"/></$list>\n\\end\n"
},
"$:/core/macros/timeline": {
"title": "$:/core/macros/timeline",
"created": "20141212105914482",
"modified": "20141212110330815",
"tags": "$:/tags/Macro",
"text": "\\define timeline-title()\n\\whitespace trim\n<!-- Override this macro with a global macro \n of the same name if you need to change \n how titles are displayed on the timeline \n -->\n<$view field=\"title\"/>\n\\end\n\\define timeline(limit:\"100\",format:\"DDth MMM YYYY\",subfilter:\"\",dateField:\"modified\")\n<div class=\"tc-timeline\">\n<$list filter=\"[!is[system]$subfilter$has[$dateField$]!sort[$dateField$]limit[$limit$]eachday[$dateField$]]\">\n<div class=\"tc-menu-list-item\">\n<$view field=\"$dateField$\" format=\"date\" template=\"$format$\"/>\n<$list filter=\"[sameday:$dateField${!!$dateField$}!is[system]$subfilter$!sort[$dateField$]]\">\n<div class=\"tc-menu-list-subitem\">\n<$link to={{!!title}}><<timeline-title>></$link>\n</div>\n</$list>\n</div>\n</$list>\n</div>\n\\end\n"
},
"$:/core/macros/toc": {
"title": "$:/core/macros/toc",
"tags": "$:/tags/Macro",
"text": "\\define toc-caption()\n<$set name=\"tv-wikilinks\" value=\"no\">\n <$transclude field=\"caption\">\n <$view field=\"title\"/>\n </$transclude>\n</$set>\n\\end\n\n\\define toc-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<ol class=\"tc-toc\">\n <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__exclude__>]\"\"\">\n <$vars item=<<currentTiddler>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n <li class=<<toc-item-class>>>\n <$list filter=\"[all[current]toc-link[no]]\" emptyMessage=\"<$link><$view field='caption'><$view field='title'/></$view></$link>\">\n <<toc-caption>>\n </$list>\n <$macrocall $name=\"toc-body\" tag=<<item>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<excluded>> path=<<path>>/>\n </li>\n </$set>\n </$set>\n </$vars>\n </$list>\n</ol>\n\\end\n\n\\define toc(tag,sort:\"\",itemClassFilter:\"\")\n<$macrocall $name=\"toc-body\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> />\n\\end\n\n\\define toc-linked-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<!-- helper function -->\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n <li class=<<toc-item-class>>>\n <$link>\n <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/right-arrow}}\n </$button>\n </$reveal>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/down-arrow}}\n </$button>\n </$reveal>\n <<toc-caption>>\n </$link>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$macrocall $name=\"toc-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n </$reveal>\n </li>\n </$set>\n</$qualify>\n\\end\n\n\\define toc-unlinked-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<!-- helper function -->\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n <li class=<<toc-item-class>>>\n <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/right-arrow}}\n <<toc-caption>>\n </$button>\n </$reveal>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/down-arrow}}\n <<toc-caption>>\n </$button>\n </$reveal>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$macrocall $name=\"toc-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n </$reveal>\n </li>\n </$set>\n</$qualify>\n\\end\n\n\\define toc-expandable-empty-message()\n<$macrocall $name=\"toc-linked-expandable-body\" tag=<<tag>> sort=<<sort>> itemClassFilter=<<itemClassFilter>> exclude=<<excluded>> path=<<path>>/>\n\\end\n\n\\define toc-expandable(tag,sort:\"\",itemClassFilter:\"\",exclude,path)\n<$vars tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n <ol class=\"tc-toc toc-expandable\">\n <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__exclude__>]\"\"\">\n <$list filter=\"[all[current]toc-link[no]]\" emptyMessage=<<toc-expandable-empty-message>> >\n <$macrocall $name=\"toc-unlinked-expandable-body\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=\"\"\"itemClassFilter\"\"\" exclude=<<excluded>> path=<<path>> />\n </$list>\n </$list>\n </ol>\n </$set>\n</$vars>\n\\end\n\n\\define toc-linked-selective-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\" >\n <li class=<<toc-item-class>>>\n <$link>\n <$list filter=\"[all[current]tagging[]$sort$limit[1]]\" variable=\"ignore\" emptyMessage=\"<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button>\">\n <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/right-arrow}}\n </$button>\n </$reveal>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/down-arrow}}\n </$button>\n </$reveal>\n </$list>\n <<toc-caption>>\n </$link>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$macrocall $name=\"toc-selective-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n </$reveal>\n </li>\n </$set>\n</$qualify>\n\\end\n\n\\define toc-unlinked-selective-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n <li class=<<toc-item-class>>>\n <$list filter=\"[all[current]tagging[]$sort$limit[1]]\" variable=\"ignore\" emptyMessage=\"<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button> <$view field='caption'><$view field='title'/></$view>\">\n <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/right-arrow}}\n <<toc-caption>>\n </$button>\n </$reveal>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/down-arrow}}\n <<toc-caption>>\n </$button>\n </$reveal>\n </$list>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$macrocall $name=\"toc-selective-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n </$reveal>\n </li>\n </$set>\n</$qualify>\n\\end\n\n\\define toc-selective-expandable-empty-message()\n<$macrocall $name=\"toc-linked-selective-expandable-body\" tag=<<tag>> sort=<<sort>> itemClassFilter=<<itemClassFilter>> exclude=<<excluded>> path=<<path>>/>\n\\end\n\n\\define toc-selective-expandable(tag,sort:\"\",itemClassFilter,exclude,path)\n<$vars tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n <ol class=\"tc-toc toc-selective-expandable\">\n <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__exclude__>]\"\"\">\n <$list filter=\"[all[current]toc-link[no]]\" variable=\"ignore\" emptyMessage=<<toc-selective-expandable-empty-message>> >\n <$macrocall $name=\"toc-unlinked-selective-expandable-body\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<excluded>> path=<<path>>/>\n </$list>\n </$list>\n </ol>\n </$set>\n</$vars>\n\\end\n\n\\define toc-tabbed-external-nav(tag,sort:\"\",selectedTiddler:\"$:/temp/toc/selectedTiddler\",unselectedText,missingText,template:\"\")\n<$tiddler tiddler={{{ [<__selectedTiddler__>get[text]] }}}>\n <div class=\"tc-tabbed-table-of-contents\">\n <$linkcatcher to=<<__selectedTiddler__>>>\n <div class=\"tc-table-of-contents\">\n <$macrocall $name=\"toc-selective-expandable\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=\"[all[current]] -[<__selectedTiddler__>get[text]]\"/>\n </div>\n </$linkcatcher>\n <div class=\"tc-tabbed-table-of-contents-content\">\n <$reveal stateTitle=<<__selectedTiddler__>> type=\"nomatch\" text=\"\">\n <$transclude mode=\"block\" tiddler=<<__template__>>>\n <h1><<toc-caption>></h1>\n <$transclude mode=\"block\">$missingText$</$transclude>\n </$transclude>\n </$reveal>\n <$reveal stateTitle=<<__selectedTiddler__>> type=\"match\" text=\"\">\n $unselectedText$\n </$reveal>\n </div>\n </div>\n</$tiddler>\n\\end\n\n\\define toc-tabbed-internal-nav(tag,sort:\"\",selectedTiddler:\"$:/temp/toc/selectedTiddler\",unselectedText,missingText,template:\"\")\n<$linkcatcher to=<<__selectedTiddler__>>>\n <$macrocall $name=\"toc-tabbed-external-nav\" tag=<<__tag__>> sort=<<__sort__>> selectedTiddler=<<__selectedTiddler__>> unselectedText=<<__unselectedText__>> missingText=<<__missingText__>> template=<<__template__>>/>\n</$linkcatcher>\n\\end\n\n"
},
"$:/core/macros/translink": {
"title": "$:/core/macros/translink",
"tags": "$:/tags/Macro",
"text": "\\define translink(title,mode:\"block\")\n<div style=\"border:1px solid #ccc; padding: 0.5em; background: black; foreground; white;\">\n<$link to=\"\"\"$title$\"\"\">\n<$text text=\"\"\"$title$\"\"\"/>\n</$link>\n<div style=\"border:1px solid #ccc; padding: 0.5em; background: white; foreground; black;\">\n<$transclude tiddler=\"\"\"$title$\"\"\" mode=\"$mode$\">\n\"<$text text=\"\"\"$title$\"\"\"/>\" is missing\n</$transclude>\n</div>\n</div>\n\\end\n"
},
"$:/core/macros/tree": {
"title": "$:/core/macros/tree",
"tags": "$:/tags/Macro",
"text": "\\define leaf-link(full-title,chunk,separator: \"/\")\n<$link to=<<__full-title__>>><$text text=<<__chunk__>>/></$link>\n\\end\n\n\\define leaf-node(prefix,chunk)\n<li>\n<$list filter=\"[<__prefix__>addsuffix<__chunk__>is[shadow]] [<__prefix__>addsuffix<__chunk__>is[tiddler]]\" variable=\"full-title\">\n<$list filter=\"[<full-title>removeprefix<__prefix__>]\" variable=\"chunk\">\n<span>{{$:/core/images/file}}</span> <$macrocall $name=\"leaf-link\" full-title=<<full-title>> chunk=<<chunk>>/>\n</$list>\n</$list>\n</li>\n\\end\n\n\\define branch-node(prefix,chunk,separator: \"/\")\n<li>\n<$set name=\"reveal-state\" value={{{ [[$:/state/tree/]addsuffix<__prefix__>addsuffix<__chunk__>] }}}>\n<$reveal type=\"nomatch\" stateTitle=<<reveal-state>> text=\"show\">\n<$button setTitle=<<reveal-state>> setTo=\"show\" class=\"tc-btn-invisible\">\n{{$:/core/images/folder}} <$text text=<<__chunk__>>/>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<reveal-state>> text=\"show\">\n<$button setTitle=<<reveal-state>> setTo=\"hide\" class=\"tc-btn-invisible\">\n{{$:/core/images/folder}} <$text text=<<__chunk__>>/>\n</$button>\n</$reveal>\n<span>(<$count filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>removeprefix<__chunk__>] -[<__prefix__>addsuffix<__chunk__>]\"/>)</span>\n<$reveal type=\"match\" stateTitle=<<reveal-state>> text=\"show\">\n<$macrocall $name=\"tree-node\" prefix={{{ [<__prefix__>addsuffix<__chunk__>] }}} separator=<<__separator__>>/>\n</$reveal>\n</$set>\n</li>\n\\end\n\n\\define tree-node(prefix,separator: \"/\")\n<ol>\n<$list filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>splitbefore<__separator__>sort[]!suffix<__separator__>]\" variable=\"chunk\">\n<$macrocall $name=\"leaf-node\" prefix=<<__prefix__>> chunk=<<chunk>> separator=<<__separator__>>/>\n</$list>\n<$list filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>splitbefore<__separator__>sort[]suffix<__separator__>]\" variable=\"chunk\">\n<$macrocall $name=\"branch-node\" prefix=<<__prefix__>> chunk=<<chunk>> separator=<<__separator__>>/>\n</$list>\n</ol>\n\\end\n\n\\define tree(prefix: \"$:/\",separator: \"/\")\n<div class=\"tc-tree\">\n<span><$text text=<<__prefix__>>/></span>\n<div>\n<$macrocall $name=\"tree-node\" prefix=<<__prefix__>> separator=<<__separator__>>/>\n</div>\n</div>\n\\end\n"
},
"$:/core/macros/utils": {
"title": "$:/core/macros/utils",
"text": "\\define colour(colour)\n$colour$\n\\end\n"
},
"$:/snippets/minifocusswitcher": {
"title": "$:/snippets/minifocusswitcher",
"text": "<$select tiddler=\"$:/config/AutoFocus\">\n<$list filter=\"title tags text type fields\">\n<option value=<<currentTiddler>>><<currentTiddler>></option>\n</$list>\n</$select>\n"
},
"$:/snippets/minilanguageswitcher": {
"title": "$:/snippets/minilanguageswitcher",
"text": "<$select tiddler=\"$:/language\">\n<$list filter=\"[[$:/languages/en-GB]] [plugin-type[language]sort[title]]\">\n<option value=<<currentTiddler>>><$view field=\"description\"><$view field=\"name\"><$view field=\"title\"/></$view></$view></option>\n</$list>\n</$select>"
},
"$:/snippets/minithemeswitcher": {
"title": "$:/snippets/minithemeswitcher",
"text": "\\define lingo-base() $:/language/ControlPanel/Theme/\n<<lingo Prompt>> <$select tiddler=\"$:/theme\">\n<$list filter=\"[plugin-type[theme]sort[title]]\">\n<option value=<<currentTiddler>>><$view field=\"name\"><$view field=\"title\"/></$view></option>\n</$list>\n</$select>"
},
"$:/snippets/modules": {
"title": "$:/snippets/modules",
"text": "\\define describeModuleType(type)\n{{$:/language/Docs/ModuleTypes/$type$}}\n\\end\n<$list filter=\"[moduletypes[]]\">\n\n!! <$macrocall $name=\"currentTiddler\" $type=\"text/plain\" $output=\"text/plain\"/>\n\n<$macrocall $name=\"describeModuleType\" type=<<currentTiddler>>/>\n\n<ul><$list filter=\"[all[current]modules[]]\"><li><$link><<currentTiddler>></$link>\n</li>\n</$list>\n</ul>\n</$list>\n"
},
"$:/palette": {
"title": "$:/palette",
"text": "$:/palettes/Vanilla"
},
"$:/snippets/paletteeditor": {
"title": "$:/snippets/paletteeditor",
"text": "<$transclude tiddler=\"$:/PaletteManager\"/>\n"
},
"$:/snippets/palettepreview": {
"title": "$:/snippets/palettepreview",
"text": "<$set name=\"currentTiddler\" value={{$:/palette}}>\n{{||$:/snippets/currpalettepreview}}\n</$set>\n"
},
"$:/snippets/paletteswitcher": {
"title": "$:/snippets/paletteswitcher",
"text": "<$linkcatcher to=\"$:/palette\">\n<div class=\"tc-chooser\"><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Palette]sort[name]]\"><$set name=\"cls\" filter=\"[all[current]prefix{$:/palette}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$view field=\"name\" format=\"text\"/>'' - <$view field=\"description\" format=\"text\"/>{{||$:/snippets/currpalettepreview}}</$link>\n</div></$set>\n</$list>\n</div>\n</$linkcatcher>\n"
},
"$:/snippets/peek-stylesheets": {
"title": "$:/snippets/peek-stylesheets",
"text": "\\define expandable-stylesheets-list()\n<ol>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<$vars state=<<qualify \"$:/state/peek-stylesheets/open/\">>>\n<$set name=\"state\" value={{{ [<state>addsuffix<currentTiddler>] }}}>\n<li>\n<$reveal type=\"match\" state=<<state>> text=\"yes\" tag=\"span\">\n<$button set=<<state>> setTo=\"no\" class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" state=<<state>> text=\"yes\" tag=\"span\">\n<$button set=<<state>> setTo=\"yes\" class=\"tc-btn-invisible\">\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$link>\n<$view field=\"title\"/>\n</$link>\n<$reveal type=\"match\" state=<<state>> text=\"yes\" tag=\"div\">\n<$set name=\"source\" tiddler=<<currentTiddler>>>\n<$wikify name=\"styles\" text=<<source>>>\n<pre>\n<code>\n<$text text=<<styles>>/>\n</code>\n</pre>\n</$wikify>\n</$set>\n</$reveal>\n</li>\n</$set>\n</$vars>\n</$list>\n</ol>\n\\end\n\n\\define stylesheets-list()\n<ol>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<li>\n<$link>\n<$view field=\"title\"/>\n</$link>\n<$set name=\"source\" tiddler=<<currentTiddler>>>\n<$wikify name=\"styles\" text=<<source>>>\n<pre>\n<code>\n<$text text=<<styles>>/>\n</code>\n</pre>\n</$wikify>\n</$set>\n</li>\n</$list>\n</ol>\n\\end\n\n<$vars modeState=<<qualify \"$:/state/peek-stylesheets/mode/\">>>\n\n<$reveal type=\"nomatch\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<$button set=<<modeState>> setTo=\"expanded\" class=\"tc-btn-invisible\">{{$:/core/images/chevron-right}} {{$:/language/ControlPanel/Stylesheets/Expand/Caption}}</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<$button set=<<modeState>> setTo=\"restored\" class=\"tc-btn-invisible\">{{$:/core/images/chevron-down}} {{$:/language/ControlPanel/Stylesheets/Restore/Caption}}</$button>\n</$reveal>\n\n<$reveal type=\"nomatch\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<<expandable-stylesheets-list>>\n</$reveal>\n<$reveal type=\"match\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<<stylesheets-list>>\n</$reveal>\n\n</$vars>\n"
},
"$:/temp/search": {
"title": "$:/temp/search",
"text": ""
},
"$:/tags/AdvancedSearch": {
"title": "$:/tags/AdvancedSearch",
"list": "[[$:/core/ui/AdvancedSearch/Standard]] [[$:/core/ui/AdvancedSearch/System]] [[$:/core/ui/AdvancedSearch/Shadows]] [[$:/core/ui/AdvancedSearch/Filter]]"
},
"$:/tags/AdvancedSearch/FilterButton": {
"title": "$:/tags/AdvancedSearch/FilterButton",
"list": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown $:/core/ui/AdvancedSearch/Filter/FilterButtons/clear $:/core/ui/AdvancedSearch/Filter/FilterButtons/export $:/core/ui/AdvancedSearch/Filter/FilterButtons/delete"
},
"$:/tags/ControlPanel": {
"title": "$:/tags/ControlPanel",
"list": "$:/core/ui/ControlPanel/Info $:/core/ui/ControlPanel/Appearance $:/core/ui/ControlPanel/Settings $:/core/ui/ControlPanel/Saving $:/core/ui/ControlPanel/Plugins $:/core/ui/ControlPanel/Tools $:/core/ui/ControlPanel/Internals"
},
"$:/tags/ControlPanel/Info": {
"title": "$:/tags/ControlPanel/Info",
"list": "$:/core/ui/ControlPanel/Basics $:/core/ui/ControlPanel/Advanced"
},
"$:/tags/ControlPanel/Plugins": {
"title": "$:/tags/ControlPanel/Plugins",
"list": "[[$:/core/ui/ControlPanel/Plugins/Installed]] [[$:/core/ui/ControlPanel/Plugins/Add]]"
},
"$:/tags/EditTemplate": {
"title": "$:/tags/EditTemplate",
"list": "[[$:/core/ui/EditTemplate/controls]] [[$:/core/ui/EditTemplate/title]] [[$:/core/ui/EditTemplate/tags]] [[$:/core/ui/EditTemplate/shadow]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/EditTemplate/body]] [[$:/core/ui/EditTemplate/type]] [[$:/core/ui/EditTemplate/fields]]"
},
"$:/tags/EditToolbar": {
"title": "$:/tags/EditToolbar",
"list": "[[$:/core/ui/Buttons/delete]] [[$:/core/ui/Buttons/cancel]] [[$:/core/ui/Buttons/save]]"
},
"$:/tags/EditorToolbar": {
"title": "$:/tags/EditorToolbar",
"list": "$:/core/ui/EditorToolbar/paint $:/core/ui/EditorToolbar/opacity $:/core/ui/EditorToolbar/line-width $:/core/ui/EditorToolbar/rotate-left $:/core/ui/EditorToolbar/clear $:/core/ui/EditorToolbar/bold $:/core/ui/EditorToolbar/italic $:/core/ui/EditorToolbar/strikethrough $:/core/ui/EditorToolbar/underline $:/core/ui/EditorToolbar/superscript $:/core/ui/EditorToolbar/subscript $:/core/ui/EditorToolbar/mono-line $:/core/ui/EditorToolbar/mono-block $:/core/ui/EditorToolbar/quote $:/core/ui/EditorToolbar/list-bullet $:/core/ui/EditorToolbar/list-number $:/core/ui/EditorToolbar/heading-1 $:/core/ui/EditorToolbar/heading-2 $:/core/ui/EditorToolbar/heading-3 $:/core/ui/EditorToolbar/heading-4 $:/core/ui/EditorToolbar/heading-5 $:/core/ui/EditorToolbar/heading-6 $:/core/ui/EditorToolbar/link $:/core/ui/EditorToolbar/excise $:/core/ui/EditorToolbar/picture $:/core/ui/EditorToolbar/stamp $:/core/ui/EditorToolbar/size $:/core/ui/EditorToolbar/editor-height $:/core/ui/EditorToolbar/more $:/core/ui/EditorToolbar/preview $:/core/ui/EditorToolbar/preview-type"
},
"$:/tags/Manager/ItemMain": {
"title": "$:/tags/Manager/ItemMain",
"list": "$:/Manager/ItemMain/WikifiedText $:/Manager/ItemMain/RawText $:/Manager/ItemMain/Fields"
},
"$:/tags/Manager/ItemSidebar": {
"title": "$:/tags/Manager/ItemSidebar",
"list": "$:/Manager/ItemSidebar/Tags $:/Manager/ItemSidebar/Colour $:/Manager/ItemSidebar/Icon $:/Manager/ItemSidebar/Tools"
},
"$:/tags/MoreSideBar": {
"title": "$:/tags/MoreSideBar",
"list": "[[$:/core/ui/MoreSideBar/All]] [[$:/core/ui/MoreSideBar/Recent]] [[$:/core/ui/MoreSideBar/Tags]] [[$:/core/ui/MoreSideBar/Missing]] [[$:/core/ui/MoreSideBar/Drafts]] [[$:/core/ui/MoreSideBar/Orphans]] [[$:/core/ui/MoreSideBar/Types]] [[$:/core/ui/MoreSideBar/System]] [[$:/core/ui/MoreSideBar/Shadows]] [[$:/core/ui/MoreSideBar/Explorer]] [[$:/core/ui/MoreSideBar/Plugins]]",
"text": ""
},
"$:/tags/PageControls": {
"title": "$:/tags/PageControls",
"list": "[[$:/core/ui/Buttons/home]] [[$:/core/ui/Buttons/close-all]] [[$:/core/ui/Buttons/fold-all]] [[$:/core/ui/Buttons/unfold-all]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/new-tiddler]] [[$:/core/ui/Buttons/new-journal]] [[$:/core/ui/Buttons/new-image]] [[$:/core/ui/Buttons/import]] [[$:/core/ui/Buttons/export-page]] [[$:/core/ui/Buttons/control-panel]] [[$:/core/ui/Buttons/advanced-search]] [[$:/core/ui/Buttons/manager]] [[$:/core/ui/Buttons/tag-manager]] [[$:/core/ui/Buttons/language]] [[$:/core/ui/Buttons/palette]] [[$:/core/ui/Buttons/theme]] [[$:/core/ui/Buttons/storyview]] [[$:/core/ui/Buttons/encryption]] [[$:/core/ui/Buttons/timestamp]] [[$:/core/ui/Buttons/full-screen]] [[$:/core/ui/Buttons/print]] [[$:/core/ui/Buttons/save-wiki]] [[$:/core/ui/Buttons/refresh]] [[$:/core/ui/Buttons/more-page-actions]]"
},
"$:/tags/PageTemplate": {
"title": "$:/tags/PageTemplate",
"list": "[[$:/core/ui/PageTemplate/topleftbar]] [[$:/core/ui/PageTemplate/toprightbar]] [[$:/core/ui/PageTemplate/sidebar]] [[$:/core/ui/PageTemplate/story]] [[$:/core/ui/PageTemplate/alerts]]",
"text": ""
},
"$:/tags/PluginLibrary": {
"title": "$:/tags/PluginLibrary",
"list": "$:/config/OfficialPluginLibrary"
},
"$:/tags/SideBar": {
"title": "$:/tags/SideBar",
"list": "[[$:/core/ui/SideBar/Open]] [[$:/core/ui/SideBar/Recent]] [[$:/core/ui/SideBar/Tools]] [[$:/core/ui/SideBar/More]]",
"text": ""
},
"$:/tags/SideBarSegment": {
"title": "$:/tags/SideBarSegment",
"list": "[[$:/core/ui/SideBarSegments/site-title]] [[$:/core/ui/SideBarSegments/site-subtitle]] [[$:/core/ui/SideBarSegments/page-controls]] [[$:/core/ui/SideBarSegments/search]] [[$:/core/ui/SideBarSegments/tabs]]"
},
"$:/tags/TiddlerInfo": {
"title": "$:/tags/TiddlerInfo",
"list": "[[$:/core/ui/TiddlerInfo/Tools]] [[$:/core/ui/TiddlerInfo/References]] [[$:/core/ui/TiddlerInfo/Tagging]] [[$:/core/ui/TiddlerInfo/List]] [[$:/core/ui/TiddlerInfo/Listed]] [[$:/core/ui/TiddlerInfo/Fields]]",
"text": ""
},
"$:/tags/TiddlerInfo/Advanced": {
"title": "$:/tags/TiddlerInfo/Advanced",
"list": "[[$:/core/ui/TiddlerInfo/Advanced/ShadowInfo]] [[$:/core/ui/TiddlerInfo/Advanced/PluginInfo]]"
},
"$:/tags/ViewTemplate": {
"title": "$:/tags/ViewTemplate",
"list": "[[$:/core/ui/ViewTemplate/title]] [[$:/core/ui/ViewTemplate/unfold]] [[$:/core/ui/ViewTemplate/subtitle]] [[$:/core/ui/ViewTemplate/tags]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/ViewTemplate/body]]"
},
"$:/tags/ViewToolbar": {
"title": "$:/tags/ViewToolbar",
"list": "[[$:/core/ui/Buttons/more-tiddler-actions]] [[$:/core/ui/Buttons/info]] [[$:/core/ui/Buttons/new-here]] [[$:/core/ui/Buttons/new-journal-here]] [[$:/core/ui/Buttons/clone]] [[$:/core/ui/Buttons/export-tiddler]] [[$:/core/ui/Buttons/edit]] [[$:/core/ui/Buttons/delete]] [[$:/core/ui/Buttons/permalink]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/open-window]] [[$:/core/ui/Buttons/close-others]] [[$:/core/ui/Buttons/close]] [[$:/core/ui/Buttons/fold-others]] [[$:/core/ui/Buttons/fold]]"
},
"$:/snippets/themeswitcher": {
"title": "$:/snippets/themeswitcher",
"text": "<$linkcatcher to=\"$:/theme\">\n<div class=\"tc-chooser\"><$list filter=\"[plugin-type[theme]sort[title]]\"><$set name=\"cls\" filter=\"[all[current]field:title{$:/theme}] [[$:/theme]!has[text]addsuffix[s/tiddlywiki/vanilla]field:title<currentTiddler>] +[limit[1]]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$view field=\"name\" format=\"text\"/>'' <$view field=\"description\" format=\"text\"/></$link></div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
},
"$:/core/wiki/title": {
"title": "$:/core/wiki/title",
"text": "{{$:/SiteTitle}} --- {{$:/SiteSubtitle}}"
},
"$:/view": {
"title": "$:/view",
"text": "classic"
},
"$:/snippets/viewswitcher": {
"title": "$:/snippets/viewswitcher",
"text": "\\define icon()\n$:/core/images/storyview-$(storyview)$\n\\end\n<$linkcatcher to=\"$:/view\">\n<div class=\"tc-chooser tc-viewswitcher\">\n<$list filter=\"[storyviews[]]\" variable=\"storyview\">\n<$set name=\"cls\" filter=\"[<storyview>prefix{$:/view}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>>\n<$link to=<<storyview>>><$transclude tiddler=<<icon>>/><$text text=<<storyview>>/></$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
}
}
}
# [[LIS职业能力索引:个人能力]]
# [[LIS职业能力索引:专业能力]]
# [[普通高等学校图书馆保障学习支持和科研支持的方法]]
# [[作业1佳能]]
# [[作业2申晓娟和杨帆两位作者的学术关系]]
# [[作业3徐大佑名字出现次数]]
下列条目已被导入:
# [[wallhaven-01qgv4.jpg]]
{
"tiddlers": {
"$:/language/Buttons/AdvancedSearch/Caption": {
"title": "$:/language/Buttons/AdvancedSearch/Caption",
"text": "高级查找"
},
"$:/language/Buttons/AdvancedSearch/Hint": {
"title": "$:/language/Buttons/AdvancedSearch/Hint",
"text": "高级查找"
},
"$:/language/Buttons/Cancel/Caption": {
"title": "$:/language/Buttons/Cancel/Caption",
"text": "取消"
},
"$:/language/Buttons/Cancel/Hint": {
"title": "$:/language/Buttons/Cancel/Hint",
"text": "放弃对此条目的更改"
},
"$:/language/Buttons/Clone/Caption": {
"title": "$:/language/Buttons/Clone/Caption",
"text": "克隆"
},
"$:/language/Buttons/Clone/Hint": {
"title": "$:/language/Buttons/Clone/Hint",
"text": "克隆此条目"
},
"$:/language/Buttons/Close/Caption": {
"title": "$:/language/Buttons/Close/Caption",
"text": "关闭"
},
"$:/language/Buttons/Close/Hint": {
"title": "$:/language/Buttons/Close/Hint",
"text": "关闭此条目"
},
"$:/language/Buttons/CloseAll/Caption": {
"title": "$:/language/Buttons/CloseAll/Caption",
"text": "全部关闭"
},
"$:/language/Buttons/CloseAll/Hint": {
"title": "$:/language/Buttons/CloseAll/Hint",
"text": "关闭所有条目"
},
"$:/language/Buttons/CloseOthers/Caption": {
"title": "$:/language/Buttons/CloseOthers/Caption",
"text": "关闭其他"
},
"$:/language/Buttons/CloseOthers/Hint": {
"title": "$:/language/Buttons/CloseOthers/Hint",
"text": "关闭其他条目"
},
"$:/language/Buttons/ControlPanel/Caption": {
"title": "$:/language/Buttons/ControlPanel/Caption",
"text": "控制台"
},
"$:/language/Buttons/ControlPanel/Hint": {
"title": "$:/language/Buttons/ControlPanel/Hint",
"text": "开启控制台"
},
"$:/language/Buttons/CopyToClipboard/Caption": {
"title": "$:/language/Buttons/CopyToClipboard/Caption",
"text": "复制到剪贴板"
},
"$:/language/Buttons/CopyToClipboard/Hint": {
"title": "$:/language/Buttons/CopyToClipboard/Hint",
"text": "将此文本复制到剪贴板"
},
"$:/language/Buttons/Delete/Caption": {
"title": "$:/language/Buttons/Delete/Caption",
"text": "删除"
},
"$:/language/Buttons/Delete/Hint": {
"title": "$:/language/Buttons/Delete/Hint",
"text": "删除此条目"
},
"$:/language/Buttons/Edit/Caption": {
"title": "$:/language/Buttons/Edit/Caption",
"text": "编辑"
},
"$:/language/Buttons/Edit/Hint": {
"title": "$:/language/Buttons/Edit/Hint",
"text": "编辑此条目"
},
"$:/language/Buttons/Encryption/Caption": {
"title": "$:/language/Buttons/Encryption/Caption",
"text": "加密"
},
"$:/language/Buttons/Encryption/Hint": {
"title": "$:/language/Buttons/Encryption/Hint",
"text": "设置或清除保存此维基的密码"
},
"$:/language/Buttons/Encryption/ClearPassword/Caption": {
"title": "$:/language/Buttons/Encryption/ClearPassword/Caption",
"text": "清除密码"
},
"$:/language/Buttons/Encryption/ClearPassword/Hint": {
"title": "$:/language/Buttons/Encryption/ClearPassword/Hint",
"text": "清除密码且不加密保存此维基"
},
"$:/language/Buttons/Encryption/SetPassword/Caption": {
"title": "$:/language/Buttons/Encryption/SetPassword/Caption",
"text": "设置密码"
},
"$:/language/Buttons/Encryption/SetPassword/Hint": {
"title": "$:/language/Buttons/Encryption/SetPassword/Hint",
"text": "设置加密保存此维基的密码"
},
"$:/language/Buttons/ExportPage/Caption": {
"title": "$:/language/Buttons/ExportPage/Caption",
"text": "导出所有条目"
},
"$:/language/Buttons/ExportPage/Hint": {
"title": "$:/language/Buttons/ExportPage/Hint",
"text": "导出所有条目"
},
"$:/language/Buttons/ExportTiddler/Caption": {
"title": "$:/language/Buttons/ExportTiddler/Caption",
"text": "导出此条目"
},
"$:/language/Buttons/ExportTiddler/Hint": {
"title": "$:/language/Buttons/ExportTiddler/Hint",
"text": "导出此条目"
},
"$:/language/Buttons/ExportTiddlers/Caption": {
"title": "$:/language/Buttons/ExportTiddlers/Caption",
"text": "导出条目"
},
"$:/language/Buttons/ExportTiddlers/Hint": {
"title": "$:/language/Buttons/ExportTiddlers/Hint",
"text": "导出条目"
},
"$:/language/Buttons/SidebarSearch/Hint": {
"title": "$:/language/Buttons/SidebarSearch/Hint",
"text": "选择侧边栏的查找字段"
},
"$:/language/Buttons/Fold/Caption": {
"title": "$:/language/Buttons/Fold/Caption",
"text": "收合条目"
},
"$:/language/Buttons/Fold/Hint": {
"title": "$:/language/Buttons/Fold/Hint",
"text": "收合此条目的内容"
},
"$:/language/Buttons/Unfold/Caption": {
"title": "$:/language/Buttons/Unfold/Caption",
"text": "展开条目"
},
"$:/language/Buttons/Unfold/Hint": {
"title": "$:/language/Buttons/Unfold/Hint",
"text": "展开此条目的内容"
},
"$:/language/Buttons/FoldOthers/Caption": {
"title": "$:/language/Buttons/FoldOthers/Caption",
"text": "收合其他条目"
},
"$:/language/Buttons/FoldOthers/Hint": {
"title": "$:/language/Buttons/FoldOthers/Hint",
"text": "收合其他已开启条目的内容"
},
"$:/language/Buttons/FoldAll/Caption": {
"title": "$:/language/Buttons/FoldAll/Caption",
"text": "收合所有条目"
},
"$:/language/Buttons/FoldAll/Hint": {
"title": "$:/language/Buttons/FoldAll/Hint",
"text": "收合所有已开启条目的内容"
},
"$:/language/Buttons/Fold/FoldBar/Caption": {
"title": "$:/language/Buttons/Fold/FoldBar/Caption",
"text": "收合栏"
},
"$:/language/Buttons/Fold/FoldBar/Hint": {
"title": "$:/language/Buttons/Fold/FoldBar/Hint",
"text": "可选的收合与展开条目的长条按钮"
},
"$:/language/Buttons/UnfoldAll/Caption": {
"title": "$:/language/Buttons/UnfoldAll/Caption",
"text": "展开所有条目"
},
"$:/language/Buttons/UnfoldAll/Hint": {
"title": "$:/language/Buttons/UnfoldAll/Hint",
"text": "展开所有已开启条目的内容"
},
"$:/language/Buttons/FullScreen/Caption": {
"title": "$:/language/Buttons/FullScreen/Caption",
"text": "全屏幕"
},
"$:/language/Buttons/FullScreen/Hint": {
"title": "$:/language/Buttons/FullScreen/Hint",
"text": "进入或离开全屏模式"
},
"$:/language/Buttons/Help/Caption": {
"title": "$:/language/Buttons/Help/Caption",
"text": "帮助"
},
"$:/language/Buttons/Help/Hint": {
"title": "$:/language/Buttons/Help/Hint",
"text": "显示帮助面板"
},
"$:/language/Buttons/Home/Caption": {
"title": "$:/language/Buttons/Home/Caption",
"text": "首页"
},
"$:/language/Buttons/Home/Hint": {
"title": "$:/language/Buttons/Home/Hint",
"text": "开启首页条目"
},
"$:/language/Buttons/Import/Caption": {
"title": "$:/language/Buttons/Import/Caption",
"text": "导入"
},
"$:/language/Buttons/Import/Hint": {
"title": "$:/language/Buttons/Import/Hint",
"text": "导入许多类型的文件包括文本、图像、TiddlyWiki 或 JSON"
},
"$:/language/Buttons/Info/Caption": {
"title": "$:/language/Buttons/Info/Caption",
"text": "信息"
},
"$:/language/Buttons/Info/Hint": {
"title": "$:/language/Buttons/Info/Hint",
"text": "显示此条目的信息"
},
"$:/language/Buttons/Language/Caption": {
"title": "$:/language/Buttons/Language/Caption",
"text": "语言"
},
"$:/language/Buttons/Language/Hint": {
"title": "$:/language/Buttons/Language/Hint",
"text": "选择用户介面语言"
},
"$:/language/Buttons/Manager/Caption": {
"title": "$:/language/Buttons/Manager/Caption",
"text": "条目管理器"
},
"$:/language/Buttons/Manager/Hint": {
"title": "$:/language/Buttons/Manager/Hint",
"text": "开启条目管理器"
},
"$:/language/Buttons/More/Caption": {
"title": "$:/language/Buttons/More/Caption",
"text": "更多"
},
"$:/language/Buttons/More/Hint": {
"title": "$:/language/Buttons/More/Hint",
"text": "更多动作"
},
"$:/language/Buttons/NewHere/Caption": {
"title": "$:/language/Buttons/NewHere/Caption",
"text": "添加子条目"
},
"$:/language/Buttons/NewHere/Hint": {
"title": "$:/language/Buttons/NewHere/Hint",
"text": "创建一个标签为此条目名称的新条目"
},
"$:/language/Buttons/NewJournal/Caption": {
"title": "$:/language/Buttons/NewJournal/Caption",
"text": "添加日志"
},
"$:/language/Buttons/NewJournal/Hint": {
"title": "$:/language/Buttons/NewJournal/Hint",
"text": "创建一个新的日志条目"
},
"$:/language/Buttons/NewJournalHere/Caption": {
"title": "$:/language/Buttons/NewJournalHere/Caption",
"text": "添加子日志"
},
"$:/language/Buttons/NewJournalHere/Hint": {
"title": "$:/language/Buttons/NewJournalHere/Hint",
"text": "创建一个标签含此条目名称的新日志条目"
},
"$:/language/Buttons/NewImage/Caption": {
"title": "$:/language/Buttons/NewImage/Caption",
"text": "添加图像"
},
"$:/language/Buttons/NewImage/Hint": {
"title": "$:/language/Buttons/NewImage/Hint",
"text": "创建一个新的图像条目"
},
"$:/language/Buttons/NewMarkdown/Caption": {
"title": "$:/language/Buttons/NewMarkdown/Caption",
"text": "添加 Markdown 条目"
},
"$:/language/Buttons/NewMarkdown/Hint": {
"title": "$:/language/Buttons/NewMarkdown/Hint",
"text": "创建一个新的 Markdown 条目"
},
"$:/language/Buttons/NewTiddler/Caption": {
"title": "$:/language/Buttons/NewTiddler/Caption",
"text": "添加条目"
},
"$:/language/Buttons/NewTiddler/Hint": {
"title": "$:/language/Buttons/NewTiddler/Hint",
"text": "创建一个新的条目"
},
"$:/language/Buttons/OpenWindow/Caption": {
"title": "$:/language/Buttons/OpenWindow/Caption",
"text": "开启于新窗口"
},
"$:/language/Buttons/OpenWindow/Hint": {
"title": "$:/language/Buttons/OpenWindow/Hint",
"text": "在新窗口中开启条目"
},
"$:/language/Buttons/Palette/Caption": {
"title": "$:/language/Buttons/Palette/Caption",
"text": "调色板"
},
"$:/language/Buttons/Palette/Hint": {
"title": "$:/language/Buttons/Palette/Hint",
"text": "选择调色板"
},
"$:/language/Buttons/Permalink/Caption": {
"title": "$:/language/Buttons/Permalink/Caption",
"text": "引用链接"
},
"$:/language/Buttons/Permalink/Hint": {
"title": "$:/language/Buttons/Permalink/Hint",
"text": "设置浏览器网址栏为直接链接到此条目"
},
"$:/language/Buttons/Permaview/Caption": {
"title": "$:/language/Buttons/Permaview/Caption",
"text": "永久链接"
},
"$:/language/Buttons/Permaview/Hint": {
"title": "$:/language/Buttons/Permaview/Hint",
"text": "设置浏览器网址栏为直接链接到当前所有已开启条目"
},
"$:/language/Buttons/Print/Caption": {
"title": "$:/language/Buttons/Print/Caption",
"text": "打印页面"
},
"$:/language/Buttons/Print/Hint": {
"title": "$:/language/Buttons/Print/Hint",
"text": "打印当前页面"
},
"$:/language/Buttons/Refresh/Caption": {
"title": "$:/language/Buttons/Refresh/Caption",
"text": "刷新"
},
"$:/language/Buttons/Refresh/Hint": {
"title": "$:/language/Buttons/Refresh/Hint",
"text": "执行维基的完全刷新"
},
"$:/language/Buttons/Save/Caption": {
"title": "$:/language/Buttons/Save/Caption",
"text": "确定"
},
"$:/language/Buttons/Save/Hint": {
"title": "$:/language/Buttons/Save/Hint",
"text": "确定对此条目的更改"
},
"$:/language/Buttons/SaveWiki/Caption": {
"title": "$:/language/Buttons/SaveWiki/Caption",
"text": "保存变更"
},
"$:/language/Buttons/SaveWiki/Hint": {
"title": "$:/language/Buttons/SaveWiki/Hint",
"text": "保存变更"
},
"$:/language/Buttons/StoryView/Caption": {
"title": "$:/language/Buttons/StoryView/Caption",
"text": "查看模式"
},
"$:/language/Buttons/StoryView/Hint": {
"title": "$:/language/Buttons/StoryView/Hint",
"text": "选择查看条目的视觉效果"
},
"$:/language/Buttons/HideSideBar/Caption": {
"title": "$:/language/Buttons/HideSideBar/Caption",
"text": "隐藏侧边栏"
},
"$:/language/Buttons/HideSideBar/Hint": {
"title": "$:/language/Buttons/HideSideBar/Hint",
"text": "隐藏侧边栏"
},
"$:/language/Buttons/ShowSideBar/Caption": {
"title": "$:/language/Buttons/ShowSideBar/Caption",
"text": "显示侧边栏"
},
"$:/language/Buttons/ShowSideBar/Hint": {
"title": "$:/language/Buttons/ShowSideBar/Hint",
"text": "显示侧边栏"
},
"$:/language/Buttons/TagManager/Caption": {
"title": "$:/language/Buttons/TagManager/Caption",
"text": "标签管理"
},
"$:/language/Buttons/TagManager/Hint": {
"title": "$:/language/Buttons/TagManager/Hint",
"text": "标签管理"
},
"$:/language/Buttons/Timestamp/Caption": {
"title": "$:/language/Buttons/Timestamp/Caption",
"text": "时间戳记"
},
"$:/language/Buttons/Timestamp/Hint": {
"title": "$:/language/Buttons/Timestamp/Hint",
"text": "选择修改是否更新时间戳记"
},
"$:/language/Buttons/Timestamp/On/Caption": {
"title": "$:/language/Buttons/Timestamp/On/Caption",
"text": "时间戳记开启"
},
"$:/language/Buttons/Timestamp/On/Hint": {
"title": "$:/language/Buttons/Timestamp/On/Hint",
"text": "条目被修改时,更新时间戳记"
},
"$:/language/Buttons/Timestamp/Off/Caption": {
"title": "$:/language/Buttons/Timestamp/Off/Caption",
"text": "时间戳记关闭"
},
"$:/language/Buttons/Timestamp/Off/Hint": {
"title": "$:/language/Buttons/Timestamp/Off/Hint",
"text": "条目被修改时,不更新时间戳记"
},
"$:/language/Buttons/Theme/Caption": {
"title": "$:/language/Buttons/Theme/Caption",
"text": "布景主题"
},
"$:/language/Buttons/Theme/Hint": {
"title": "$:/language/Buttons/Theme/Hint",
"text": "选择布景主题"
},
"$:/language/Buttons/Bold/Caption": {
"title": "$:/language/Buttons/Bold/Caption",
"text": "粗体"
},
"$:/language/Buttons/Bold/Hint": {
"title": "$:/language/Buttons/Bold/Hint",
"text": "套用粗体格式于所选文本"
},
"$:/language/Buttons/Clear/Caption": {
"title": "$:/language/Buttons/Clear/Caption",
"text": "清除"
},
"$:/language/Buttons/Clear/Hint": {
"title": "$:/language/Buttons/Clear/Hint",
"text": "清除图像为纯色"
},
"$:/language/Buttons/EditorHeight/Caption": {
"title": "$:/language/Buttons/EditorHeight/Caption",
"text": "编辑器高度"
},
"$:/language/Buttons/EditorHeight/Caption/Auto": {
"title": "$:/language/Buttons/EditorHeight/Caption/Auto",
"text": "自动调整高度以适合内容"
},
"$:/language/Buttons/EditorHeight/Caption/Fixed": {
"title": "$:/language/Buttons/EditorHeight/Caption/Fixed",
"text": "固定高度︰"
},
"$:/language/Buttons/EditorHeight/Hint": {
"title": "$:/language/Buttons/EditorHeight/Hint",
"text": "选择文本编辑器的高度"
},
"$:/language/Buttons/Excise/Caption": {
"title": "$:/language/Buttons/Excise/Caption",
"text": "剪切"
},
"$:/language/Buttons/Excise/Caption/Excise": {
"title": "$:/language/Buttons/Excise/Caption/Excise",
"text": "执行剪切"
},
"$:/language/Buttons/Excise/Caption/MacroName": {
"title": "$:/language/Buttons/Excise/Caption/MacroName",
"text": "宏的名称︰"
},
"$:/language/Buttons/Excise/Caption/NewTitle": {
"title": "$:/language/Buttons/Excise/Caption/NewTitle",
"text": "新条目的名称︰"
},
"$:/language/Buttons/Excise/Caption/Replace": {
"title": "$:/language/Buttons/Excise/Caption/Replace",
"text": "替换剪切的文本为:"
},
"$:/language/Buttons/Excise/Caption/Replace/Macro": {
"title": "$:/language/Buttons/Excise/Caption/Replace/Macro",
"text": "宏"
},
"$:/language/Buttons/Excise/Caption/Replace/Link": {
"title": "$:/language/Buttons/Excise/Caption/Replace/Link",
"text": "链接"
},
"$:/language/Buttons/Excise/Caption/Replace/Transclusion": {
"title": "$:/language/Buttons/Excise/Caption/Replace/Transclusion",
"text": "嵌入"
},
"$:/language/Buttons/Excise/Caption/Tag": {
"title": "$:/language/Buttons/Excise/Caption/Tag",
"text": "将新条目的标签设为此条目的名称"
},
"$:/language/Buttons/Excise/Caption/TiddlerExists": {
"title": "$:/language/Buttons/Excise/Caption/TiddlerExists",
"text": "警示:条目已经存在"
},
"$:/language/Buttons/Excise/Hint": {
"title": "$:/language/Buttons/Excise/Hint",
"text": "剪切所选文本到一个新条目"
},
"$:/language/Buttons/Heading1/Caption": {
"title": "$:/language/Buttons/Heading1/Caption",
"text": "标题 1"
},
"$:/language/Buttons/Heading1/Hint": {
"title": "$:/language/Buttons/Heading1/Hint",
"text": "套用标题级别 1 的格式于包含所选文本的列"
},
"$:/language/Buttons/Heading2/Caption": {
"title": "$:/language/Buttons/Heading2/Caption",
"text": "标题 2"
},
"$:/language/Buttons/Heading2/Hint": {
"title": "$:/language/Buttons/Heading2/Hint",
"text": "套用标题级别 2 的格式于包含所选文本的列"
},
"$:/language/Buttons/Heading3/Caption": {
"title": "$:/language/Buttons/Heading3/Caption",
"text": "标题 3"
},
"$:/language/Buttons/Heading3/Hint": {
"title": "$:/language/Buttons/Heading3/Hint",
"text": "套用标题级别 3 的格式于包含所选文本的列"
},
"$:/language/Buttons/Heading4/Caption": {
"title": "$:/language/Buttons/Heading4/Caption",
"text": "标题 4"
},
"$:/language/Buttons/Heading4/Hint": {
"title": "$:/language/Buttons/Heading4/Hint",
"text": "套用标题级别 4 的格式于包含所选文本的列"
},
"$:/language/Buttons/Heading5/Caption": {
"title": "$:/language/Buttons/Heading5/Caption",
"text": "标题 5"
},
"$:/language/Buttons/Heading5/Hint": {
"title": "$:/language/Buttons/Heading5/Hint",
"text": "套用标题级别 5 的格式于包含所选文本的列"
},
"$:/language/Buttons/Heading6/Caption": {
"title": "$:/language/Buttons/Heading6/Caption",
"text": "标题 6"
},
"$:/language/Buttons/Heading6/Hint": {
"title": "$:/language/Buttons/Heading6/Hint",
"text": "套用标题级别 6 的格式于包含所选文本的列"
},
"$:/language/Buttons/Italic/Caption": {
"title": "$:/language/Buttons/Italic/Caption",
"text": "斜体"
},
"$:/language/Buttons/Italic/Hint": {
"title": "$:/language/Buttons/Italic/Hint",
"text": "套用斜体格式于所选文本"
},
"$:/language/Buttons/LineWidth/Caption": {
"title": "$:/language/Buttons/LineWidth/Caption",
"text": "线宽"
},
"$:/language/Buttons/LineWidth/Hint": {
"title": "$:/language/Buttons/LineWidth/Hint",
"text": "设置绘画的线条宽度"
},
"$:/language/Buttons/Link/Caption": {
"title": "$:/language/Buttons/Link/Caption",
"text": "链接"
},
"$:/language/Buttons/Link/Hint": {
"title": "$:/language/Buttons/Link/Hint",
"text": "创建维基文字链接"
},
"$:/language/Buttons/Linkify/Caption": {
"title": "$:/language/Buttons/Linkify/Caption",
"text": "维基链接"
},
"$:/language/Buttons/Linkify/Hint": {
"title": "$:/language/Buttons/Linkify/Hint",
"text": "套用维基链接于所选文字"
},
"$:/language/Buttons/ListBullet/Caption": {
"title": "$:/language/Buttons/ListBullet/Caption",
"text": "符号清单"
},
"$:/language/Buttons/ListBullet/Hint": {
"title": "$:/language/Buttons/ListBullet/Hint",
"text": "套用符号清单格式于包含所选文本的列"
},
"$:/language/Buttons/ListNumber/Caption": {
"title": "$:/language/Buttons/ListNumber/Caption",
"text": "数字清单"
},
"$:/language/Buttons/ListNumber/Hint": {
"title": "$:/language/Buttons/ListNumber/Hint",
"text": "套用数字清单格式于包含所选文本的列"
},
"$:/language/Buttons/MonoBlock/Caption": {
"title": "$:/language/Buttons/MonoBlock/Caption",
"text": "等宽区块"
},
"$:/language/Buttons/MonoBlock/Hint": {
"title": "$:/language/Buttons/MonoBlock/Hint",
"text": "套用等宽区块格式于包含所选文本的列"
},
"$:/language/Buttons/MonoLine/Caption": {
"title": "$:/language/Buttons/MonoLine/Caption",
"text": "等宽"
},
"$:/language/Buttons/MonoLine/Hint": {
"title": "$:/language/Buttons/MonoLine/Hint",
"text": "套用等宽字符格式于所选文本"
},
"$:/language/Buttons/Opacity/Caption": {
"title": "$:/language/Buttons/Opacity/Caption",
"text": "不透明度"
},
"$:/language/Buttons/Opacity/Hint": {
"title": "$:/language/Buttons/Opacity/Hint",
"text": "设置绘画的不透明度"
},
"$:/language/Buttons/Paint/Caption": {
"title": "$:/language/Buttons/Paint/Caption",
"text": "绘画颜色"
},
"$:/language/Buttons/Paint/Hint": {
"title": "$:/language/Buttons/Paint/Hint",
"text": "设置绘画的颜色"
},
"$:/language/Buttons/Picture/Caption": {
"title": "$:/language/Buttons/Picture/Caption",
"text": "图片"
},
"$:/language/Buttons/Picture/Hint": {
"title": "$:/language/Buttons/Picture/Hint",
"text": "插入图片"
},
"$:/language/Buttons/Preview/Caption": {
"title": "$:/language/Buttons/Preview/Caption",
"text": "预览"
},
"$:/language/Buttons/Preview/Hint": {
"title": "$:/language/Buttons/Preview/Hint",
"text": "显示预览窗格"
},
"$:/language/Buttons/PreviewType/Caption": {
"title": "$:/language/Buttons/PreviewType/Caption",
"text": "预览类型"
},
"$:/language/Buttons/PreviewType/Hint": {
"title": "$:/language/Buttons/PreviewType/Hint",
"text": "选择预览类型"
},
"$:/language/Buttons/Quote/Caption": {
"title": "$:/language/Buttons/Quote/Caption",
"text": "引言"
},
"$:/language/Buttons/Quote/Hint": {
"title": "$:/language/Buttons/Quote/Hint",
"text": "套用引言文本格式于包含所选文本的列"
},
"$:/language/Buttons/RotateLeft/Caption": {
"title": "$:/language/Buttons/RotateLeft/Caption",
"text": "向左旋转"
},
"$:/language/Buttons/RotateLeft/Hint": {
"title": "$:/language/Buttons/RotateLeft/Hint",
"text": "图像向左旋转 90 度"
},
"$:/language/Buttons/Size/Caption": {
"title": "$:/language/Buttons/Size/Caption",
"text": "图像大小"
},
"$:/language/Buttons/Size/Caption/Height": {
"title": "$:/language/Buttons/Size/Caption/Height",
"text": "高度︰"
},
"$:/language/Buttons/Size/Caption/Resize": {
"title": "$:/language/Buttons/Size/Caption/Resize",
"text": "调整图像的大小"
},
"$:/language/Buttons/Size/Caption/Width": {
"title": "$:/language/Buttons/Size/Caption/Width",
"text": "宽度:"
},
"$:/language/Buttons/Size/Hint": {
"title": "$:/language/Buttons/Size/Hint",
"text": "设置图像的大小"
},
"$:/language/Buttons/Stamp/Caption": {
"title": "$:/language/Buttons/Stamp/Caption",
"text": "印记"
},
"$:/language/Buttons/Stamp/Caption/New": {
"title": "$:/language/Buttons/Stamp/Caption/New",
"text": "添加您自己的"
},
"$:/language/Buttons/Stamp/Hint": {
"title": "$:/language/Buttons/Stamp/Hint",
"text": "插入一个预配置的文本片段"
},
"$:/language/Buttons/Stamp/New/Title": {
"title": "$:/language/Buttons/Stamp/New/Title",
"text": "在选单中显示的标题"
},
"$:/language/Buttons/Stamp/New/Text": {
"title": "$:/language/Buttons/Stamp/New/Text",
"text": "片段的文本。(记得在 `caption` 栏位中添加一个说明性的标题)。"
},
"$:/language/Buttons/Strikethrough/Caption": {
"title": "$:/language/Buttons/Strikethrough/Caption",
"text": "删除线"
},
"$:/language/Buttons/Strikethrough/Hint": {
"title": "$:/language/Buttons/Strikethrough/Hint",
"text": "套用删除线格式于所选文本"
},
"$:/language/Buttons/Subscript/Caption": {
"title": "$:/language/Buttons/Subscript/Caption",
"text": "下标"
},
"$:/language/Buttons/Subscript/Hint": {
"title": "$:/language/Buttons/Subscript/Hint",
"text": "套用下标格式于所选文本"
},
"$:/language/Buttons/Superscript/Caption": {
"title": "$:/language/Buttons/Superscript/Caption",
"text": "上标"
},
"$:/language/Buttons/Superscript/Hint": {
"title": "$:/language/Buttons/Superscript/Hint",
"text": "套用上标格式于所选文本"
},
"$:/language/Buttons/ToggleSidebar/Hint": {
"title": "$:/language/Buttons/ToggleSidebar/Hint",
"text": "切换显示或隐藏侧边栏"
},
"$:/language/Buttons/Transcludify/Caption": {
"title": "$:/language/Buttons/Transcludify/Caption",
"text": "嵌入"
},
"$:/language/Buttons/Transcludify/Hint": {
"title": "$:/language/Buttons/Transcludify/Hint",
"text": "套用嵌入于所选文字"
},
"$:/language/Buttons/Underline/Caption": {
"title": "$:/language/Buttons/Underline/Caption",
"text": "下划线"
},
"$:/language/Buttons/Underline/Hint": {
"title": "$:/language/Buttons/Underline/Hint",
"text": "套用下划线格式于所选文本"
},
"$:/language/ControlPanel/Advanced/Caption": {
"title": "$:/language/ControlPanel/Advanced/Caption",
"text": "高级"
},
"$:/language/ControlPanel/Advanced/Hint": {
"title": "$:/language/ControlPanel/Advanced/Hint",
"text": "关于此 TiddlyWiki 的内部信息"
},
"$:/language/ControlPanel/Appearance/Caption": {
"title": "$:/language/ControlPanel/Appearance/Caption",
"text": "视觉外观"
},
"$:/language/ControlPanel/Appearance/Hint": {
"title": "$:/language/ControlPanel/Appearance/Hint",
"text": "定制您的 TiddlyWiki 外观。"
},
"$:/language/ControlPanel/Basics/AnimDuration/Prompt": {
"title": "$:/language/ControlPanel/Basics/AnimDuration/Prompt",
"text": "动画持续时间"
},
"$:/language/ControlPanel/Basics/AutoFocus/Prompt": {
"title": "$:/language/ControlPanel/Basics/AutoFocus/Prompt",
"text": "编辑条目时的默认自动停留栏位"
},
"$:/language/ControlPanel/Basics/Caption": {
"title": "$:/language/ControlPanel/Basics/Caption",
"text": "基本"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint",
"text": "标题含空白时请使用 [[双中括弧]],或者您可用 <$button set=\"$:/DefaultTiddlers\" setTo=\"[list[$:/StoryList]]\">保留开启中的条目顺序</$button>"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt",
"text": "首页"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint",
"text": "默认开启的条目"
},
"$:/language/ControlPanel/Basics/Language/Prompt": {
"title": "$:/language/ControlPanel/Basics/Language/Prompt",
"text": "您好!当前的语言:"
},
"$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt",
"text": "新日志条目的标签"
},
"$:/language/ControlPanel/Basics/NewJournal/Text/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt",
"text": "新日志条目的内容"
},
"$:/language/ControlPanel/Basics/NewJournal/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt",
"text": "新日志条目的名称"
},
"$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt",
"text": "新条目的标签"
},
"$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt",
"text": "新条目的名称"
},
"$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt",
"text": "被覆盖的默认条目数量"
},
"$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt",
"text": "默认条目数量"
},
"$:/language/ControlPanel/Basics/Subtitle/Prompt": {
"title": "$:/language/ControlPanel/Basics/Subtitle/Prompt",
"text": "副标题"
},
"$:/language/ControlPanel/Basics/SystemTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt",
"text": "系统条目数量"
},
"$:/language/ControlPanel/Basics/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/Tags/Prompt",
"text": "标签数量"
},
"$:/language/ControlPanel/Basics/Tiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/Tiddlers/Prompt",
"text": "一般条目数量"
},
"$:/language/ControlPanel/Basics/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/Title/Prompt",
"text": "标题"
},
"$:/language/ControlPanel/Basics/Username/Prompt": {
"title": "$:/language/ControlPanel/Basics/Username/Prompt",
"text": "编辑者署名"
},
"$:/language/ControlPanel/Basics/Version/Prompt": {
"title": "$:/language/ControlPanel/Basics/Version/Prompt",
"text": "~TiddlyWiki 版本"
},
"$:/language/ControlPanel/EditorTypes/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Caption",
"text": "编辑器类型"
},
"$:/language/ControlPanel/EditorTypes/Editor/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Editor/Caption",
"text": "编辑器"
},
"$:/language/ControlPanel/EditorTypes/Hint": {
"title": "$:/language/ControlPanel/EditorTypes/Hint",
"text": "这些条目决定使用哪个编辑器来编辑特定条目类型。"
},
"$:/language/ControlPanel/EditorTypes/Type/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Type/Caption",
"text": "类型"
},
"$:/language/ControlPanel/Info/Caption": {
"title": "$:/language/ControlPanel/Info/Caption",
"text": "信息"
},
"$:/language/ControlPanel/Info/Hint": {
"title": "$:/language/ControlPanel/Info/Hint",
"text": "有关此 TiddlyWiki 的信息"
},
"$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt",
"text": "在此输入快捷键"
},
"$:/language/ControlPanel/KeyboardShortcuts/Add/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption",
"text": "添加快捷键"
},
"$:/language/ControlPanel/KeyboardShortcuts/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Caption",
"text": "快捷键"
},
"$:/language/ControlPanel/KeyboardShortcuts/Hint": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Hint",
"text": "管理键盘快捷键分配"
},
"$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption",
"text": "尚无指定快捷键"
},
"$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint",
"text": "删除快捷键"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/All": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/All",
"text": "所有平台"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac",
"text": "仅 Macintosh 平台"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac",
"text": "仅非 Macintosh 平台"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux",
"text": "仅 Linux 平台"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux",
"text": "仅非 Linux 平台"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows",
"text": "仅 Windows 平台"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows",
"text": "仅非 Windows 平台"
},
"$:/language/ControlPanel/LoadedModules/Caption": {
"title": "$:/language/ControlPanel/LoadedModules/Caption",
"text": "已加载的模块"
},
"$:/language/ControlPanel/LoadedModules/Hint": {
"title": "$:/language/ControlPanel/LoadedModules/Hint",
"text": "这些是当前已加载的模块之源码条目。斜体的模块则无源码条目,通常是因为它们是在引导过程中设置。"
},
"$:/language/ControlPanel/Palette/Caption": {
"title": "$:/language/ControlPanel/Palette/Caption",
"text": "调色板"
},
"$:/language/ControlPanel/Palette/Editor/Clone/Caption": {
"title": "$:/language/ControlPanel/Palette/Editor/Clone/Caption",
"text": "复制"
},
"$:/language/ControlPanel/Palette/Editor/Clone/Prompt": {
"title": "$:/language/ControlPanel/Palette/Editor/Clone/Prompt",
"text": "建议您修改前先复制此默认调色板"
},
"$:/language/ControlPanel/Palette/Editor/Delete/Hint": {
"title": "$:/language/ControlPanel/Palette/Editor/Delete/Hint",
"text": "从当前调色板中删除此项"
},
"$:/language/ControlPanel/Palette/Editor/Names/External/Show": {
"title": "$:/language/ControlPanel/Palette/Editor/Names/External/Show",
"text": "显示不属于当前调色板的颜色名称"
},
"$:/language/ControlPanel/Palette/Editor/Prompt/Modified": {
"title": "$:/language/ControlPanel/Palette/Editor/Prompt/Modified",
"text": "此默认调色板已被修改过"
},
"$:/language/ControlPanel/Palette/Editor/Prompt": {
"title": "$:/language/ControlPanel/Palette/Editor/Prompt",
"text": "编辑"
},
"$:/language/ControlPanel/Palette/Editor/Reset/Caption": {
"title": "$:/language/ControlPanel/Palette/Editor/Reset/Caption",
"text": "重置"
},
"$:/language/ControlPanel/Palette/HideEditor/Caption": {
"title": "$:/language/ControlPanel/Palette/HideEditor/Caption",
"text": "隐藏编辑器"
},
"$:/language/ControlPanel/Palette/Prompt": {
"title": "$:/language/ControlPanel/Palette/Prompt",
"text": "当前的调色板:"
},
"$:/language/ControlPanel/Palette/ShowEditor/Caption": {
"title": "$:/language/ControlPanel/Palette/ShowEditor/Caption",
"text": "显示编辑器"
},
"$:/language/ControlPanel/Plugins/Add/Hint": {
"title": "$:/language/ControlPanel/Plugins/Add/Hint",
"text": "从官方插件库安装插件"
},
"$:/language/ControlPanel/Plugins/Add/Caption": {
"title": "$:/language/ControlPanel/Plugins/Add/Caption",
"text": "获取更多插件"
},
"$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint": {
"title": "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint",
"text": "此插件已经安装版本 <$text text=<<installedVersion>>/>"
},
"$:/language/ControlPanel/Plugins/AlsoRequires": {
"title": "$:/language/ControlPanel/Plugins/AlsoRequires",
"text": "还需要:"
},
"$:/language/ControlPanel/Plugins/Caption": {
"title": "$:/language/ControlPanel/Plugins/Caption",
"text": "插件"
},
"$:/language/ControlPanel/Plugins/Disable/Caption": {
"title": "$:/language/ControlPanel/Plugins/Disable/Caption",
"text": "禁用"
},
"$:/language/ControlPanel/Plugins/Disable/Hint": {
"title": "$:/language/ControlPanel/Plugins/Disable/Hint",
"text": "重新加载页面时禁用此插件"
},
"$:/language/ControlPanel/Plugins/Disabled/Status": {
"title": "$:/language/ControlPanel/Plugins/Disabled/Status",
"text": "(已禁用)"
},
"$:/language/ControlPanel/Plugins/Downgrade/Caption": {
"title": "$:/language/ControlPanel/Plugins/Downgrade/Caption",
"text": "降级"
},
"$:/language/ControlPanel/Plugins/Empty/Hint": {
"title": "$:/language/ControlPanel/Plugins/Empty/Hint",
"text": "无"
},
"$:/language/ControlPanel/Plugins/Enable/Caption": {
"title": "$:/language/ControlPanel/Plugins/Enable/Caption",
"text": "启用"
},
"$:/language/ControlPanel/Plugins/Enable/Hint": {
"title": "$:/language/ControlPanel/Plugins/Enable/Hint",
"text": "重新加载页面时启用此插件"
},
"$:/language/ControlPanel/Plugins/Install/Caption": {
"title": "$:/language/ControlPanel/Plugins/Install/Caption",
"text": "安装"
},
"$:/language/ControlPanel/Plugins/Installed/Hint": {
"title": "$:/language/ControlPanel/Plugins/Installed/Hint",
"text": "当前已安装的插件:"
},
"$:/language/ControlPanel/Plugins/Languages/Caption": {
"title": "$:/language/ControlPanel/Plugins/Languages/Caption",
"text": "语言"
},
"$:/language/ControlPanel/Plugins/Languages/Hint": {
"title": "$:/language/ControlPanel/Plugins/Languages/Hint",
"text": "语言包插件"
},
"$:/language/ControlPanel/Plugins/NoInfoFound/Hint": {
"title": "$:/language/ControlPanel/Plugins/NoInfoFound/Hint",
"text": "无 ''\"<$text text=<<currentTab>>/>\"''"
},
"$:/language/ControlPanel/Plugins/NoInformation/Hint": {
"title": "$:/language/ControlPanel/Plugins/NoInformation/Hint",
"text": "未提供信息"
},
"$:/language/ControlPanel/Plugins/NotInstalled/Hint": {
"title": "$:/language/ControlPanel/Plugins/NotInstalled/Hint",
"text": "尚未安装此插件"
},
"$:/language/ControlPanel/Plugins/OpenPluginLibrary": {
"title": "$:/language/ControlPanel/Plugins/OpenPluginLibrary",
"text": "开启插件程式库"
},
"$:/language/ControlPanel/Plugins/ClosePluginLibrary": {
"title": "$:/language/ControlPanel/Plugins/ClosePluginLibrary",
"text": "关闭插件程式库"
},
"$:/language/ControlPanel/Plugins/PluginWillRequireReload": {
"title": "$:/language/ControlPanel/Plugins/PluginWillRequireReload",
"text": "(需要重新加载)"
},
"$:/language/ControlPanel/Plugins/Plugins/Caption": {
"title": "$:/language/ControlPanel/Plugins/Plugins/Caption",
"text": "插件"
},
"$:/language/ControlPanel/Plugins/Plugins/Hint": {
"title": "$:/language/ControlPanel/Plugins/Plugins/Hint",
"text": "插件"
},
"$:/language/ControlPanel/Plugins/Reinstall/Caption": {
"title": "$:/language/ControlPanel/Plugins/Reinstall/Caption",
"text": "重新安装"
},
"$:/language/ControlPanel/Plugins/Themes/Caption": {
"title": "$:/language/ControlPanel/Plugins/Themes/Caption",
"text": "布景主题"
},
"$:/language/ControlPanel/Plugins/Themes/Hint": {
"title": "$:/language/ControlPanel/Plugins/Themes/Hint",
"text": "布景主题插件"
},
"$:/language/ControlPanel/Plugins/Update/Caption": {
"title": "$:/language/ControlPanel/Plugins/Update/Caption",
"text": "更新"
},
"$:/language/ControlPanel/Plugins/Updates/Caption": {
"title": "$:/language/ControlPanel/Plugins/Updates/Caption",
"text": "更新"
},
"$:/language/ControlPanel/Plugins/Updates/Hint": {
"title": "$:/language/ControlPanel/Plugins/Updates/Hint",
"text": "已安装插件的可用更新"
},
"$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption": {
"title": "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption",
"text": "更新 <<update-count>> 个插件"
},
"$:/language/ControlPanel/Plugins/SubPluginPrompt": {
"title": "$:/language/ControlPanel/Plugins/SubPluginPrompt",
"text": "提供 <<count>> 个可用的附加插件"
},
"$:/language/ControlPanel/Parsing/Caption": {
"title": "$:/language/ControlPanel/Parsing/Caption",
"text": "解析"
},
"$:/language/ControlPanel/Parsing/Hint": {
"title": "$:/language/ControlPanel/Parsing/Hint",
"text": "在此您可以全域禁用或启用维基解析规则。要使更改生效,请保存并重新加载您的维基。禁用某些解析规则,会妨碍 <$text text=\"TiddlyWiki\"/> 正常运作。可使用[[安全模式|https://tiddlywiki.com/#SafeMode]]恢复正常操作。"
},
"$:/language/ControlPanel/Parsing/Block/Caption": {
"title": "$:/language/ControlPanel/Parsing/Block/Caption",
"text": "区块解析规则"
},
"$:/language/ControlPanel/Parsing/Inline/Caption": {
"title": "$:/language/ControlPanel/Parsing/Inline/Caption",
"text": "内联解析规则"
},
"$:/language/ControlPanel/Parsing/Pragma/Caption": {
"title": "$:/language/ControlPanel/Parsing/Pragma/Caption",
"text": "编译指示解析规则"
},
"$:/language/ControlPanel/Saving/Caption": {
"title": "$:/language/ControlPanel/Saving/Caption",
"text": "保存"
},
"$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description",
"text": "允许下载保存模块的自动保存"
},
"$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint",
"text": "启用下载保存模块的自动保存"
},
"$:/language/ControlPanel/Saving/DownloadSaver/Caption": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/Caption",
"text": "下载保存模块"
},
"$:/language/ControlPanel/Saving/DownloadSaver/Hint": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/Hint",
"text": "这些设置适用于兼容 HTML5 的下载保存模块"
},
"$:/language/ControlPanel/Saving/General/Caption": {
"title": "$:/language/ControlPanel/Saving/General/Caption",
"text": "通用"
},
"$:/language/ControlPanel/Saving/General/Hint": {
"title": "$:/language/ControlPanel/Saving/General/Hint",
"text": "这些设置适用于所有已载入的保存模块"
},
"$:/language/ControlPanel/Saving/Hint": {
"title": "$:/language/ControlPanel/Saving/Hint",
"text": "用于通过保存模块将整个 TiddlyWiki 保存为单个文件的设置"
},
"$:/language/ControlPanel/Saving/GitService/Branch": {
"title": "$:/language/ControlPanel/Saving/GitService/Branch",
"text": "用于保存的目标分支"
},
"$:/language/ControlPanel/Saving/GitService/CommitMessage": {
"title": "$:/language/ControlPanel/Saving/GitService/CommitMessage",
"text": "由 TiddlyWiki 保存"
},
"$:/language/ControlPanel/Saving/GitService/Description": {
"title": "$:/language/ControlPanel/Saving/GitService/Description",
"text": "这些设置仅用于保存至 <<service-name>>"
},
"$:/language/ControlPanel/Saving/GitService/Filename": {
"title": "$:/language/ControlPanel/Saving/GitService/Filename",
"text": "目标文件的文件名称 (例如,`index.html`)"
},
"$:/language/ControlPanel/Saving/GitService/Path": {
"title": "$:/language/ControlPanel/Saving/GitService/Path",
"text": "目标文件的路径 (例如,`/wiki/`)"
},
"$:/language/ControlPanel/Saving/GitService/Repo": {
"title": "$:/language/ControlPanel/Saving/GitService/Repo",
"text": "目标存储库 (例如,`Jermolene/TiddlyWiki5`)"
},
"$:/language/ControlPanel/Saving/GitService/ServerURL": {
"title": "$:/language/ControlPanel/Saving/GitService/ServerURL",
"text": "服务器 API 网址"
},
"$:/language/ControlPanel/Saving/GitService/UserName": {
"title": "$:/language/ControlPanel/Saving/GitService/UserName",
"text": "用户名称"
},
"$:/language/ControlPanel/Saving/GitService/GitHub/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/GitHub/Caption",
"text": "~GitHub 保存模块"
},
"$:/language/ControlPanel/Saving/GitService/GitHub/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/GitHub/Password",
"text": "密码、OAUTH 令牌,或个人存取令牌 (详见 [[GitHub 帮助页面|https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line]])"
},
"$:/language/ControlPanel/Saving/GitService/GitLab/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/GitLab/Caption",
"text": "~GitLab 保存模块"
},
"$:/language/ControlPanel/Saving/GitService/GitLab/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/GitLab/Password",
"text": "个人存取令牌的 API (详见 [[GitLab 帮助页面|https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html]])"
},
"$:/language/ControlPanel/Saving/GitService/Gitea/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/Gitea/Caption",
"text": "Gitea 保存模块"
},
"$:/language/ControlPanel/Saving/GitService/Gitea/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/Gitea/Password",
"text": "个人存取令牌的 API (通过 Gitea 的 Web 界面:`设定 | 应用程序 | 产生新的令牌`)"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading",
"text": "高级设置"
},
"$:/language/ControlPanel/Saving/TiddlySpot/BackupDir": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir",
"text": "备份文件夹"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Backups": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Backups",
"text": "备份"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Caption": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Caption",
"text": "~TiddlySpot 保存模块"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Description": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Description",
"text": "这些设置只适用于保存到 http://tiddlyspot.com 或兼容的远程服务器时。"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Filename": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Filename",
"text": "上传文件名"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Heading": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Heading",
"text": "~TiddlySpot"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Hint": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Hint",
"text": "//默认之服务器网址 `http://<wikiname>.tiddlyspot.com/store.cgi`,可改为定制之服务器网址,例如 `http://example.com/store.php`。//"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Password": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Password",
"text": "密码"
},
"$:/language/ControlPanel/Saving/TiddlySpot/ServerURL": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL",
"text": "服务器网址"
},
"$:/language/ControlPanel/Saving/TiddlySpot/UploadDir": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir",
"text": "上传文件夹"
},
"$:/language/ControlPanel/Saving/TiddlySpot/UserName": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/UserName",
"text": "用户"
},
"$:/language/ControlPanel/Settings/AutoSave/Caption": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Caption",
"text": "自动保存"
},
"$:/language/ControlPanel/Settings/AutoSave/Disabled/Description": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description",
"text": "不要自动保存变更"
},
"$:/language/ControlPanel/Settings/AutoSave/Enabled/Description": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description",
"text": "自动保存变更"
},
"$:/language/ControlPanel/Settings/AutoSave/Hint": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Hint",
"text": "当使用支持的保存模块时,在编辑期间尝试自动保存变更"
},
"$:/language/ControlPanel/Settings/CamelCase/Caption": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Caption",
"text": "驼峰式维基链接"
},
"$:/language/ControlPanel/Settings/CamelCase/Hint": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Hint",
"text": "您可以全域禁用驼峰式短语自动链接。须保存后重新加载,方才生效。"
},
"$:/language/ControlPanel/Settings/CamelCase/Description": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Description",
"text": "启用自动驼峰式链接"
},
"$:/language/ControlPanel/Settings/Caption": {
"title": "$:/language/ControlPanel/Settings/Caption",
"text": "设置"
},
"$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption": {
"title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption",
"text": "默认侧边栏页签"
},
"$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint": {
"title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint",
"text": "指定默认显示的侧边栏页签"
},
"$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption": {
"title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption",
"text": "更多侧边栏的默认页签"
},
"$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint": {
"title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint",
"text": "指定默认显示的更多侧栏页签"
},
"$:/language/ControlPanel/Settings/EditorToolbar/Caption": {
"title": "$:/language/ControlPanel/Settings/EditorToolbar/Caption",
"text": "编辑器工具栏"
},
"$:/language/ControlPanel/Settings/EditorToolbar/Hint": {
"title": "$:/language/ControlPanel/Settings/EditorToolbar/Hint",
"text": "启用或禁用编辑器工具栏︰"
},
"$:/language/ControlPanel/Settings/EditorToolbar/Description": {
"title": "$:/language/ControlPanel/Settings/EditorToolbar/Description",
"text": "显示编辑器工具栏"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Caption": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Caption",
"text": "条目信息面板模式"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Hint": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Hint",
"text": "控制条目信息面板何时关闭︰"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description",
"text": "条目信息面板自动关闭"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description",
"text": "条目信息面板保持打开状态,直到明确关闭"
},
"$:/language/ControlPanel/Settings/Hint": {
"title": "$:/language/ControlPanel/Settings/Hint",
"text": "这些高级设置让您定制 TiddlyWiki 的行为。"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/Caption": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption",
"text": "条目开启行为"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint",
"text": "从故事河//中//导航"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint",
"text": "从故事河//外//导航"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove",
"text": "开启于当前条目之上"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow",
"text": "开启于当前条目之下"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop",
"text": "开启于故事河的顶端"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom",
"text": "开启于故事河的底部"
},
"$:/language/ControlPanel/Settings/MissingLinks/Caption": {
"title": "$:/language/ControlPanel/Settings/MissingLinks/Caption",
"text": "维基链接"
},
"$:/language/ControlPanel/Settings/MissingLinks/Hint": {
"title": "$:/language/ControlPanel/Settings/MissingLinks/Hint",
"text": "选择是否要链接到尚未存在的条目"
},
"$:/language/ControlPanel/Settings/MissingLinks/Description": {
"title": "$:/language/ControlPanel/Settings/MissingLinks/Description",
"text": "启用链接到佚失条目"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption",
"text": "网址栏导览"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint",
"text": "在浏览器网址栏导览到条目时的行为:"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description",
"text": "不更新网址栏"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description",
"text": "包含目标条目"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description",
"text": "包括目标条目和当前已开启的条目序列"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Caption",
"text": "历史记录导览"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Hint",
"text": "当导览到条目时,更新浏览器历史记录:"
},
"$:/language/ControlPanel/Settings/NavigationHistory/No/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/No/Description",
"text": "不更新历史记录"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description",
"text": "更新历史记录"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption",
"text": "引用链接/固定链接 模式"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint",
"text": "选择 引用链接/固定链接 的处理方式:"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description",
"text": "将 引用链接/固定链接 网址复制到剪贴板"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description",
"text": "以 引用链接/固定链接 更新网址栏"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption",
"text": "性能检测"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint",
"text": "在浏览器的开发人员控制台,显示性能统计数据。需要重新加载才能生效。"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description",
"text": "启用性能检测"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption",
"text": "工具栏按钮样式"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint",
"text": "选择工具栏按钮的样式:"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless",
"text": "无边框"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed",
"text": "方框"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded",
"text": "圆形"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Caption": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Caption",
"text": "工具栏按钮"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Hint": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Hint",
"text": "默认的工具栏按钮外观:"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description",
"text": "包含图标"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description",
"text": "包含文本"
},
"$:/language/ControlPanel/Settings/TitleLinks/Caption": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Caption",
"text": "条目标题"
},
"$:/language/ControlPanel/Settings/TitleLinks/Hint": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Hint",
"text": "可选地显示条目标题为链接"
},
"$:/language/ControlPanel/Settings/TitleLinks/No/Description": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/No/Description",
"text": "不显示条目标题为链接"
},
"$:/language/ControlPanel/Settings/TitleLinks/Yes/Description": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description",
"text": "显示条目标题为链接"
},
"$:/language/ControlPanel/StoryView/Caption": {
"title": "$:/language/ControlPanel/StoryView/Caption",
"text": "查看模式"
},
"$:/language/ControlPanel/StoryView/Prompt": {
"title": "$:/language/ControlPanel/StoryView/Prompt",
"text": "当前的查看模式:"
},
"$:/language/ControlPanel/Stylesheets/Caption": {
"title": "$:/language/ControlPanel/Stylesheets/Caption",
"text": "样式表"
},
"$:/language/ControlPanel/Stylesheets/Expand/Caption": {
"title": "$:/language/ControlPanel/Stylesheets/Expand/Caption",
"text": "全部展开"
},
"$:/language/ControlPanel/Stylesheets/Hint": {
"title": "$:/language/ControlPanel/Stylesheets/Hint",
"text": "这是当前标签为 <<tag \"$:/tags/Stylesheet\">> 的样式表条目呈现的 CSS"
},
"$:/language/ControlPanel/Stylesheets/Restore/Caption": {
"title": "$:/language/ControlPanel/Stylesheets/Restore/Caption",
"text": "复原"
},
"$:/language/ControlPanel/Theme/Caption": {
"title": "$:/language/ControlPanel/Theme/Caption",
"text": "布景主题"
},
"$:/language/ControlPanel/Theme/Prompt": {
"title": "$:/language/ControlPanel/Theme/Prompt",
"text": "当前的布景主题:"
},
"$:/language/ControlPanel/TiddlerFields/Caption": {
"title": "$:/language/ControlPanel/TiddlerFields/Caption",
"text": "条目栏位"
},
"$:/language/ControlPanel/TiddlerFields/Hint": {
"title": "$:/language/ControlPanel/TiddlerFields/Hint",
"text": "这是本维基使用中的所有条目栏位(含系统条目的栏位,但默认条目的栏位除外)。"
},
"$:/language/ControlPanel/Toolbars/Caption": {
"title": "$:/language/ControlPanel/Toolbars/Caption",
"text": "工具栏"
},
"$:/language/ControlPanel/Toolbars/EditToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/EditToolbar/Caption",
"text": "编辑工具栏"
},
"$:/language/ControlPanel/Toolbars/EditToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/EditToolbar/Hint",
"text": "选择将显示哪些按钮于条目的编辑模式工具栏。拖放可改变顺序。"
},
"$:/language/ControlPanel/Toolbars/Hint": {
"title": "$:/language/ControlPanel/Toolbars/Hint",
"text": "选择将显示哪些工具栏按钮"
},
"$:/language/ControlPanel/Toolbars/PageControls/Caption": {
"title": "$:/language/ControlPanel/Toolbars/PageControls/Caption",
"text": "页面工具栏"
},
"$:/language/ControlPanel/Toolbars/PageControls/Hint": {
"title": "$:/language/ControlPanel/Toolbars/PageControls/Hint",
"text": "选择将显示哪些按钮于主页面的工具栏。拖放可改变顺序。"
},
"$:/language/ControlPanel/Toolbars/EditorToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption",
"text": "编辑器工具栏"
},
"$:/language/ControlPanel/Toolbars/EditorToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint",
"text": "选择将显示哪些按钮于编辑器工具栏。请注意,某些按钮只会出现在编辑某一类型的条目时。拖放可改变顺序。"
},
"$:/language/ControlPanel/Toolbars/ViewToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption",
"text": "查看工具栏"
},
"$:/language/ControlPanel/Toolbars/ViewToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint",
"text": "选择将显示哪些按钮于条目的查看模式工具栏。拖放可改变顺序。"
},
"$:/language/ControlPanel/Tools/Download/Full/Caption": {
"title": "$:/language/ControlPanel/Tools/Download/Full/Caption",
"text": "下载完整副本"
},
"$:/core/zh-Hans/readme": {
"title": "$:/core/zh-Hans/readme",
"text": "此插件包含 TiddlyWiki 的核心组件,包括:\n\n* JavaScript 代码模块\n* 图标\n* 创建 TiddlyWiki 的用户介面所需的模板\n* 核心所使用的可当地语系化字串的英国英语 (''en-GB'') 翻译\n"
},
"$:/language/Date/Long/Day/0": {
"title": "$:/language/Date/Long/Day/0",
"text": "周日"
},
"$:/language/Date/Long/Day/1": {
"title": "$:/language/Date/Long/Day/1",
"text": "周一"
},
"$:/language/Date/Long/Day/2": {
"title": "$:/language/Date/Long/Day/2",
"text": "周二"
},
"$:/language/Date/Long/Day/3": {
"title": "$:/language/Date/Long/Day/3",
"text": "周三"
},
"$:/language/Date/Long/Day/4": {
"title": "$:/language/Date/Long/Day/4",
"text": "周四"
},
"$:/language/Date/Long/Day/5": {
"title": "$:/language/Date/Long/Day/5",
"text": "周五"
},
"$:/language/Date/Long/Day/6": {
"title": "$:/language/Date/Long/Day/6",
"text": "周六"
},
"$:/language/Date/Long/Month/1": {
"title": "$:/language/Date/Long/Month/1",
"text": "一月"
},
"$:/language/Date/Long/Month/2": {
"title": "$:/language/Date/Long/Month/2",
"text": "二月"
},
"$:/language/Date/Long/Month/3": {
"title": "$:/language/Date/Long/Month/3",
"text": "三月"
},
"$:/language/Date/Long/Month/4": {
"title": "$:/language/Date/Long/Month/4",
"text": "四月"
},
"$:/language/Date/Long/Month/5": {
"title": "$:/language/Date/Long/Month/5",
"text": "五月"
},
"$:/language/Date/Long/Month/6": {
"title": "$:/language/Date/Long/Month/6",
"text": "六月"
},
"$:/language/Date/Long/Month/7": {
"title": "$:/language/Date/Long/Month/7",
"text": "七月"
},
"$:/language/Date/Long/Month/8": {
"title": "$:/language/Date/Long/Month/8",
"text": "八月"
},
"$:/language/Date/Long/Month/9": {
"title": "$:/language/Date/Long/Month/9",
"text": "九月"
},
"$:/language/Date/Long/Month/10": {
"title": "$:/language/Date/Long/Month/10",
"text": "十月"
},
"$:/language/Date/Long/Month/11": {
"title": "$:/language/Date/Long/Month/11",
"text": "十一月"
},
"$:/language/Date/Long/Month/12": {
"title": "$:/language/Date/Long/Month/12",
"text": "十二月"
},
"$:/language/Date/Period/am": {
"title": "$:/language/Date/Period/am",
"text": "上午"
},
"$:/language/Date/Period/pm": {
"title": "$:/language/Date/Period/pm",
"text": "下午"
},
"$:/language/Date/Short/Day/0": {
"title": "$:/language/Date/Short/Day/0",
"text": "日"
},
"$:/language/Date/Short/Day/1": {
"title": "$:/language/Date/Short/Day/1",
"text": "一"
},
"$:/language/Date/Short/Day/2": {
"title": "$:/language/Date/Short/Day/2",
"text": "二"
},
"$:/language/Date/Short/Day/3": {
"title": "$:/language/Date/Short/Day/3",
"text": "三"
},
"$:/language/Date/Short/Day/4": {
"title": "$:/language/Date/Short/Day/4",
"text": "四"
},
"$:/language/Date/Short/Day/5": {
"title": "$:/language/Date/Short/Day/5",
"text": "五"
},
"$:/language/Date/Short/Day/6": {
"title": "$:/language/Date/Short/Day/6",
"text": "六"
},
"$:/language/Date/Short/Month/1": {
"title": "$:/language/Date/Short/Month/1",
"text": "01月"
},
"$:/language/Date/Short/Month/2": {
"title": "$:/language/Date/Short/Month/2",
"text": "02月"
},
"$:/language/Date/Short/Month/3": {
"title": "$:/language/Date/Short/Month/3",
"text": "03月"
},
"$:/language/Date/Short/Month/4": {
"title": "$:/language/Date/Short/Month/4",
"text": "04月"
},
"$:/language/Date/Short/Month/5": {
"title": "$:/language/Date/Short/Month/5",
"text": "05月"
},
"$:/language/Date/Short/Month/6": {
"title": "$:/language/Date/Short/Month/6",
"text": "06月"
},
"$:/language/Date/Short/Month/7": {
"title": "$:/language/Date/Short/Month/7",
"text": "07月"
},
"$:/language/Date/Short/Month/8": {
"title": "$:/language/Date/Short/Month/8",
"text": "08月"
},
"$:/language/Date/Short/Month/9": {
"title": "$:/language/Date/Short/Month/9",
"text": "09月"
},
"$:/language/Date/Short/Month/10": {
"title": "$:/language/Date/Short/Month/10",
"text": "10月"
},
"$:/language/Date/Short/Month/11": {
"title": "$:/language/Date/Short/Month/11",
"text": "11月"
},
"$:/language/Date/Short/Month/12": {
"title": "$:/language/Date/Short/Month/12",
"text": "12月"
},
"$:/language/RelativeDate/Future/Days": {
"title": "$:/language/RelativeDate/Future/Days",
"text": "<<period>> 天后"
},
"$:/language/RelativeDate/Future/Hours": {
"title": "$:/language/RelativeDate/Future/Hours",
"text": "<<period>> 小时后"
},
"$:/language/RelativeDate/Future/Minutes": {
"title": "$:/language/RelativeDate/Future/Minutes",
"text": "<<period>> 分钟后"
},
"$:/language/RelativeDate/Future/Months": {
"title": "$:/language/RelativeDate/Future/Months",
"text": "<<period>> 个月后"
},
"$:/language/RelativeDate/Future/Second": {
"title": "$:/language/RelativeDate/Future/Second",
"text": "1 秒后"
},
"$:/language/RelativeDate/Future/Seconds": {
"title": "$:/language/RelativeDate/Future/Seconds",
"text": "<<period>> 秒后"
},
"$:/language/RelativeDate/Future/Years": {
"title": "$:/language/RelativeDate/Future/Years",
"text": "<<period>> 年后"
},
"$:/language/RelativeDate/Past/Days": {
"title": "$:/language/RelativeDate/Past/Days",
"text": "<<period>> 天前"
},
"$:/language/RelativeDate/Past/Hours": {
"title": "$:/language/RelativeDate/Past/Hours",
"text": "<<period>> 小时前"
},
"$:/language/RelativeDate/Past/Minutes": {
"title": "$:/language/RelativeDate/Past/Minutes",
"text": "<<period>> 分钟前"
},
"$:/language/RelativeDate/Past/Months": {
"title": "$:/language/RelativeDate/Past/Months",
"text": "<<period>> 个月前"
},
"$:/language/RelativeDate/Past/Second": {
"title": "$:/language/RelativeDate/Past/Second",
"text": "1 秒前"
},
"$:/language/RelativeDate/Past/Seconds": {
"title": "$:/language/RelativeDate/Past/Seconds",
"text": "<<period>> 秒前"
},
"$:/language/RelativeDate/Past/Years": {
"title": "$:/language/RelativeDate/Past/Years",
"text": "<<period>> 年前"
},
"$:/language/Docs/ModuleTypes/allfilteroperator": {
"title": "$:/language/Docs/ModuleTypes/allfilteroperator",
"text": "''all'' 筛选器算子的子算子。"
},
"$:/language/Docs/ModuleTypes/animation": {
"title": "$:/language/Docs/ModuleTypes/animation",
"text": "动画模块包含可用于 RevealWidget 的动画。"
},
"$:/language/Docs/ModuleTypes/authenticator": {
"title": "$:/language/Docs/ModuleTypes/authenticator",
"text": "定义内置 HTTP 服务器对请求的身份验证方式。"
},
"$:/language/Docs/ModuleTypes/bitmapeditoroperation": {
"title": "$:/language/Docs/ModuleTypes/bitmapeditoroperation",
"text": "一个位图编辑器工具栏操作。"
},
"$:/language/Docs/ModuleTypes/command": {
"title": "$:/language/Docs/ModuleTypes/command",
"text": "可于 Node.js 执行的指令。"
},
"$:/language/Docs/ModuleTypes/config": {
"title": "$:/language/Docs/ModuleTypes/config",
"text": "加入 `$tw.config` 的数据。"
},
"$:/language/Docs/ModuleTypes/filteroperator": {
"title": "$:/language/Docs/ModuleTypes/filteroperator",
"text": "个别筛选器算子方法。"
},
"$:/language/Docs/ModuleTypes/global": {
"title": "$:/language/Docs/ModuleTypes/global",
"text": "加入 `$tw` 的全域数据。"
},
"$:/language/Docs/ModuleTypes/info": {
"title": "$:/language/Docs/ModuleTypes/info",
"text": "透过 [[$:/temp/info-plugin]] 伪插件,发布系统信息。"
},
"$:/language/Docs/ModuleTypes/isfilteroperator": {
"title": "$:/language/Docs/ModuleTypes/isfilteroperator",
"text": "''is'' 筛选器算子的运算符。"
},
"$:/language/Docs/ModuleTypes/library": {
"title": "$:/language/Docs/ModuleTypes/library",
"text": "一般用途的 JavaScript 模块的通用模块类型。"
},
"$:/language/Docs/ModuleTypes/macro": {
"title": "$:/language/Docs/ModuleTypes/macro",
"text": "JavaScript ''宏''定义。"
},
"$:/language/Docs/ModuleTypes/parser": {
"title": "$:/language/Docs/ModuleTypes/parser",
"text": "不同内容类型的解析器。"
},
"$:/language/Docs/ModuleTypes/route": {
"title": "$:/language/Docs/ModuleTypes/route",
"text": "定义内置 HTTP 服务器如何处理各个网址格式。"
},
"$:/language/Docs/ModuleTypes/saver": {
"title": "$:/language/Docs/ModuleTypes/saver",
"text": "于浏览器保存文件的不同的保存处理方法。"
},
"$:/language/Docs/ModuleTypes/startup": {
"title": "$:/language/Docs/ModuleTypes/startup",
"text": "启动时期的功能函数。"
},
"$:/language/Docs/ModuleTypes/storyview": {
"title": "$:/language/Docs/ModuleTypes/storyview",
"text": "查看模式用以自订 list 小部件的动画与行为。"
},
"$:/language/Docs/ModuleTypes/texteditoroperation": {
"title": "$:/language/Docs/ModuleTypes/texteditoroperation",
"text": "一个文本编辑器工具栏操作。"
},
"$:/language/Docs/ModuleTypes/tiddlerdeserializer": {
"title": "$:/language/Docs/ModuleTypes/tiddlerdeserializer",
"text": "转换不同内容类型至条目。"
},
"$:/language/Docs/ModuleTypes/tiddlerfield": {
"title": "$:/language/Docs/ModuleTypes/tiddlerfield",
"text": "定义个别条目栏位的行为。"
},
"$:/language/Docs/ModuleTypes/tiddlermethod": {
"title": "$:/language/Docs/ModuleTypes/tiddlermethod",
"text": "添加方法至 `$tw.Tiddler` 原型。"
},
"$:/language/Docs/ModuleTypes/upgrader": {
"title": "$:/language/Docs/ModuleTypes/upgrader",
"text": "于升级/导入过程中,套用升级处理至条目。"
},
"$:/language/Docs/ModuleTypes/utils": {
"title": "$:/language/Docs/ModuleTypes/utils",
"text": "添加方法至 `$tw.utils`。"
},
"$:/language/Docs/ModuleTypes/utils-node": {
"title": "$:/language/Docs/ModuleTypes/utils-node",
"text": "将特定于 Node.js 的方法添加到 '$tw.utils'。"
},
"$:/language/Docs/ModuleTypes/widget": {
"title": "$:/language/Docs/ModuleTypes/widget",
"text": "封装 DOM 渲染和刷新的小部件。"
},
"$:/language/Docs/ModuleTypes/wikimethod": {
"title": "$:/language/Docs/ModuleTypes/wikimethod",
"text": "添加方法至 `$tw.Wiki`。"
},
"$:/language/Docs/ModuleTypes/wikirule": {
"title": "$:/language/Docs/ModuleTypes/wikirule",
"text": "WikiText 解析器的个别的语法规则。"
},
"$:/language/Docs/PaletteColours/alert-background": {
"title": "$:/language/Docs/PaletteColours/alert-background",
"text": "警示背景"
},
"$:/language/Docs/PaletteColours/alert-border": {
"title": "$:/language/Docs/PaletteColours/alert-border",
"text": "警示边框"
},
"$:/language/Docs/PaletteColours/alert-highlight": {
"title": "$:/language/Docs/PaletteColours/alert-highlight",
"text": "警示高亮度"
},
"$:/language/Docs/PaletteColours/alert-muted-foreground": {
"title": "$:/language/Docs/PaletteColours/alert-muted-foreground",
"text": "警示的低调前景"
},
"$:/language/Docs/PaletteColours/background": {
"title": "$:/language/Docs/PaletteColours/background",
"text": "一般背景"
},
"$:/language/Docs/PaletteColours/blockquote-bar": {
"title": "$:/language/Docs/PaletteColours/blockquote-bar",
"text": "引言条"
},
"$:/language/Docs/PaletteColours/button-background": {
"title": "$:/language/Docs/PaletteColours/button-background",
"text": "默认按钮背景"
},
"$:/language/Docs/PaletteColours/button-border": {
"title": "$:/language/Docs/PaletteColours/button-border",
"text": "默认按钮边框"
},
"$:/language/Docs/PaletteColours/button-foreground": {
"title": "$:/language/Docs/PaletteColours/button-foreground",
"text": "默认按钮前景"
},
"$:/language/Docs/PaletteColours/code-background": {
"title": "$:/language/Docs/PaletteColours/code-background",
"text": "代码背景"
},
"$:/language/Docs/PaletteColours/code-border": {
"title": "$:/language/Docs/PaletteColours/code-border",
"text": "代码边框"
},
"$:/language/Docs/PaletteColours/code-foreground": {
"title": "$:/language/Docs/PaletteColours/code-foreground",
"text": "代码前景"
},
"$:/language/Docs/PaletteColours/dirty-indicator": {
"title": "$:/language/Docs/PaletteColours/dirty-indicator",
"text": "未保存变更指示器"
},
"$:/language/Docs/PaletteColours/download-background": {
"title": "$:/language/Docs/PaletteColours/download-background",
"text": "下载按钮背景"
},
"$:/language/Docs/PaletteColours/download-foreground": {
"title": "$:/language/Docs/PaletteColours/download-foreground",
"text": "下载按钮前景"
},
"$:/language/Docs/PaletteColours/dragger-background": {
"title": "$:/language/Docs/PaletteColours/dragger-background",
"text": "拖动区背景"
},
"$:/language/Docs/PaletteColours/dragger-foreground": {
"title": "$:/language/Docs/PaletteColours/dragger-foreground",
"text": "拖动区前景"
},
"$:/language/Docs/PaletteColours/dropdown-background": {
"title": "$:/language/Docs/PaletteColours/dropdown-background",
"text": "下拉背景"
},
"$:/language/Docs/PaletteColours/dropdown-border": {
"title": "$:/language/Docs/PaletteColours/dropdown-border",
"text": "下拉边框"
},
"$:/language/Docs/PaletteColours/dropdown-tab-background-selected": {
"title": "$:/language/Docs/PaletteColours/dropdown-tab-background-selected",
"text": "选定的下拉页签背景"
},
"$:/language/Docs/PaletteColours/dropdown-tab-background": {
"title": "$:/language/Docs/PaletteColours/dropdown-tab-background",
"text": "下拉页签背景"
},
"$:/language/Docs/PaletteColours/dropzone-background": {
"title": "$:/language/Docs/PaletteColours/dropzone-background",
"text": "拖放背景"
},
"$:/language/Docs/PaletteColours/external-link-background-hover": {
"title": "$:/language/Docs/PaletteColours/external-link-background-hover",
"text": "悬停外部链结背景"
},
"$:/language/Docs/PaletteColours/external-link-background-visited": {
"title": "$:/language/Docs/PaletteColours/external-link-background-visited",
"text": "已造访过的外部链结背景"
},
"$:/language/Docs/PaletteColours/external-link-background": {
"title": "$:/language/Docs/PaletteColours/external-link-background",
"text": "外部链结背景"
},
"$:/language/Docs/PaletteColours/external-link-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/external-link-foreground-hover",
"text": "悬停外部链结前景"
},
"$:/language/Docs/PaletteColours/external-link-foreground-visited": {
"title": "$:/language/Docs/PaletteColours/external-link-foreground-visited",
"text": "已造访过的外部链结前景"
},
"$:/language/Docs/PaletteColours/external-link-foreground": {
"title": "$:/language/Docs/PaletteColours/external-link-foreground",
"text": "外部链结前景"
},
"$:/language/Docs/PaletteColours/foreground": {
"title": "$:/language/Docs/PaletteColours/foreground",
"text": "一般前景"
},
"$:/language/Docs/PaletteColours/menubar-background": {
"title": "$:/language/Docs/PaletteColours/menubar-background",
"text": "菜单列背景"
},
"$:/language/Docs/PaletteColours/menubar-foreground": {
"title": "$:/language/Docs/PaletteColours/menubar-foreground",
"text": "菜单列前景"
},
"$:/language/Docs/PaletteColours/message-background": {
"title": "$:/language/Docs/PaletteColours/message-background",
"text": "信息框背景"
},
"$:/language/Docs/PaletteColours/message-border": {
"title": "$:/language/Docs/PaletteColours/message-border",
"text": "信息边框"
},
"$:/language/Docs/PaletteColours/message-foreground": {
"title": "$:/language/Docs/PaletteColours/message-foreground",
"text": "信息框前景"
},
"$:/language/Docs/PaletteColours/modal-backdrop": {
"title": "$:/language/Docs/PaletteColours/modal-backdrop",
"text": "模块背景幕"
},
"$:/language/Docs/PaletteColours/modal-background": {
"title": "$:/language/Docs/PaletteColours/modal-background",
"text": "模块背景"
},
"$:/language/Docs/PaletteColours/modal-border": {
"title": "$:/language/Docs/PaletteColours/modal-border",
"text": "模块边框"
},
"$:/language/Docs/PaletteColours/modal-footer-background": {
"title": "$:/language/Docs/PaletteColours/modal-footer-background",
"text": "模块页脚背景"
},
"$:/language/Docs/PaletteColours/modal-footer-border": {
"title": "$:/language/Docs/PaletteColours/modal-footer-border",
"text": "模块页脚边框"
},
"$:/language/Docs/PaletteColours/modal-header-border": {
"title": "$:/language/Docs/PaletteColours/modal-header-border",
"text": "模块标题边框"
},
"$:/language/Docs/PaletteColours/muted-foreground": {
"title": "$:/language/Docs/PaletteColours/muted-foreground",
"text": "一般低调前景"
},
"$:/language/Docs/PaletteColours/notification-background": {
"title": "$:/language/Docs/PaletteColours/notification-background",
"text": "通知背景"
},
"$:/language/Docs/PaletteColours/notification-border": {
"title": "$:/language/Docs/PaletteColours/notification-border",
"text": "通知边框"
},
"$:/language/Docs/PaletteColours/page-background": {
"title": "$:/language/Docs/PaletteColours/page-background",
"text": "页面背景"
},
"$:/language/Docs/PaletteColours/pre-background": {
"title": "$:/language/Docs/PaletteColours/pre-background",
"text": "pre 背景"
},
"$:/language/Docs/PaletteColours/pre-border": {
"title": "$:/language/Docs/PaletteColours/pre-border",
"text": "pre 边框"
},
"$:/language/Docs/PaletteColours/primary": {
"title": "$:/language/Docs/PaletteColours/primary",
"text": "主颜色"
},
"$:/language/Docs/PaletteColours/select-tag-background": {
"title": "$:/language/Docs/PaletteColours/select-tag-background",
"text": "`<select>` 元素背景"
},
"$:/language/Docs/PaletteColours/select-tag-foreground": {
"title": "$:/language/Docs/PaletteColours/select-tag-foreground",
"text": "`<select>` 元素文本"
},
"$:/language/Docs/PaletteColours/sidebar-button-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-button-foreground",
"text": "侧边栏按钮前景"
},
"$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover",
"text": "悬停侧边栏控制项前景"
},
"$:/language/Docs/PaletteColours/sidebar-controls-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground",
"text": "侧边栏控制项前景"
},
"$:/language/Docs/PaletteColours/sidebar-foreground-shadow": {
"title": "$:/language/Docs/PaletteColours/sidebar-foreground-shadow",
"text": "侧边栏前景阴影"
},
"$:/language/Docs/PaletteColours/sidebar-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-foreground",
"text": "侧边栏前景"
},
"$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover",
"text": "悬停侧边栏低调前景"
},
"$:/language/Docs/PaletteColours/sidebar-muted-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground",
"text": "侧边栏低调前景"
},
"$:/language/Docs/PaletteColours/sidebar-tab-background-selected": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-background-selected",
"text": "侧边栏选定页签背景"
},
"$:/language/Docs/PaletteColours/sidebar-tab-background": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-background",
"text": "侧边栏页签背景"
},
"$:/language/Docs/PaletteColours/sidebar-tab-border-selected": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-border-selected",
"text": "侧边栏选定页签边框"
},
"$:/language/Docs/PaletteColours/sidebar-tab-border": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-border",
"text": "侧边栏页签边框"
},
"$:/language/Docs/PaletteColours/sidebar-tab-divider": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-divider",
"text": "侧边栏页签分隔线"
},
"$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected",
"text": "侧边栏选定页签前景"
},
"$:/language/Docs/PaletteColours/sidebar-tab-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground",
"text": "侧边栏页签前景"
},
"$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover",
"text": "侧边栏悬停条目链结前景"
},
"$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground",
"text": "侧边栏条目链结前景"
},
"$:/language/Docs/PaletteColours/site-title-foreground": {
"title": "$:/language/Docs/PaletteColours/site-title-foreground",
"text": "网站标题前景"
},
"$:/language/Docs/PaletteColours/static-alert-foreground": {
"title": "$:/language/Docs/PaletteColours/static-alert-foreground",
"text": "静态警示前景"
},
"$:/language/Docs/PaletteColours/tab-background-selected": {
"title": "$:/language/Docs/PaletteColours/tab-background-selected",
"text": "选定的页签背景"
},
"$:/language/Docs/PaletteColours/tab-background": {
"title": "$:/language/Docs/PaletteColours/tab-background",
"text": "页签背景"
},
"$:/language/Docs/PaletteColours/tab-border-selected": {
"title": "$:/language/Docs/PaletteColours/tab-border-selected",
"text": "选定的页签边框"
},
"$:/language/Docs/PaletteColours/tab-border": {
"title": "$:/language/Docs/PaletteColours/tab-border",
"text": "页签边框"
},
"$:/language/Docs/PaletteColours/tab-divider": {
"title": "$:/language/Docs/PaletteColours/tab-divider",
"text": "页签分隔线"
},
"$:/language/Docs/PaletteColours/tab-foreground-selected": {
"title": "$:/language/Docs/PaletteColours/tab-foreground-selected",
"text": "选定的页签前景"
},
"$:/language/Docs/PaletteColours/tab-foreground": {
"title": "$:/language/Docs/PaletteColours/tab-foreground",
"text": "页签前景"
},
"$:/language/Docs/PaletteColours/table-border": {
"title": "$:/language/Docs/PaletteColours/table-border",
"text": "表格边框"
},
"$:/language/Docs/PaletteColours/table-footer-background": {
"title": "$:/language/Docs/PaletteColours/table-footer-background",
"text": "表格页脚背景"
},
"$:/language/Docs/PaletteColours/table-header-background": {
"title": "$:/language/Docs/PaletteColours/table-header-background",
"text": "表格标题背景"
},
"$:/language/Docs/PaletteColours/tag-background": {
"title": "$:/language/Docs/PaletteColours/tag-background",
"text": "标签背景"
},
"$:/language/Docs/PaletteColours/tag-foreground": {
"title": "$:/language/Docs/PaletteColours/tag-foreground",
"text": "标签前景"
},
"$:/language/Docs/PaletteColours/tiddler-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-background",
"text": "条目背景"
},
"$:/language/Docs/PaletteColours/tiddler-border": {
"title": "$:/language/Docs/PaletteColours/tiddler-border",
"text": "条目边框"
},
"$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover",
"text": "悬停的条目控制项前景"
},
"$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected": {
"title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected",
"text": "选定的条目控制项前景"
},
"$:/language/Docs/PaletteColours/tiddler-controls-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground",
"text": "条目控制项前景"
},
"$:/language/Docs/PaletteColours/tiddler-editor-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-background",
"text": "条目编辑器背景"
},
"$:/language/Docs/PaletteColours/tiddler-editor-border-image": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-border-image",
"text": "条目编辑器边框图片"
},
"$:/language/Docs/PaletteColours/tiddler-editor-border": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-border",
"text": "条目编辑器边框"
},
"$:/language/Docs/PaletteColours/tiddler-editor-fields-even": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-even",
"text": "条目编辑器中偶数栏位背景"
},
"$:/language/Docs/PaletteColours/tiddler-editor-fields-odd": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd",
"text": "条目编辑器中奇数栏位背景"
},
"$:/language/Docs/PaletteColours/tiddler-info-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-info-background",
"text": "条目信息面板背景"
},
"$:/language/Docs/PaletteColours/tiddler-info-border": {
"title": "$:/language/Docs/PaletteColours/tiddler-info-border",
"text": "条目信息面板边框"
},
"$:/language/Docs/PaletteColours/tiddler-info-tab-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-info-tab-background",
"text": "条目信息面板页签背景"
},
"$:/language/Docs/PaletteColours/tiddler-link-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-link-background",
"text": "条目链结背景"
},
"$:/language/Docs/PaletteColours/tiddler-link-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-link-foreground",
"text": "条目链结前景"
},
"$:/language/Docs/PaletteColours/tiddler-subtitle-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground",
"text": "条目副标题前景"
},
"$:/language/Docs/PaletteColours/tiddler-title-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-title-foreground",
"text": "条目标题前景"
},
"$:/language/Docs/PaletteColours/toolbar-new-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-new-button",
"text": "工具栏 '添加条目' 按钮前景"
},
"$:/language/Docs/PaletteColours/toolbar-options-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-options-button",
"text": "工具栏 '选项' 按钮前景"
},
"$:/language/Docs/PaletteColours/toolbar-save-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-save-button",
"text": "工具栏 '保存' 按钮前景"
},
"$:/language/Docs/PaletteColours/toolbar-info-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-info-button",
"text": "工具栏 '资讯' 按钮前景"
},
"$:/language/Docs/PaletteColours/toolbar-edit-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-edit-button",
"text": "工具栏 '编辑' 按钮前景"
},
"$:/language/Docs/PaletteColours/toolbar-close-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-close-button",
"text": "工具栏 '关闭' 按钮前景"
},
"$:/language/Docs/PaletteColours/toolbar-delete-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-delete-button",
"text": "工具栏 '删除' 按钮前景"
},
"$:/language/Docs/PaletteColours/toolbar-cancel-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-cancel-button",
"text": "工具栏 '取消' 按钮前景"
},
"$:/language/Docs/PaletteColours/toolbar-done-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-done-button",
"text": "工具栏 '完成 按钮前景"
},
"$:/language/Docs/PaletteColours/untagged-background": {
"title": "$:/language/Docs/PaletteColours/untagged-background",
"text": "未设标签的背景"
},
"$:/language/Docs/PaletteColours/very-muted-foreground": {
"title": "$:/language/Docs/PaletteColours/very-muted-foreground",
"text": "非常低调前景"
},
"$:/language/EditTemplate/Body/External/Hint": {
"title": "$:/language/EditTemplate/Body/External/Hint",
"text": "此条目显示保存于主要的 TiddlyWiki 文件之外的内容。你可以编辑其标签和字段,但不能直接编辑内容本身"
},
"$:/language/EditTemplate/Body/Placeholder": {
"title": "$:/language/EditTemplate/Body/Placeholder",
"text": "输入此条目的内容"
},
"$:/language/EditTemplate/Body/Preview/Type/Output": {
"title": "$:/language/EditTemplate/Body/Preview/Type/Output",
"text": "输出"
},
"$:/language/EditTemplate/Field/Remove/Caption": {
"title": "$:/language/EditTemplate/Field/Remove/Caption",
"text": "删除字段"
},
"$:/language/EditTemplate/Field/Remove/Hint": {
"title": "$:/language/EditTemplate/Field/Remove/Hint",
"text": "删除字段"
},
"$:/language/EditTemplate/Field/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Field/Dropdown/Caption",
"text": "字段列表"
},
"$:/language/EditTemplate/Field/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Field/Dropdown/Hint",
"text": "显示字段列表"
},
"$:/language/EditTemplate/Fields/Add/Button": {
"title": "$:/language/EditTemplate/Fields/Add/Button",
"text": "添加"
},
"$:/language/EditTemplate/Fields/Add/Button/Hint": {
"title": "$:/language/EditTemplate/Fields/Add/Button/Hint",
"text": "添加字段至条目"
},
"$:/language/EditTemplate/Fields/Add/Dropdown/System": {
"title": "$:/language/EditTemplate/Fields/Add/Dropdown/System",
"text": "系统字段"
},
"$:/language/EditTemplate/Fields/Add/Dropdown/User": {
"title": "$:/language/EditTemplate/Fields/Add/Dropdown/User",
"text": "使用者字段"
},
"$:/language/EditTemplate/Fields/Add/Name/Placeholder": {
"title": "$:/language/EditTemplate/Fields/Add/Name/Placeholder",
"text": "字段名称"
},
"$:/language/EditTemplate/Fields/Add/Prompt": {
"title": "$:/language/EditTemplate/Fields/Add/Prompt",
"text": "添加字段:"
},
"$:/language/EditTemplate/Fields/Add/Value/Placeholder": {
"title": "$:/language/EditTemplate/Fields/Add/Value/Placeholder",
"text": "字段内容"
},
"$:/language/EditTemplate/Shadow/Warning": {
"title": "$:/language/EditTemplate/Shadow/Warning",
"text": "这是一个默认条目。您做的任何更改将会覆盖来自 <<pluginLink>> 插件的默认版本。"
},
"$:/language/EditTemplate/Shadow/OverriddenWarning": {
"title": "$:/language/EditTemplate/Shadow/OverriddenWarning",
"text": "这是一个修改过的默认条目。删除此条目可以还原为 <<pluginLink>> 插件中的默认版本。"
},
"$:/language/EditTemplate/Tags/Add/Button": {
"title": "$:/language/EditTemplate/Tags/Add/Button",
"text": "添加"
},
"$:/language/EditTemplate/Tags/Add/Button/Hint": {
"title": "$:/language/EditTemplate/Tags/Add/Button/Hint",
"text": "添加标签"
},
"$:/language/EditTemplate/Tags/Add/Placeholder": {
"title": "$:/language/EditTemplate/Tags/Add/Placeholder",
"text": "标签名称"
},
"$:/language/EditTemplate/Tags/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Tags/Dropdown/Caption",
"text": "标签清单"
},
"$:/language/EditTemplate/Tags/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Tags/Dropdown/Hint",
"text": "显示标签清单"
},
"$:/language/EditTemplate/Title/BadCharacterWarning": {
"title": "$:/language/EditTemplate/Title/BadCharacterWarning",
"text": "请注意,避免在条目名称中使用这些字符:<<bad-chars>>"
},
"$:/language/EditTemplate/Title/Exists/Prompt": {
"title": "$:/language/EditTemplate/Title/Exists/Prompt",
"text": "目标条目已经存在"
},
"$:/language/EditTemplate/Title/Relink/Prompt": {
"title": "$:/language/EditTemplate/Title/Relink/Prompt",
"text": "将在其他条目的 //tags// 和 //list// 字段中的 ''<$text text=<<fromTitle>>/>'' 改为 ''<$text text=<<toTitle>>/>''"
},
"$:/language/EditTemplate/Title/References/Prompt": {
"title": "$:/language/EditTemplate/Title/References/Prompt",
"text": "下列对此条目的引用,不会自动更新:"
},
"$:/language/EditTemplate/Type/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Type/Dropdown/Caption",
"text": "内容类型清单"
},
"$:/language/EditTemplate/Type/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Type/Dropdown/Hint",
"text": "显示内容类型清单"
},
"$:/language/EditTemplate/Type/Delete/Caption": {
"title": "$:/language/EditTemplate/Type/Delete/Caption",
"text": "删除内容类型"
},
"$:/language/EditTemplate/Type/Delete/Hint": {
"title": "$:/language/EditTemplate/Type/Delete/Hint",
"text": "删除内容类型"
},
"$:/language/EditTemplate/Type/Placeholder": {
"title": "$:/language/EditTemplate/Type/Placeholder",
"text": "内容类型"
},
"$:/language/EditTemplate/Type/Prompt": {
"title": "$:/language/EditTemplate/Type/Prompt",
"text": "类型:"
},
"$:/language/Exporters/StaticRiver": {
"title": "$:/language/Exporters/StaticRiver",
"text": "静态 HTML"
},
"$:/language/Exporters/JsonFile": {
"title": "$:/language/Exporters/JsonFile",
"text": "JSON 文件"
},
"$:/language/Exporters/CsvFile": {
"title": "$:/language/Exporters/CsvFile",
"text": "CSV 文件"
},
"$:/language/Exporters/TidFile": {
"title": "$:/language/Exporters/TidFile",
"text": "\".tid\" 文件"
},
"$:/language/Docs/Fields/_canonical_uri": {
"title": "$:/language/Docs/Fields/_canonical_uri",
"text": "外部图像条目的完整的 URI"
},
"$:/language/Docs/Fields/bag": {
"title": "$:/language/Docs/Fields/bag",
"text": "条目的来源集的名称"
},
"$:/language/Docs/Fields/caption": {
"title": "$:/language/Docs/Fields/caption",
"text": "显示于页签或按钮上的标题文字"
},
"$:/language/Docs/Fields/color": {
"title": "$:/language/Docs/Fields/color",
"text": "条目的 CSS 颜色值"
},
"$:/language/Docs/Fields/component": {
"title": "$:/language/Docs/Fields/component",
"text": "负责[[警示条目|AlertMechanism]]的组件名称"
},
"$:/language/Docs/Fields/created": {
"title": "$:/language/Docs/Fields/created",
"text": "条目的创建日期"
},
"$:/language/Docs/Fields/creator": {
"title": "$:/language/Docs/Fields/creator",
"text": "条目的创建者"
},
"$:/language/Docs/Fields/current-tiddler": {
"title": "$:/language/Docs/Fields/current-tiddler",
"text": "用于缓存[[浏览历史列表|HistoryMechanism]]的最上层条目"
},
"$:/language/Docs/Fields/dependents": {
"title": "$:/language/Docs/Fields/dependents",
"text": "插件的相依插件列表"
},
"$:/language/Docs/Fields/description": {
"title": "$:/language/Docs/Fields/description",
"text": "插件的说明、描述"
},
"$:/language/Docs/Fields/draft.of": {
"title": "$:/language/Docs/Fields/draft.of",
"text": "草稿条目,包含条目的标题、标签、栏位 ..."
},
"$:/language/Docs/Fields/draft.title": {
"title": "$:/language/Docs/Fields/draft.title",
"text": "草稿条目的标题"
},
"$:/language/Docs/Fields/footer": {
"title": "$:/language/Docs/Fields/footer",
"text": "wizard 的注脚"
},
"$:/language/Docs/Fields/icon": {
"title": "$:/language/Docs/Fields/icon",
"text": "条目的标题含有与条目关联的图标"
},
"$:/language/Docs/Fields/library": {
"title": "$:/language/Docs/Fields/library",
"text": "若设为 \"yes\",表示条目应该被保存为一个 JavaScript 程序库"
},
"$:/language/Docs/Fields/list": {
"title": "$:/language/Docs/Fields/list",
"text": "条目的列表,指定一些条目的标题清单"
},
"$:/language/Docs/Fields/list-before": {
"title": "$:/language/Docs/Fields/list-before",
"text": "前条目名称将被添加到条目排序清单中的设置条目名称之前,或若此栏位存在但是空的,则被添加于清单的前端"
},
"$:/language/Docs/Fields/list-after": {
"title": "$:/language/Docs/Fields/list-after",
"text": "当前条目名称将被添加到条目排序清单的设置条目名称之后,或若此栏位存在但是空的,则被添加于清单的尾端"
},
"$:/language/Docs/Fields/modified": {
"title": "$:/language/Docs/Fields/modified",
"text": "条目的最近修改日期与时间"
},
"$:/language/Docs/Fields/modifier": {
"title": "$:/language/Docs/Fields/modifier",
"text": "条目的最近修改者"
},
"$:/language/Docs/Fields/name": {
"title": "$:/language/Docs/Fields/name",
"text": "具可读性的插件条目的名称"
},
"$:/language/Docs/Fields/plugin-priority": {
"title": "$:/language/Docs/Fields/plugin-priority",
"text": "插件条目的优先级数值"
},
"$:/language/Docs/Fields/plugin-type": {
"title": "$:/language/Docs/Fields/plugin-type",
"text": "插件条目的类型"
},
"$:/language/Docs/Fields/released": {
"title": "$:/language/Docs/Fields/released",
"text": "TiddlyWiki 的发布日期"
},
"$:/language/Docs/Fields/revision": {
"title": "$:/language/Docs/Fields/revision",
"text": "条目存放于服务器中的修订版本"
},
"$:/language/Docs/Fields/source": {
"title": "$:/language/Docs/Fields/source",
"text": "条目的网址"
},
"$:/language/Docs/Fields/subtitle": {
"title": "$:/language/Docs/Fields/subtitle",
"text": "一个 wizard 的副标题"
},
"$:/language/Docs/Fields/tags": {
"title": "$:/language/Docs/Fields/tags",
"text": "条目的标签清单"
},
"$:/language/Docs/Fields/text": {
"title": "$:/language/Docs/Fields/text",
"text": "条目的内文"
},
"$:/language/Docs/Fields/throttle.refresh": {
"title": "$:/language/Docs/Fields/throttle.refresh",
"text": "如果存在,则限制此条目的刷新"
},
"$:/language/Docs/Fields/title": {
"title": "$:/language/Docs/Fields/title",
"text": "条目的唯一名称"
},
"$:/language/Docs/Fields/toc-link": {
"title": "$:/language/Docs/Fields/toc-link",
"text": "若设为: \"no\",则抑制目录树中的条目链接。"
},
"$:/language/Docs/Fields/type": {
"title": "$:/language/Docs/Fields/type",
"text": "条目的内容类型"
},
"$:/language/Docs/Fields/version": {
"title": "$:/language/Docs/Fields/version",
"text": "插件的版本信息"
},
"$:/language/Docs/Fields/_is_skinny": {
"title": "$:/language/Docs/Fields/_is_skinny",
"text": "如果存在,则表示必须从服务器加载条目的文本字段"
},
"$:/language/Filters/AllTiddlers": {
"title": "$:/language/Filters/AllTiddlers",
"text": "所有条目,不含系统条目"
},
"$:/language/Filters/RecentSystemTiddlers": {
"title": "$:/language/Filters/RecentSystemTiddlers",
"text": "最近修改的条目,包含系统条目"
},
"$:/language/Filters/RecentTiddlers": {
"title": "$:/language/Filters/RecentTiddlers",
"text": "最近修改的条目"
},
"$:/language/Filters/AllTags": {
"title": "$:/language/Filters/AllTags",
"text": "所有标签,不含系统标签"
},
"$:/language/Filters/Missing": {
"title": "$:/language/Filters/Missing",
"text": "缺失条目"
},
"$:/language/Filters/Drafts": {
"title": "$:/language/Filters/Drafts",
"text": "草稿条目"
},
"$:/language/Filters/Orphans": {
"title": "$:/language/Filters/Orphans",
"text": "孤立条目"
},
"$:/language/Filters/SystemTiddlers": {
"title": "$:/language/Filters/SystemTiddlers",
"text": "系统条目"
},
"$:/language/Filters/ShadowTiddlers": {
"title": "$:/language/Filters/ShadowTiddlers",
"text": "默认条目"
},
"$:/language/Filters/OverriddenShadowTiddlers": {
"title": "$:/language/Filters/OverriddenShadowTiddlers",
"text": "被覆写的默认条目"
},
"$:/language/Filters/SessionTiddlers": {
"title": "$:/language/Filters/SessionTiddlers",
"text": "自维基加载后修改的条目"
},
"$:/language/Filters/SystemTags": {
"title": "$:/language/Filters/SystemTags",
"text": "系统标签"
},
"$:/language/Filters/StoryList": {
"title": "$:/language/Filters/StoryList",
"text": "故事河中的条目,不含 ~$:/AdvancedSearch"
},
"$:/language/Filters/TypedTiddlers": {
"title": "$:/language/Filters/TypedTiddlers",
"text": "非维基文字条目"
},
"GettingStarted": {
"title": "GettingStarted",
"text": "\\define lingo-base() $:/language/ControlPanel/Basics/\n欢迎使用 ~TiddlyWiki 及参与 ~TiddlyWiki 社群\n\n开始将重要资讯存放于 ~TiddlyWiki 之前,确认您可以可靠地保存变更是很重要的。详细资讯请参阅 https://tiddlywiki.com/#GettingStarted\n\n!! 设置此 ~TiddlyWiki\n\n<div class=\"tc-control-panel\">\n\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n</div>\n\n请参阅[[控制台|$:/ControlPanel]]查看更多选项。"
},
"$:/language/Help/build": {
"title": "$:/language/Help/build",
"description": "自动执行已配置的命令",
"text": "生成指定的生成目标为当前 wiki。若未指定任何生成目标,则生成所有可用的目标。\n\n```\n--build <target> [<target> ...]\n```\n\n生成目标在 wiki 文件夹的 `tiddlywiki.info` 文件中定义。\n"
},
"$:/language/Help/clearpassword": {
"title": "$:/language/Help/clearpassword",
"description": "清除用于后续加密的密码",
"text": "清除用于后续加密的密码\n\n```\n--clearpassword\n```\n"
},
"$:/language/Help/default": {
"title": "$:/language/Help/default",
"text": "\\define commandTitle()\n$:/language/Help/$(command)$\n\\end\n```\n用法: tiddlywiki [<wikifolder>] [--<command> [<args>...]...]\n```\n\n可用的命令:\n\n<ul>\n<$list filter=\"[commands[]sort[title]]\" variable=\"command\">\n<li><$link to=<<commandTitle>>><$macrocall $name=\"command\" $type=\"text/plain\" $output=\"text/plain\"/></$link>: <$transclude tiddler=<<commandTitle>> field=\"description\"/></li>\n</$list>\n</ul>\n\n取得关于某个命令的详细帮助:\n\n```\ntiddlywiki --help <command>\n```\n"
},
"$:/language/Help/deletetiddlers": {
"title": "$:/language/Help/deletetiddlers",
"description": "删除一组条目",
"text": "<<.from-version \"5.1.20\">> 删除由筛选器标识的一组条目。\n\n```\n--deletetiddlers <filter>\n```\n"
},
"$:/language/Help/editions": {
"title": "$:/language/Help/editions",
"description": "列出可用的 TiddlyWiki 版本",
"text": "列出可用版本的名称和描述。您可以用 `--init` 命令创建一个指定版本的新维基。\n\n```\n--editions\n```\n"
},
"$:/language/Help/fetch": {
"title": "$:/language/Help/fetch",
"description": "通过网址从维基撷取条目",
"text": "通过 HTTP/HTTPS 撷取一个或多个文件,并导入匹配筛选器的条目,可选的转换传入的名称。\n\n```\n--fetch file <url> <import-filter> <transform-filter>\n--fetch files <url-filter> <import-filter> <transform-filter>\n--fetch raw-file <url> <transform-filter>\n--fetch raw-files <url-filter> <transform-filter>\n```\n\n \"file\" 和 \"files\" 选项撷取指定的文件,并尝试导入其中的条目(与将文件拖动到浏览器视窗中的处理相同)。 \"raw-file\" 和 \"raw-files\" 变选项撷取指定的文件,并将原始文件资料存储于条目,而不套用导入逻辑。\n\n使用 \"file\" and \"raw-file\" 选项为仅撷取单个文件,且第一个参数为要读取文件的网址。\n\n使用 \"files\" 和 \"raw-files\" 选项为撷取多个文件,且第一个参数是一个产生要读取文件的网址清单的筛选器。例如,给定标签为 \"remote-server\" 的一组具有字段 \"url\" 的条目,筛选器 `[tag[remote-server]get[url]]` 将取回所有可用的网址。\n\n对于 \"file\" 和 \"files\" 选项,the `<import-filter>` 参数指定一个筛选器,用于确定要导入哪些条目。如果未提供,则默认为 `[all[tiddlers]]`。\n\n对于所有选项,`<transform-filter>` 参数指定一个可选的筛选器,用于转换导入条目的名称。例如,`[addprefix[$:/myimports/]]` 会将前缀 `$:/myimports/` 加至每个名称。\n\n于 `--fetch` 之前使用 `--verbose` 命令,将在导入期间输出进度信息。\n\n请注意,TiddlyWiki 不会撷取一个已经加载插件的旧版本。\n\n以下示例从 https://tiddlywiki.com 取回所有非系统条目,并将其保存到一个 JSON 文件:\n\n```\ntiddlywiki --verbose --fetch file \"https://tiddlywiki.com/\" \"[!is[system]]\" \"\" --rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[!is[system]]\"\n```\n\n以下范例从 https://tiddlywiki.com 取回 \"favicon\" 文件,并将其保存在名为 \"output.ico\" 的文件中。请注意,在 \"--fetch\" 命令中引用的中间条目 \"Icon Tiddler\",因为它被用作转换筛选器来替换预设的名称,而 \"--savetiddler\" 命令没有引号,因为它是直接用作标题。\n\n```\ntiddlywiki --verbose --fetch raw-file \"https://tiddlywiki.com/favicon.ico\" \"[[Icon Tiddler]]\" --savetiddler \"Icon Tiddler\" output.ico\n```\n"
},
"$:/language/Help/help": {
"title": "$:/language/Help/help",
"description": "显示 TiddlyWiki 命令的说明",
"text": "显示命令的帮助文本:\n\n```\n--help [<command>]\n```\n\n若省略命令名称,则显示可用命令的清单。\n"
},
"$:/language/Help/import": {
"title": "$:/language/Help/import",
"description": "从文件导入条目",
"text": "从 TiddlyWiki 文件 (`.html`)、`.tiddler`、`.tid`、`.json` 或其他本机文件导入条目。必须明确指定解串器,而不像 load 命令,从文件扩展名推断解串器。\n\n```\n--import <filepath> <deserializer> [<title>] [<encoding>]\n```\n\n核心的解串器包括:\n\n* application/javascript\n* application/json\n* application/x-tiddler\n* application/x-tiddler-html-div\n* application/x-tiddlers\n* text/html\n* text/plain\n\n导入的条目名称,默认为文件名。\n\n编码默认为 \"utf8\",但用于导入二进制文件可以是 \"base64\"。\n\n请注意,TiddlyWiki 不会导入旧版本的已加载插件。\n"
},
"$:/language/Help/init": {
"title": "$:/language/Help/init",
"description": "初始化一个新的 wiki 文件夹",
"text": "初始化一个空的 [[WikiFolder|WikiFolders]] 的指定版本的副本。\n\n```\n--init <edition> [<edition> ...]\n```\n\n例如:\n\n```\ntiddlywiki ./MyWikiFolder --init empty\n```\n\n注意:\n\n* 若有需要,将创建 wiki 文件夹目录\n* 其中 \"edition\" 默认为 ''empty''\n* 若 wiki 文件夹不是空的,则初始化命令将失败\n* 初始化命令会删除 'tiddlywiki.info' 文件内所有 'includeWikis' 的定义。\n* 当指定多个版本时,这些版本于初始化后,将覆写早期版本共用的所有文件 (故此最终的 `tiddlywiki.info` 文件将是从最近的版本复制而得)\n* `--editions` 传回所有可用版本的清单。\n"
},
"$:/language/Help/listen": {
"title": "$:/language/Help/listen",
"description": "为 TiddlyWiki 提供一个 HTTP 服务器接口",
"text": "通过 HTTP 提供一个维基服务。\n\nlisten 命令使用[[命名的命令参数|NamedCommandParameters]]:\n\n```\n--listen [<name>=<value>]...\n```\n\n所有参数都是可选的, 具有安全的默认值, 可以按任意顺序指定。认可的参数有:\n\n* ''host'' - 可选的主机名称, (默认为 \"127.0.0.1\" 或名为 \"localhost\")\n* ''path-prefix'' - 可选的路径前缀\n* ''port'' - 侦听的埠号;非数值会被解译为一个系统环境变数,从其中提取埠号 (默认为 \"8080\")\n* ''credentials'' - 凭证 CSV 文件的路径名(相对于维基文件夹)\n* ''anon-username'' - 匿名用户的编辑署名\n* ''username'' - 可选的基本验证用户名称\n* ''password'' - 可选的基本验证密码\n* ''authenticated-user-header'' - 可选的标头名称,用于受信任身份验证\n* ''readers'' - 允许读取此维基的主体,以逗号分隔的清单\n* ''writers'' - 允许写入此维基的主体,以逗号分隔的清单\n* ''csrf-disable'' - 设置为 \"yes\" 以禁用 CSRF 检查 (默认为 \"no\")\n* ''root-tiddler'' - 服务的基本条目 (默认为 \"$:/core/save/all\")\n* ''root-render-type'' - 呈现的基本条目的内容类型 (默认为 \"text/plain\")\n* ''root-serve-type'' - 服务的基本条目的内容类型 (默认为 \"text/html\")\n* ''tls-cert'' - TLS 证书文件的路径名(相对于维基文件夹)\n* ''tls-key'' - TLS 密钥文件的路径名(相对于维基文件夹)\n* ''debug-level'' - 可选的调试级别;设置为 \"debug\" 来查看请求的详细信息;(默认为 \"none\")\n* ''gzip'' - 设为 \"yes\" 以启用某些 http 端点的 gzip 压缩 (默认为 \"no\")\n\n有关向整个本地网络开启实例的信息,以及可能的安全问题,请参阅 TiddlyWiki.com 的 WebServer 条目。\n"
},
"$:/language/Help/load": {
"title": "$:/language/Help/load",
"description": "从文件中加载条目",
"text": "从 TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` 或其他本机文件加载条目。应用的处理程序取决于导入文件的扩展名。如果您需要明确指定解串器和编码,请改用 `import` 命令。\n\n```\n--load <filepath> [noerror]\n--load <dirpath> [noerror]\n```\n\n默认情况下, 如果未找到条目,load 命令会引发错误。通过提供可选的 \"noerror\" 参数可以抑制该错误。\n\n从已加密的 TiddlyWiki 文件中加载条目,须使用 PasswordCommand 指定密码,例如:\n\n```\ntiddlywiki ./MyWiki --password pa55w0rd --load my_encrypted_wiki.html\n```\n\n请注意 TiddlyWiki 将不加载旧版本的已挂载的插件。\n"
},
"$:/language/Help/makelibrary": {
"title": "$:/language/Help/makelibrary",
"description": "构建升级处理所需的程式库插件",
"text": "为升级处理构建 `$:/UpgradeLibrary` 条目。\n\n升级程式库被格式化为一个插件类型为 `library` 的一般插件条目。它包含 TiddlyWiki5 存储库中所有可用的插件、布景主题和语言包的副本。\n\n此命令仅供内部使用;它只是与使用者构建一个自订的升级程序相关。\n\n```\n--makelibrary <title>\n```\n\n标题参数默认为 `$:/UpgradeLibrary`。\n"
},
"$:/language/Help/notfound": {
"title": "$:/language/Help/notfound",
"text": "无此帮助项目"
},
"$:/language/Help/output": {
"title": "$:/language/Help/output",
"description": "设置后续命令的基准输出文件夹",
"text": "设置后续命令的基准输出文件夹,默认为该版本文件夹的 `output` 子文件夹。\n\n```\n--output <pathname>\n```\n\n若指定的路径是相对路径,则它是被解析相对于当前的工作文件夹。例如:`--output .` 將輸出文件夹設置為當前工作文件夹。"
},
"$:/language/Help/password": {
"title": "$:/language/Help/password",
"description": "设置用以加密的密码",
"text": "设置用以加密的密码\n\n```\n--password <password>\n```\n\n''请注意'':这不是用于提供 TiddlyWiki 具有密码保护功能。相反地,请看 [[ServerCommand]] 的密码选项说明。\n"
},
"$:/language/Help/render": {
"title": "$:/language/Help/render",
"description": "呈现个别条目到文件",
"text": "呈现由筛选器标识的个别条目,并将结果保存到指定的文件。\n\n可选择性地指定范本条目名称。在此情况下,不是直接呈现每个条目,而是使用设为正在呈现的条目名称的 \"currentTiddler\" 变量,来呈现范本条目。\n\n也可以选择性地指定附加变量的名称和值。\n\n```\n--render <tiddler-filter> [<filename-filter>] [<render-type>] [<template>] [<name>] [<value>]\n```\n\n* ''tiddler-filter'': 标识要呈现的条目的筛选器\n* ''filename-filter'': 可选的筛选器,转换条目名称至路径名。如果省略,默认为 `[is[tiddler]addsuffix[.html]]`,其使用未改变的条目名称为文件名\n* ''template'': 可选的范本,用于呈现每个条目\n* ''render-type'': 可选的呈现类型:`text/html` (默认值) 会传回完整的 HTML 文本,而 `text/plain` 只会传回文本内容 (即其忽略 HTML 标记与其他不可印出的数据)\n* ''name'': 可选的变量名称\n* ''value'': 可选的变量值\n\n默认情况下,文件名被解析为相对于发行版文件夹的 `output` 子文件夹。`--output` 命令可用于将输出指到一个不同的文件夹。\n\n附注:\n\n* 输出目录不清除任何现有的文件\n* 文件名的路径中,任何不存在的文件夹,将自动创建。\n* 当正呈现的条目名称中带有空格,请注意同时使用命令行接口所要求的引号,与 TiddlyWiki 的双重方括号;`--render \"[[Motovun Jack.jpg]]\"`\n* 所选的项目被设置为当前正在呈现的条目名称,以此评估文件名筛选器,允条目名称用作基础计算的文件名。例如,`[encodeuricomponent[]addprefix[static/]]` 为每个条目名称套用 URI 编码,然后增加首码 `static/`\n* `--render` 命令是已弃用的 `--rendertiddler` 和 `--rendertiddlers` 的一个更灵活的替代命令。\n\n例子:\n\n* `--render \"[!is[system]]\" \"[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]\"` -- 呈现所有非系统条目为 \"tiddlers\" 子文件夹中的文件,文件名为 URL 编码的条目名称和扩展名 HTML\n"
},
"$:/language/Help/rendertiddler": {
"title": "$:/language/Help/rendertiddler",
"description": "呈现个别条目为指定的内容类型",
"text": "(请注意:`--rendertiddler` 命令已被弃用,而支持新的、更灵活的 `--render` 命令)\n\n呈现个别条目为指定的[[内容类型|ContentType]],默认为 `text/html` 且保存为指定的文件名。\n\n还可以指定一个模板,在这种情况下,\"currentTiddler\" 变量设为正在呈现的条目 (第一个参数值) 与模板条目合并呈现。\n\n也能可选地指定附加变量的名称与其值。\n\n```\n--rendertiddler <title> <filename> [<type>] [<template>]\n```\n\n默认情况下,文件名被解析为相对于版本文件夹的 `output` 子文件夹。 `--output` 命令可以用于将输出指定到一个不同的文件夹。\n\n自动创建在文件名称的路径中任何缺少的文件夹。\n\n例如,以下命令通过使用核心模板 `$:/core/templates/exporters/JsonFile`,将所有匹配筛选器 `[tag[done]]` 的条目保存到名为 `output.json` 的 JSON 文件。\n\n```\n--rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[tag[done]]\"\n```"
},
"$:/language/Help/rendertiddlers": {
"title": "$:/language/Help/rendertiddlers",
"description": "呈现符合筛选条件的条目为指定的内容类型",
"text": "(请注意:`--rendertiddlers` 命令已被弃用,而支持新的、更灵活的 `--render` 命令)\n\n呈现符合筛选条的条目为指定的[[内容类型|ContentType]] (默认为 `text/html`) 与扩展名 (默认为 `.html`).\n\n```\n--rendertiddlers <filter> <template> <pathname> [<type>] [<extension>] [\"noclean\"]\n```\n\n例如:\n\n```\n--rendertiddlers [!is[system]] $:/core/templates/static.tiddler.html ./static text/plain\n```\n\n默认情况下,路径名被解析为相对于版本文件夹的 `output` 子文件夹。 `--output` 命令可以用于将输出指定到一个不同的文件。\n\n在目标文件夹中的任何文件都会被删除,除非指定 ''noclean'' 旗标。若缺少目标文件夹,则以递归方式创建。"
},
"$:/language/Help/save": {
"title": "$:/language/Help/save",
"description": "将个别原始条目保存到文件",
"text": "将筛选器标识的个别条目,以原始文本或二进位格式,保存到指定的文件。\n\n```\n--save <tiddler-filter> <filename-filter>\n```\n\n* ''tiddler-filter'': 标识要保存的条目的筛选器\n* ''filename-filter'': 可选的筛选器,转换条目名称至路径名。如果省略,默认为 `[is[tiddler]]`,其使用未改变的条目名称为文件名\n\n附注:\n\n* 输出文件夹不清除任何现有的文件\n* 文件名的路径中,任何不存在的文件夹,将自动创建。\n* 当正保存的条目的名称中带有空格,请注意同时使用命令行接口所要求的引号,与 TiddlyWiki 的双重方括号;`--save \"[[Motovun Jack.jpg]]\"`\n* 所选的项目被设置为当前正在保存的条目名称,以此评估文件名筛选器,允条目名称用作基础计算的文件名。例如,`[encodeuricomponent[]addprefix[static/]]` 为每个条目名称套用 URI 编码,然后增加首码 `static/`\n* `--save` 命令是已被弃用的 `--savetiddler` 和 `--savetiddlers` 的一个更灵活的替代命令。\n\n例子:\n\n* `--save \"[!is[system]is[image]]\" \"[encodeuricomponent[]addprefix[tiddlers/]]\"` -- 保存所有非系统的图像条目为 \"tiddlers\" 子文件夹中的文件,文件名为 URL 编码的条目名称"
},
"$:/language/Help/savetiddler": {
"title": "$:/language/Help/savetiddler",
"description": "将条目的原始内容保存到一个文件",
"text": "(请注意:`--savetiddler` 命令已被弃用,而支持新的、更灵活的 `--save` 命令)\n\n保存个别条目的原始文本或二进制格式到指定的文件名。\n\n```\n--savetiddler <title> <filename>\n```\n\n默认情况下,文件名被解析为相对于版本文件夹的 `output` 子文件夹。 `--output` 命令可以用于将输出指定到一个不同的文件。\n\n自动创建在文件名称的路径中任何缺少的文件夹。\n"
},
"$:/language/Help/savetiddlers": {
"title": "$:/language/Help/savetiddlers",
"description": "将一群条目的原始内容保存到一个文件夹",
"text": "(请注意:`--savetiddlers` 命令已被弃用,而支持新的、更灵活的 `--save` 命令)\n\n保存一群条目的原始文字或二进制格式到指定的文件夹。\n\n```\n--savetiddlers <filter> <pathname> [noclean]\n```\n\n默认情况下,路径名被解析为相对于版本文件夹的 `output` 子文件夹。 `--output` 命令可以用于将输出指定到一个不同的文件夹。\n\n保存指定的文件之前,会先清除输出目录的现有文件。可藉由指定 ''noclean'' 旗标,禁用该删除动作。\n\n自动创建在路径中任何缺少的文件夹。\n"
},
"$:/language/Help/savewikifolder": {
"title": "$:/language/Help/savewikifolder",
"description": "将维基保存到一个新的维基文件夹",
"text": "<<.from-version \"5.1.20\">> 将当前维基保存为一个维基文件夹,包含条目、插件和配置:\n\n```\n--savewikifolder <wikifolderpath> [<filter>]\n```\n\n* 目标维基文件夹必须为空或不存在\n* 筛选器指定应包括哪些条目。其为可选,默认为 `[all[tiddlers]]`\n* 官方插件库中的插件,将替换为 `tiddlywiki.info` 文件中引用到的插件\n* 自订插件将解压缩到自己的文件夹中\n\n常见的用法是将一个 TiddlyWiki HTML 文件转换成维基文件夹:\n\n```\ntiddlywiki --load ./mywiki.html --savewikifolder ./mywikifolder\n```\n"
},
"$:/language/Help/server": {
"title": "$:/language/Help/server",
"description": "提供一个 HTTP 服务器介面到 TiddlyWiki (已弃用,支持新的 listen 命令)",
"text": "在服务器中内置 TiddlyWiki5 是非常简单。虽与 TiddlyWeb 兼容,但不支持许多健全互联网面向的使用方式所需的功能。\n\n提供呈现一个指定条目,也可将个别条目编码成 JSON,且支持基本的 HTTP 操作 `GET`、`PUT` 及 `DELETE`.\n\n```\n--server <port> <root-tiddler> <root-render-type> <root-serve-type> <username> <password> <host> <path-prefix> <debug-level>\n```\n\n参数说明:\n\n* ''port'' - 要侦听的埠号;非数值会被解译为一个系统环境变数,从其中提取埠号 (默认为 \"8080\")\n* ''root-tiddler'' - 服务的基本条目 (默认为 \"$:/core/save/all\")\n* ''root-render-type'' - 呈现的基本条目的内容类型 (默认为 \"text/plain\")\n* ''root-serve-type'' - 服务的基本条目的内容类型 (默认为 \"text/html\")\n* ''username'' - 默认的编辑者署名\n* ''password'' - 可选的基本验证密码\n* ''host'' - 可选的主机名称, (默认为 \"127.0.0.1\" 或名为 \"localhost\")\n* ''path-prefix'' - 可选的路径前缀\n* ''debug-level'' - 可选的调试级别;设置为 \"debug\" 来查看请求的详细信息;(默认为 \"none\")\n\n若指定密码参数,浏览器将提示使用者输入用户名与密码。注意,密码系以明码方式传递,应只在受信任的网络或 HTTPS 上使用。\n\n例如:\n\n```\n--server 8080 $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n\n若您需要设置主机名称或路径前缀,而不要求输入密码,则可以指定空字符串的使用者名和密码。\n\n```\n--server 8080 $:/core/save/all text/plain text/html \"\" \"\" 192.168.0.245\n```\n\n使用这样的位址,会将您的系统暴露给本地网络。有关向整个本地网络开启实例的信息,以及可能的安全问题,请参阅 TiddlyWiki.com 的 WebServer 条目。\n\n同时执行多个 TiddlyWiki 服务,须分别指定不同的埠号。使用环境变数,有助于将埠号传递给 Node.js 进程。本示例引用一个名为 \"MY_PORT_NUMBER\" 的环境变数:\n\n```\n--server MY_PORT_NUMBER $:/core/save/all text/plain text/html MyUserName passw0rd\n```"
},
"$:/language/Help/setfield": {
"title": "$:/language/Help/setfield",
"description": "准备用于外部条目",
"text": "//请注意此命令是试验性的,且可能会更改或在最终定稿前被替换//\n\n设置一群条目的指定栏位到 wikifying 范本条目的结果,其中的 `currentTiddler` 变数设置为各该条目。\n\n```\n--setfield <filter> <fieldname> <templatetitle> <rendertype>\n```\n\n参数说明:\n\n* ''filter'' - 受影响的辨识条目的筛选条件\n* ''fieldname'' - 要修改的栏位(默认为 \"text\")\n* ''templatetitle'' - 该条目 wikify 到指定栏位。若为空白或丢失,则删除指定的栏位\n* ''rendertype'' - 要呈现的文本类型(默认为 \"text/plain\"; \"text/html\" 可以用于包含 HTML 标记))\n"
},
"$:/language/Help/unpackplugin": {
"title": "$:/language/Help/unpackplugin",
"description": "从插件解开附属的条目",
"text": "提取插件的附属条目,将其建立为一般条目:\n\n```\n--unpackplugin <title>\n```\n"
},
"$:/language/Help/verbose": {
"title": "$:/language/Help/verbose",
"description": "触发详细的输出模式",
"text": "触发显示详细的命令执行过程,可用于调试\n\n```\n--verbose\n```\n"
},
"$:/language/Help/version": {
"title": "$:/language/Help/version",
"description": "显示 TiddlyWiki 的版本编号",
"text": "显示 TiddlyWiki 的版本编号。\n\n```\n--version\n```\n"
},
"$:/language/Import/Imported/Hint": {
"title": "$:/language/Import/Imported/Hint",
"text": "下列条目已被导入:"
},
"$:/language/Import/Listing/Cancel/Caption": {
"title": "$:/language/Import/Listing/Cancel/Caption",
"text": "取消"
},
"$:/language/Import/Listing/Hint": {
"title": "$:/language/Import/Listing/Hint",
"text": "这些条目已备妥导入:"
},
"$:/language/Import/Listing/Import/Caption": {
"title": "$:/language/Import/Listing/Import/Caption",
"text": "导入"
},
"$:/language/Import/Listing/Select/Caption": {
"title": "$:/language/Import/Listing/Select/Caption",
"text": "选择"
},
"$:/language/Import/Listing/Status/Caption": {
"title": "$:/language/Import/Listing/Status/Caption",
"text": "状态"
},
"$:/language/Import/Listing/Title/Caption": {
"title": "$:/language/Import/Listing/Title/Caption",
"text": "条目"
},
"$:/language/Import/Listing/Preview": {
"title": "$:/language/Import/Listing/Preview",
"text": "预览:"
},
"$:/language/Import/Listing/Preview/Text": {
"title": "$:/language/Import/Listing/Preview/Text",
"text": "文本"
},
"$:/language/Import/Listing/Preview/TextRaw": {
"title": "$:/language/Import/Listing/Preview/TextRaw",
"text": "文本 (原始)"
},
"$:/language/Import/Listing/Preview/Fields": {
"title": "$:/language/Import/Listing/Preview/Fields",
"text": "字段"
},
"$:/language/Import/Listing/Preview/Diff": {
"title": "$:/language/Import/Listing/Preview/Diff",
"text": "差异"
},
"$:/language/Import/Listing/Preview/DiffFields": {
"title": "$:/language/Import/Listing/Preview/DiffFields",
"text": "差异 (字段)"
},
"$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible": {
"title": "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible",
"text": "封锁的不兼容或过时插件"
},
"$:/language/Import/Upgrader/Plugins/Suppressed/Version": {
"title": "$:/language/Import/Upgrader/Plugins/Suppressed/Version",
"text": "封锁的插件 (由于传入的 <<incoming>> 较现有版本 <<existing>> 旧)"
},
"$:/language/Import/Upgrader/Plugins/Upgraded": {
"title": "$:/language/Import/Upgrader/Plugins/Upgraded",
"text": "升级插件,从 <<incoming>> 到 <<upgraded>>"
},
"$:/language/Import/Upgrader/State/Suppressed": {
"title": "$:/language/Import/Upgrader/State/Suppressed",
"text": "封锁的暂存状态条目"
},
"$:/language/Import/Upgrader/System/Suppressed": {
"title": "$:/language/Import/Upgrader/System/Suppressed",
"text": "封锁的系统条目"
},
"$:/language/Import/Upgrader/System/Warning": {
"title": "$:/language/Import/Upgrader/System/Warning",
"text": "核心模块条目"
},
"$:/language/Import/Upgrader/System/Alert": {
"title": "$:/language/Import/Upgrader/System/Alert",
"text": "您即将导入一个条目会覆盖一个核心模块条目。不建议这样做,因为可能会使系统不稳定。"
},
"$:/language/Import/Upgrader/ThemeTweaks/Created": {
"title": "$:/language/Import/Upgrader/ThemeTweaks/Created",
"text": "从 <$text text=<<from>>/> 迁移布景主题"
},
"$:/language/AboveStory/ClassicPlugin/Warning": {
"title": "$:/language/AboveStory/ClassicPlugin/Warning",
"text": "您貌似要加载为 ~TiddlyWiki 经典版设计的插件。请注意,[[这些插件无法运行于 TiddlyWiki 5.x.x 版|https://tiddlywiki.com/#TiddlyWikiClassic]]。检测到 ~TiddlyWiki 经典版插件:"
},
"$:/language/BinaryWarning/Prompt": {
"title": "$:/language/BinaryWarning/Prompt",
"text": "此条目包含二进制数据"
},
"$:/language/ClassicWarning/Hint": {
"title": "$:/language/ClassicWarning/Hint",
"text": "此条目以经典版 TiddlyWiki 标记格式撰写,不完全兼容新版 TiddlyWiki 的格式,详细信息请参阅:https://tiddlywiki.com/static/Upgrading。"
},
"$:/language/ClassicWarning/Upgrade/Caption": {
"title": "$:/language/ClassicWarning/Upgrade/Caption",
"text": "升级"
},
"$:/language/CloseAll/Button": {
"title": "$:/language/CloseAll/Button",
"text": "全部关闭"
},
"$:/language/ColourPicker/Recent": {
"title": "$:/language/ColourPicker/Recent",
"text": "最近︰"
},
"$:/language/ConfirmCancelTiddler": {
"title": "$:/language/ConfirmCancelTiddler",
"text": "您确定要放弃对条目 \"<$text text=<<title>>/>\" 的更改?"
},
"$:/language/ConfirmDeleteTiddler": {
"title": "$:/language/ConfirmDeleteTiddler",
"text": "您确定要删除条目 \"<$text text=<<title>>/>\"?"
},
"$:/language/ConfirmOverwriteTiddler": {
"title": "$:/language/ConfirmOverwriteTiddler",
"text": "您确定要复写条目 \"<$text text=<<title>>/>\"?"
},
"$:/language/ConfirmEditShadowTiddler": {
"title": "$:/language/ConfirmEditShadowTiddler",
"text": "您即将要编辑默认条目,任何更改将会复盖默认的系统,使未来的升级不寻常。您确定要编辑 \"<$text text=<<title>>/>\"?"
},
"$:/language/Count": {
"title": "$:/language/Count",
"text": "计数"
},
"$:/language/DefaultNewTiddlerTitle": {
"title": "$:/language/DefaultNewTiddlerTitle",
"text": "新条目"
},
"$:/language/Diffs/CountMessage": {
"title": "$:/language/Diffs/CountMessage",
"text": "<<diff-count>> 个差异"
},
"$:/language/DropMessage": {
"title": "$:/language/DropMessage",
"text": "拖放到此处 (或按 ESC 键取消)"
},
"$:/language/Encryption/Cancel": {
"title": "$:/language/Encryption/Cancel",
"text": "取消"
},
"$:/language/Encryption/ConfirmClearPassword": {
"title": "$:/language/Encryption/ConfirmClearPassword",
"text": "您要清除密码吗?当保存此维基时,这将删除已套用的加密"
},
"$:/language/Encryption/Username": {
"title": "$:/language/Encryption/Username",
"text": "用户名称"
},
"$:/language/Encryption/Password": {
"title": "$:/language/Encryption/Password",
"text": "密码"
},
"$:/language/Encryption/PromptSetPassword": {
"title": "$:/language/Encryption/PromptSetPassword",
"text": "为此 TiddlyWiki 设置一个新密码"
},
"$:/language/Encryption/RepeatPassword": {
"title": "$:/language/Encryption/RepeatPassword",
"text": "重复输入密码"
},
"$:/language/Encryption/PasswordNoMatch": {
"title": "$:/language/Encryption/PasswordNoMatch",
"text": "密码不匹配"
},
"$:/language/Encryption/SetPassword": {
"title": "$:/language/Encryption/SetPassword",
"text": "设定密码"
},
"$:/language/Error/Caption": {
"title": "$:/language/Error/Caption",
"text": "错误"
},
"$:/language/Error/EditConflict": {
"title": "$:/language/Error/EditConflict",
"text": "服务器上的文件已更改"
},
"$:/language/Error/Filter": {
"title": "$:/language/Error/Filter",
"text": "筛选器错误"
},
"$:/language/Error/FilterSyntax": {
"title": "$:/language/Error/FilterSyntax",
"text": "筛选器运算式中的语法错误"
},
"$:/language/Error/IsFilterOperator": {
"title": "$:/language/Error/IsFilterOperator",
"text": "筛选器错误︰'is' 筛选器运算符的未知操作数"
},
"$:/language/Error/LoadingPluginLibrary": {
"title": "$:/language/Error/LoadingPluginLibrary",
"text": "加载插件程式库时,发生错误"
},
"$:/language/Error/NetworkErrorAlert": {
"title": "$:/language/Error/NetworkErrorAlert",
"text": "`<h2>''网络错误''</h2>与服务器的连缐似乎已中断。这可能表示您的网络连缐有问题。请尝试恢复网路连缐才能继续。<br><br>''恢复连缐时,所有未保存的更改,将自动同步''。`"
},
"$:/language/Error/RecursiveTransclusion": {
"title": "$:/language/Error/RecursiveTransclusion",
"text": "于 transclude 小部件中的递回嵌入错误"
},
"$:/language/Error/RetrievingSkinny": {
"title": "$:/language/Error/RetrievingSkinny",
"text": "简要条目清单撷取错误"
},
"$:/language/Error/SavingToTWEdit": {
"title": "$:/language/Error/SavingToTWEdit",
"text": "保存到 TWEdit 时,发生错误"
},
"$:/language/Error/WhileSaving": {
"title": "$:/language/Error/WhileSaving",
"text": "保存时,发生错误"
},
"$:/language/Error/XMLHttpRequest": {
"title": "$:/language/Error/XMLHttpRequest",
"text": "XMLHttpRequest 错误代码"
},
"$:/language/InternalJavaScriptError/Title": {
"title": "$:/language/InternalJavaScriptError/Title",
"text": "内部的 JavaScript 错误"
},
"$:/language/InternalJavaScriptError/Hint": {
"title": "$:/language/InternalJavaScriptError/Hint",
"text": "喔,真是令人尴尬。建议刷新您的浏览器,重新启动 TiddlyWiki"
},
"$:/language/InvalidFieldName": {
"title": "$:/language/InvalidFieldName",
"text": "栏位名称 \"<$text text=<<fieldName>>/>\" 包含无效字符,栏位名称只能包含小写字母、数字、底线 (`_`)、 连字号 (`-`) 和小数点 (`.`)"
},
"$:/language/LazyLoadingWarning": {
"title": "$:/language/LazyLoadingWarning",
"text": "<p>正在从 ''<$text text={{!!_canonical_uri}}/>'' 加载外部内容 ...</p><p>如果此信息未消失,可能是条目内容类型与外部内容的类型不匹配,或是您可能正在使用的浏览器,不支援单文件式维基的外部内容。请参阅 https://tiddlywiki.com/#ExternalText</p>"
},
"$:/language/LoginToTiddlySpace": {
"title": "$:/language/LoginToTiddlySpace",
"text": "登录 TiddlySpace"
},
"$:/language/Manager/Controls/FilterByTag/None": {
"title": "$:/language/Manager/Controls/FilterByTag/None",
"text": "(无)"
},
"$:/language/Manager/Controls/FilterByTag/Prompt": {
"title": "$:/language/Manager/Controls/FilterByTag/Prompt",
"text": "依标签筛选︰"
},
"$:/language/Manager/Controls/Order/Prompt": {
"title": "$:/language/Manager/Controls/Order/Prompt",
"text": "反向顺序"
},
"$:/language/Manager/Controls/Search/Placeholder": {
"title": "$:/language/Manager/Controls/Search/Placeholder",
"text": "搜寻"
},
"$:/language/Manager/Controls/Search/Prompt": {
"title": "$:/language/Manager/Controls/Search/Prompt",
"text": "搜寻︰"
},
"$:/language/Manager/Controls/Show/Option/Tags": {
"title": "$:/language/Manager/Controls/Show/Option/Tags",
"text": "标签"
},
"$:/language/Manager/Controls/Show/Option/Tiddlers": {
"title": "$:/language/Manager/Controls/Show/Option/Tiddlers",
"text": "条目"
},
"$:/language/Manager/Controls/Show/Prompt": {
"title": "$:/language/Manager/Controls/Show/Prompt",
"text": "显示︰"
},
"$:/language/Manager/Controls/Sort/Prompt": {
"title": "$:/language/Manager/Controls/Sort/Prompt",
"text": "排序︰"
},
"$:/language/Manager/Item/Colour": {
"title": "$:/language/Manager/Item/Colour",
"text": "颜色"
},
"$:/language/Manager/Item/Fields": {
"title": "$:/language/Manager/Item/Fields",
"text": "栏位"
},
"$:/language/Manager/Item/Icon/None": {
"title": "$:/language/Manager/Item/Icon/None",
"text": "(无)"
},
"$:/language/Manager/Item/Icon": {
"title": "$:/language/Manager/Item/Icon",
"text": "图标"
},
"$:/language/Manager/Item/RawText": {
"title": "$:/language/Manager/Item/RawText",
"text": "原始文字"
},
"$:/language/Manager/Item/Tags": {
"title": "$:/language/Manager/Item/Tags",
"text": "标签"
},
"$:/language/Manager/Item/Tools": {
"title": "$:/language/Manager/Item/Tools",
"text": "工具"
},
"$:/language/Manager/Item/WikifiedText": {
"title": "$:/language/Manager/Item/WikifiedText",
"text": "Wikified 文字"
},
"$:/language/MissingTiddler/Hint": {
"title": "$:/language/MissingTiddler/Hint",
"text": "佚失条目 \"<$text text=<<currentTiddler>>/>\" - 点击 {{||$:/core/ui/Buttons/edit}} 可创建此条目"
},
"$:/language/No": {
"title": "$:/language/No",
"text": "否"
},
"$:/language/OfficialPluginLibrary": {
"title": "$:/language/OfficialPluginLibrary",
"text": "~TiddlyWiki 官方插件程式库"
},
"$:/language/OfficialPluginLibrary/Hint": {
"title": "$:/language/OfficialPluginLibrary/Hint",
"text": "此为在 tiddlywiki.com 的 ~TiddlyWiki 官方插件程式库。由核心团队维护的插件、主题和语言包。"
},
"$:/language/PluginReloadWarning": {
"title": "$:/language/PluginReloadWarning",
"text": "请保存 {{$:/core/ui/Buttons/save-wiki}} 并刷新页面 {{$:/core/ui/Buttons/refresh}} ,使 ~JavaScript 插件的更改生效"
},
"$:/language/RecentChanges/DateFormat": {
"title": "$:/language/RecentChanges/DateFormat",
"text": "YYYY年0MM月0DD日"
},
"$:/language/SystemTiddler/Tooltip": {
"title": "$:/language/SystemTiddler/Tooltip",
"text": "此为系统条目"
},
"$:/language/SystemTiddlers/Include/Prompt": {
"title": "$:/language/SystemTiddlers/Include/Prompt",
"text": "包括系统条目"
},
"$:/language/TagManager/Colour/Heading": {
"title": "$:/language/TagManager/Colour/Heading",
"text": "颜色"
},
"$:/language/TagManager/Count/Heading": {
"title": "$:/language/TagManager/Count/Heading",
"text": "计数"
},
"$:/language/TagManager/Icon/Heading": {
"title": "$:/language/TagManager/Icon/Heading",
"text": "图标"
},
"$:/language/TagManager/Icons/None": {
"title": "$:/language/TagManager/Icons/None",
"text": "无"
},
"$:/language/TagManager/Info/Heading": {
"title": "$:/language/TagManager/Info/Heading",
"text": "信息"
},
"$:/language/TagManager/Tag/Heading": {
"title": "$:/language/TagManager/Tag/Heading",
"text": "标签"
},
"$:/language/Tiddler/DateFormat": {
"title": "$:/language/Tiddler/DateFormat",
"text": "YYYY年0MM月0DD日 0hh:0mm"
},
"$:/language/UnsavedChangesWarning": {
"title": "$:/language/UnsavedChangesWarning",
"text": "在此 TiddlyWiki 您有尚未保存的变更"
},
"$:/language/Yes": {
"title": "$:/language/Yes",
"text": "是"
},
"$:/language/Modals/Download": {
"title": "$:/language/Modals/Download",
"type": "text/vnd.tiddlywiki",
"subtitle": "Download changes",
"footer": "<$button message=\"tm-close-tiddler\">关闭</$button>",
"help": "https://tiddlywiki.com/",
"text": "您的浏览器只支援手动保存。\n\n要保存更动的维基,右键点击下方的下载链结,选择\"下载文件\"或\"保存文件\",然后选择文件夹或文件名。\n\n//您可以藉由按一下 Ctrl 键(Windows)或 options/ alt 键(Mac OS X)中的链接,稍微加速操作。您不会被提示文件夹或文件名,您的浏览器可能无法辨认它的文件名 -- 在做其他任何事之前,您可能需要重新命名扩展名为 `.html` 的文件。//\n\n在智能型手机上,不允许下载文件,但您可以标记链结,然后从一台可以正常保存维基的台式机的维基同步你的书签。"
},
"$:/language/Modals/SaveInstructions": {
"title": "$:/language/Modals/SaveInstructions",
"type": "text/vnd.tiddlywiki",
"subtitle": "Save your work",
"footer": "<$button message=\"tm-close-tiddler\">关闭</$button>",
"help": "https://tiddlywiki.com/static/SavingChanges.html",
"text": "您对此 wiki 的变更需被保存为 ~TiddlyWiki HTML 文件。\n\n!!! 桌面版浏览器\n\n# 从''文件''菜单点选 ''另存为''\n# 选定文件名及保存位置\n#* 某些浏览器依然需要明确指定文件格式为 ''Webpage, HTML only'' 或类似的。\n# 关闭此页签\n\n!!! 智能手机版浏览器\n\n# 为此页建立书签\n#* 若您已设置 iCloud 或 Google 同步,该书签将自动与之前开启及保存于您电脑的书签同步。\n# 关闭此页签\n\n//若您再次于 Mobile Safari 开启该书签,将会再看到此信息。若要继续使用该文件,只需点击下列 ''关闭'' 按钮//\n"
},
"$:/config/NewJournal/Title": {
"title": "$:/config/NewJournal/Title",
"text": "YYYY年0MM月0DD日"
},
"$:/config/NewJournal/Text": {
"title": "$:/config/NewJournal/Text",
"text": ""
},
"$:/config/NewJournal/Tags": {
"title": "$:/config/NewJournal/Tags",
"tags": "日志"
},
"$:/language/Notifications/Save/Done": {
"title": "$:/language/Notifications/Save/Done",
"text": "已保存 wiki"
},
"$:/language/Notifications/Save/Starting": {
"title": "$:/language/Notifications/Save/Starting",
"text": "开始保存 wiki"
},
"$:/language/Notifications/CopiedToClipboard/Succeeded": {
"title": "$:/language/Notifications/CopiedToClipboard/Succeeded",
"text": "已复制到剪贴板!"
},
"$:/language/Notifications/CopiedToClipboard/Failed": {
"title": "$:/language/Notifications/CopiedToClipboard/Failed",
"text": "无法复制到剪贴板!"
},
"$:/language/Search/DefaultResults/Caption": {
"title": "$:/language/Search/DefaultResults/Caption",
"text": "列表"
},
"$:/language/Search/Filter/Caption": {
"title": "$:/language/Search/Filter/Caption",
"text": "筛选"
},
"$:/language/Search/Filter/Hint": {
"title": "$:/language/Search/Filter/Hint",
"text": "以[[筛选表达式|https://tiddlywiki.com/static/Filters.html]]查找"
},
"$:/language/Search/Filter/Matches": {
"title": "$:/language/Search/Filter/Matches",
"text": "//<small><<resultCount>> 个条目符合条件</small>//"
},
"$:/language/Search/Matches": {
"title": "$:/language/Search/Matches",
"text": "//<small><<resultCount>> 个条目符合条件</small>//"
},
"$:/language/Search/Matches/All": {
"title": "$:/language/Search/Matches/All",
"text": "所有匹配:"
},
"$:/language/Search/Matches/Title": {
"title": "$:/language/Search/Matches/Title",
"text": "条目名称匹配:"
},
"$:/language/Search/Search": {
"title": "$:/language/Search/Search",
"text": "查找"
},
"$:/language/Search/Search/TooShort": {
"title": "$:/language/Search/Search/TooShort",
"text": "查找文本太短"
},
"$:/language/Search/Shadows/Caption": {
"title": "$:/language/Search/Shadows/Caption",
"text": "默认"
},
"$:/language/Search/Shadows/Hint": {
"title": "$:/language/Search/Shadows/Hint",
"text": "查找默认条目"
},
"$:/language/Search/Shadows/Matches": {
"title": "$:/language/Search/Shadows/Matches",
"text": "//<small><<resultCount>> 个条目符合条件</small>//"
},
"$:/language/Search/Standard/Caption": {
"title": "$:/language/Search/Standard/Caption",
"text": "标准"
},
"$:/language/Search/Standard/Hint": {
"title": "$:/language/Search/Standard/Hint",
"text": "查找一般条目"
},
"$:/language/Search/Standard/Matches": {
"title": "$:/language/Search/Standard/Matches",
"text": "//<small><<resultCount>> 个条目符合条件</small>//"
},
"$:/language/Search/System/Caption": {
"title": "$:/language/Search/System/Caption",
"text": "系统"
},
"$:/language/Search/System/Hint": {
"title": "$:/language/Search/System/Hint",
"text": "查找系统条目"
},
"$:/language/Search/System/Matches": {
"title": "$:/language/Search/System/Matches",
"text": "//<small><<resultCount>> 个条目符合条件</small>//"
},
"$:/language/SideBar/All/Caption": {
"title": "$:/language/SideBar/All/Caption",
"text": "全部"
},
"$:/language/SideBar/Contents/Caption": {
"title": "$:/language/SideBar/Contents/Caption",
"text": "目录"
},
"$:/language/SideBar/Drafts/Caption": {
"title": "$:/language/SideBar/Drafts/Caption",
"text": "草稿"
},
"$:/language/SideBar/Explorer/Caption": {
"title": "$:/language/SideBar/Explorer/Caption",
"text": "探索"
},
"$:/language/SideBar/Missing/Caption": {
"title": "$:/language/SideBar/Missing/Caption",
"text": "缺失"
},
"$:/language/SideBar/More/Caption": {
"title": "$:/language/SideBar/More/Caption",
"text": "更多"
},
"$:/language/SideBar/Open/Caption": {
"title": "$:/language/SideBar/Open/Caption",
"text": "开启"
},
"$:/language/SideBar/Orphans/Caption": {
"title": "$:/language/SideBar/Orphans/Caption",
"text": "孤立"
},
"$:/language/SideBar/Recent/Caption": {
"title": "$:/language/SideBar/Recent/Caption",
"text": "最近"
},
"$:/language/SideBar/Shadows/Caption": {
"title": "$:/language/SideBar/Shadows/Caption",
"text": "默认"
},
"$:/language/SideBar/System/Caption": {
"title": "$:/language/SideBar/System/Caption",
"text": "系统"
},
"$:/language/SideBar/Tags/Caption": {
"title": "$:/language/SideBar/Tags/Caption",
"text": "标签"
},
"$:/language/SideBar/Tags/Untagged/Caption": {
"title": "$:/language/SideBar/Tags/Untagged/Caption",
"text": "未设标签"
},
"$:/language/SideBar/Tools/Caption": {
"title": "$:/language/SideBar/Tools/Caption",
"text": "工具"
},
"$:/language/SideBar/Types/Caption": {
"title": "$:/language/SideBar/Types/Caption",
"text": "类型"
},
"$:/SiteSubtitle": {
"title": "$:/SiteSubtitle",
"text": "一个非线性的网页式笔记"
},
"$:/SiteTitle": {
"title": "$:/SiteTitle",
"text": "我的 ~TiddlyWiki"
},
"$:/language/Snippets/ListByTag": {
"title": "$:/language/Snippets/ListByTag",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "依标签筛选的条目列表",
"text": "<<list-links \"[tag[task]sort[title]]\">>\n"
},
"$:/language/Snippets/MacroDefinition": {
"title": "$:/language/Snippets/MacroDefinition",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "宏的定义",
"text": "\\define macroName(param1:\"默认值\",param2)\n宏的内容\n\\end\n"
},
"$:/language/Snippets/Table4x3": {
"title": "$:/language/Snippets/Table4x3",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "4 x 3 的表格",
"text": "|! | !一 | !二 | !三 | !四 |\n|! 1| | | | |\n|! 2| | | | |\n|! 3 | | | | |\n"
},
"$:/language/Snippets/TableOfContents": {
"title": "$:/language/Snippets/TableOfContents",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "目录",
"text": "<div class=\"tc-table-of-contents\">\n\n<<toc-selective-expandable 'TableOfContents'>>\n\n</div>"
},
"$:/language/ThemeTweaks/ThemeTweaks": {
"title": "$:/language/ThemeTweaks/ThemeTweaks",
"text": "主题调整"
},
"$:/language/ThemeTweaks/ThemeTweaks/Hint": {
"title": "$:/language/ThemeTweaks/ThemeTweaks/Hint",
"text": "您可以调整 ''Vanilla'' 布景主题的某些样貌。"
},
"$:/language/ThemeTweaks/Options": {
"title": "$:/language/ThemeTweaks/Options",
"text": "选项"
},
"$:/language/ThemeTweaks/Options/SidebarLayout": {
"title": "$:/language/ThemeTweaks/Options/SidebarLayout",
"text": "侧边栏布局"
},
"$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid": {
"title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid",
"text": "固定故事,浮动侧边栏"
},
"$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed": {
"title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed",
"text": "浮动故事,固定侧边栏"
},
"$:/language/ThemeTweaks/Options/StickyTitles": {
"title": "$:/language/ThemeTweaks/Options/StickyTitles",
"text": "置顶标题"
},
"$:/language/ThemeTweaks/Options/StickyTitles/Hint": {
"title": "$:/language/ThemeTweaks/Options/StickyTitles/Hint",
"text": "使条目名称\"黏着\"于浏览器窗口的顶端"
},
"$:/language/ThemeTweaks/Options/CodeWrapping": {
"title": "$:/language/ThemeTweaks/Options/CodeWrapping",
"text": "在代码区块中折行"
},
"$:/language/ThemeTweaks/Settings": {
"title": "$:/language/ThemeTweaks/Settings",
"text": "设置"
},
"$:/language/ThemeTweaks/Settings/FontFamily": {
"title": "$:/language/ThemeTweaks/Settings/FontFamily",
"text": "字型"
},
"$:/language/ThemeTweaks/Settings/CodeFontFamily": {
"title": "$:/language/ThemeTweaks/Settings/CodeFontFamily",
"text": "代码字型"
},
"$:/language/ThemeTweaks/Settings/EditorFontFamily": {
"title": "$:/language/ThemeTweaks/Settings/EditorFontFamily",
"text": "编辑器字型"
},
"$:/language/ThemeTweaks/Settings/BackgroundImage": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImage",
"text": "页面背景图像"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageAttachment": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment",
"text": "页面背景图像附属"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll",
"text": "随条目卷动"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed",
"text": "固定于窗口"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize",
"text": "页面背景图像大小"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto",
"text": "自动"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover",
"text": "覆盖"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain",
"text": "包含"
},
"$:/language/ThemeTweaks/Metrics": {
"title": "$:/language/ThemeTweaks/Metrics",
"text": "大小"
},
"$:/language/ThemeTweaks/Metrics/FontSize": {
"title": "$:/language/ThemeTweaks/Metrics/FontSize",
"text": "字体大小"
},
"$:/language/ThemeTweaks/Metrics/LineHeight": {
"title": "$:/language/ThemeTweaks/Metrics/LineHeight",
"text": "行高"
},
"$:/language/ThemeTweaks/Metrics/BodyFontSize": {
"title": "$:/language/ThemeTweaks/Metrics/BodyFontSize",
"text": "条目本文的字体大小"
},
"$:/language/ThemeTweaks/Metrics/BodyLineHeight": {
"title": "$:/language/ThemeTweaks/Metrics/BodyLineHeight",
"text": "条目本文的行高"
},
"$:/language/ThemeTweaks/Metrics/StoryLeft": {
"title": "$:/language/ThemeTweaks/Metrics/StoryLeft",
"text": "故事左侧位置"
},
"$:/language/ThemeTweaks/Metrics/StoryLeft/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint",
"text": "故事河(条目区)的左边缘与页面左端的间距"
},
"$:/language/ThemeTweaks/Metrics/StoryTop": {
"title": "$:/language/ThemeTweaks/Metrics/StoryTop",
"text": "故事顶端位置"
},
"$:/language/ThemeTweaks/Metrics/StoryTop/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryTop/Hint",
"text": "故事河(条目区)的上边缘与页面顶端的间距"
},
"$:/language/ThemeTweaks/Metrics/StoryRight": {
"title": "$:/language/ThemeTweaks/Metrics/StoryRight",
"text": "故事右侧位置"
},
"$:/language/ThemeTweaks/Metrics/StoryRight/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryRight/Hint",
"text": "侧边栏的左边缘与页面左端的间距"
},
"$:/language/ThemeTweaks/Metrics/StoryWidth": {
"title": "$:/language/ThemeTweaks/Metrics/StoryWidth",
"text": "故事的宽度"
},
"$:/language/ThemeTweaks/Metrics/StoryWidth/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint",
"text": "故事河的整体宽度"
},
"$:/language/ThemeTweaks/Metrics/TiddlerWidth": {
"title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth",
"text": "条目宽度"
},
"$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint",
"text": "在故事河内"
},
"$:/language/ThemeTweaks/Metrics/SidebarBreakpoint": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint",
"text": "侧边栏中断点"
},
"$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint",
"text": "故事河和侧边栏会并排显示的最小页面宽度"
},
"$:/language/ThemeTweaks/Metrics/SidebarWidth": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarWidth",
"text": "侧边栏宽度"
},
"$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint",
"text": "在浮动-固定布局中,侧边栏的宽度"
},
"$:/language/TiddlerInfo/Advanced/Caption": {
"title": "$:/language/TiddlerInfo/Advanced/Caption",
"text": "高级"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint",
"text": "无信息"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Heading": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading",
"text": "插件明细"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint",
"text": "此插件包含以下预设条目:"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading",
"text": "默认条目状态"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint",
"text": "<$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> 不是一个默认条目"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint",
"text": "<$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> 是一个默认条目"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source",
"text": "此条目定义于插件 <$link to=<<pluginTiddler>>><$text text=<<pluginTiddler>>/></$link>"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint",
"text": "已被一般条目覆写"
},
"$:/language/TiddlerInfo/Fields/Caption": {
"title": "$:/language/TiddlerInfo/Fields/Caption",
"text": "栏位"
},
"$:/language/TiddlerInfo/List/Caption": {
"title": "$:/language/TiddlerInfo/List/Caption",
"text": "列表"
},
"$:/language/TiddlerInfo/List/Empty": {
"title": "$:/language/TiddlerInfo/List/Empty",
"text": "此条目无指定列表"
},
"$:/language/TiddlerInfo/Listed/Caption": {
"title": "$:/language/TiddlerInfo/Listed/Caption",
"text": "被列于"
},
"$:/language/TiddlerInfo/Listed/Empty": {
"title": "$:/language/TiddlerInfo/Listed/Empty",
"text": "此条目未出现于其他条目的列表中"
},
"$:/language/TiddlerInfo/References/Caption": {
"title": "$:/language/TiddlerInfo/References/Caption",
"text": "参照"
},
"$:/language/TiddlerInfo/References/Empty": {
"title": "$:/language/TiddlerInfo/References/Empty",
"text": "无条目链接至此"
},
"$:/language/TiddlerInfo/Tagging/Caption": {
"title": "$:/language/TiddlerInfo/Tagging/Caption",
"text": "子条目"
},
"$:/language/TiddlerInfo/Tagging/Empty": {
"title": "$:/language/TiddlerInfo/Tagging/Empty",
"text": "无任何条目以此条目之标题为标签"
},
"$:/language/TiddlerInfo/Tools/Caption": {
"title": "$:/language/TiddlerInfo/Tools/Caption",
"text": "工具"
},
"$:/language/Docs/Types/application/javascript": {
"title": "$:/language/Docs/Types/application/javascript",
"description": "JavaScript 源码",
"name": "application/javascript",
"group": "开发者"
},
"$:/language/Docs/Types/application/json": {
"title": "$:/language/Docs/Types/application/json",
"description": "JSON 数据",
"name": "application/json",
"group": "开发者"
},
"$:/language/Docs/Types/application/x-tiddler-dictionary": {
"title": "$:/language/Docs/Types/application/x-tiddler-dictionary",
"description": "数据字典",
"name": "application/x-tiddler-dictionary",
"group": "开发者"
},
"$:/language/Docs/Types/image/gif": {
"title": "$:/language/Docs/Types/image/gif",
"description": "GIF 图像",
"name": "image/gif",
"group": "图像"
},
"$:/language/Docs/Types/image/jpeg": {
"title": "$:/language/Docs/Types/image/jpeg",
"description": "JPEG 图像",
"name": "image/jpeg",
"group": "图像"
},
"$:/language/Docs/Types/image/png": {
"title": "$:/language/Docs/Types/image/png",
"description": "PNG 图像",
"name": "image/png",
"group": "图像"
},
"$:/language/Docs/Types/image/svg+xml": {
"title": "$:/language/Docs/Types/image/svg+xml",
"description": "结构式矢量图",
"name": "image/svg+xml",
"group": "图像"
},
"$:/language/Docs/Types/image/x-icon": {
"title": "$:/language/Docs/Types/image/x-icon",
"description": "图标",
"name": "image/x-icon",
"group": "图像"
},
"$:/language/Docs/Types/text/css": {
"title": "$:/language/Docs/Types/text/css",
"description": "静态样式",
"name": "text/css",
"group": "开发者"
},
"$:/language/Docs/Types/text/html": {
"title": "$:/language/Docs/Types/text/html",
"description": "HTML 标记",
"name": "text/html",
"group": "文本"
},
"$:/language/Docs/Types/text/plain": {
"title": "$:/language/Docs/Types/text/plain",
"description": "纯文本",
"name": "text/plain",
"group": "文本"
},
"$:/language/Docs/Types/text/vnd.tiddlywiki": {
"title": "$:/language/Docs/Types/text/vnd.tiddlywiki",
"description": "TiddlyWiki 5",
"name": "text/vnd.tiddlywiki",
"group": "文本"
},
"$:/language/Docs/Types/text/x-tiddlywiki": {
"title": "$:/language/Docs/Types/text/x-tiddlywiki",
"description": "TiddlyWiki 2",
"name": "text/x-tiddlywiki",
"group": "文本"
},
"$:/config/Search/MinLength": {
"title": "$:/config/Search/MinLength",
"text": "1"
},
"$:/languages/zh-Hans/icon": {
"title": "$:/languages/zh-Hans/icon",
"type": "image/svg+xml",
"text": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"1500\" height=\"1000\" viewBox=\"-5 -5 30 20\">\n<title>Flag of the People's Republic of China</title>\n<rect fill=\"#de2910\" x=\"-5\" y=\"-5\" width=\"30\" height=\"20\"/>\n<defs>\n<polygon id=\"s\" points=\"0,-513674 301930,415571 -488533,-158734 488533,-158734 -301930,415571\"\nfill=\"#ffde00\" transform=\"scale(0.0000019467600073)\"/>\n</defs>\n<use xlink:href=\"#s\" transform=\"scale(3)\"/>\n<use xlink:href=\"#s\" transform=\"translate(5,-3) rotate(-120.963756)\"/>\n<use xlink:href=\"#s\" transform=\"translate(7,-1) rotate(-98.130102)\"/>\n<use xlink:href=\"#s\" transform=\"translate(7,2) rotate(-74.054604)\"/>\n<use xlink:href=\"#s\" transform=\"translate(5,4) rotate(-51.3401917)\"/>\n</svg>\n"
}
}
}
{
"tiddlers": {
"$:/plugins/felixhayashi/hotzone/config.js": {
"title": "$:/plugins/felixhayashi/hotzone/config.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/config.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.config={classNames:{storyRiver:\"tc-story-river\",tiddlerFrame:\"tc-tiddler-frame\",tiddlerTitle:\"tc-title\"},references:{userConfig:\"$:/config/hotzone/focusOffset\",focussedTiddlerStore:\"$:/temp/focussedTiddler\"},checkbackTime:$tw.utils.getAnimationDuration()}})();",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/hotzone/hotzone.js": {
"title": "$:/plugins/felixhayashi/hotzone/hotzone.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/hotzone.js\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.name=\"hotzone\";exports.platforms=[\"browser\"];exports.after=[\"story\"];exports.synchronous=true;exports.startup=function(){var t=require(\"$:/plugins/felixhayashi/hotzone/config.js\").config;var e=null;var i=document.getElementsByClassName(t.classNames.storyRiver)[0];var r=$tw.wiki.getTiddlerData(t.references.userConfig,{});var s=isNaN(parseInt(r.focusOffset))?150:parseInt(r.focusOffset);var a=function(e,i,r){if(!(e instanceof Element))return;if(!$tw.utils.hasClass(e,t.classNames.tiddlerFrame))return;var s=e.getElementsByClassName(t.classNames.tiddlerTitle)[0];if(s){var a=s.innerText||s.textContent;return a.trim()}};var n=function(e,i){$tw.wiki.addTiddler(new $tw.Tiddler({title:t.references.focussedTiddlerStore,text:e},$tw.wiki.getModificationFields()));if(i){var r=document.getElementsByClassName(\"hzone-focus\")[0];if(r){$tw.utils.removeClass(r,\"hzone-focus\")}$tw.utils.addClass(i,\"hzone-focus\")}};var l=function(){var r=$tw.wiki.getTiddler(\"$:/StoryList\");if(r&&r.fields.list.length){var l=null;var o=Number.MAX_VALUE;var f=i.children;var u=t.classNames.tiddlerFrame;for(var d=f.length;d--;){if($tw.utils.hasClass(f[d],u)){var c=f[d].getBoundingClientRect();var v=Math.min(Math.abs(s-c.top),Math.abs(s-c.bottom));if(v<o){l=f[d];o=v}}}var w=a(l);if(w!==e&&$tw.wiki.getTiddler(w)){e=w;n(e,l);return}}else if(e){e=\"\";n(e)}};var o=function(t){var e;var i=false;return function(r,s){var a=this;if(i&&!s){}else{i=s;if(e!=null){clearTimeout(e)}e=setTimeout((function(){e=null;i=false;t.apply(a)}),r)}}};var f=o(l);var u=function(t){if(t[\"$:/HistoryList\"]){if(!$tw.wiki.tiddlerExists(\"$:/HistoryList\"))return;var e=$tw.wiki.getTiddler(\"$:/HistoryList\").fields[\"current-tiddler\"];var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");var r=i.indexOf(e)>=0;if(!r)return;f($tw.utils.getAnimationDuration()+10,true)}else if(t[\"$:/StoryList\"]){f($tw.utils.getAnimationDuration()+10,true)}};var d=function(t){f(300,false)};$tw.wiki.addEventListener(\"change\",u);window.addEventListener(\"scroll\",d,false);d()}})();",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/hotzone/Configuration": {
"title": "$:/plugins/felixhayashi/hotzone/Configuration",
"text": "Please see the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information on the options.\n\nSave and reload the wiki to activate changes.\n\n<table>\n <tr>\n <th align=\"left\">Focus offset:</th>\n <td><$edit-text tiddler=\"$:/config/hotzone/focusOffset\" tag=\"input\" default=\"71px\" /></td>\n </tr>\n</table>"
},
"$:/temp/focussedTiddler": {
"title": "$:/temp/focussedTiddler"
},
"$:/plugins/felixhayashi/hotzone/License": {
"title": "$:/plugins/felixhayashi/hotzone/License",
"text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-HotZone/blob/master/LICENSE"
},
"$:/plugins/felixhayashi/hotzone/Readme": {
"title": "$:/plugins/felixhayashi/hotzone/Readme",
"text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information."
}
}
}
{
"tiddlers": {
"$:/plugins/felixhayashi/tiddlymap/layout": {
"text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline \n\nbody .tc-page-container-wrapper.tc-modal-displayed{-webkit-filter:inherit;-moz-filter:inherit;filter:inherit}body .tc-modal-wrapper{z-index:1010}body .tc-modal-wrapper .tc-modal-header svg{vertical-align:sub}body .tc-modal-wrapper .tc-modal-header h3{line-height:10px}body .tc-modal-wrapper .tc-modal-body{min-height:250px;max-height:70vh;padding-top:0px;padding-bottom:0px;overflow:auto}body .tc-modal-wrapper .tc-modal-footer{padding:8px}body .tc-modal-wrapper .tc-modal-footer .tmap-dialog-button{font-weight:bold}body .tc-modal-wrapper .tc-modal-footer .tmap-hidden-close-button{display:none}table.tmap-table tr:nth-child(odd),.tc-modal-body table.tmap-config-table tr:nth-child(odd){background-color:#F0F0F0}table.tmap-table tr:nth-child(even),.tc-modal-body table.tmap-config-table tr:nth-child(even){background-color:#FFFFFF}.tmap-save-canvas-preview{text-align:center;background:lightgray}.tmap-save-canvas-preview img{background-color:white;max-width:100%;max-height:100px;border:1px solid red}.tmap-list-separator{display:block;background-color:#efefef;margin:10px 0 5px 0;cursor:default;border-bottom:1px dotted gray;font-weight:bold;font-size:0.8em}.tmap-unicode-icon{width:1em;display:inline-block;text-align:center;color:black}html .tmap-link{color:#5778D8}html .tmap-link:hover{color:white;background:#5778D8}html .tmap-small-list,html .tmap-smaller-list,html .tmap-very-small-list{overflow:auto;min-height:2em;max-height:9em;display:block}html .tmap-smaller-list{max-height:7em}html .tmap-very-small-list{max-height:5empx}html .tc-tiddler-controls button.tmap-active-button svg{fill:#888888}html #tmap-node-filter-dialog #tmap-filter-tips{font-size:0.8em}html #tmap-node-filter-dialog textarea{height:100px;max-height:300px;overflow:auto;width:100%;font-size:11px;font-family:\"Courier New\", Courier, monospace}@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-desktop-editor .tmap-widget:not(.tmap-fullscreen){display:none}}@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-mobile-editor{display:none}.tc-modal-wrapper{z-index:1010}.tc-modal-wrapper .tc-modal{boder:1px solid #999999;left:calc(50% - 400px);width:802px}.tc-modal-wrapper .tc-modal-body{left:calc(50% - 400px);width:800px}}@-o-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@keyframes flash fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-o-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-moz-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-webkit-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@keyframes flash fadeout-keyframes{0%{opacity:1}100%{opacity:0}}.tmap-config-widget{background:#F0F0F0;padding:5px;margin:5px 0;box-sizing:border-box;display:block}.tmap-config-widget .vis-network{display:none}.tmap-config-widget .vis-configuration-wrapper{width:100%}.tmap-config-widget .vis-configuration-wrapper .vis-config-rangeinput{height:inherit;margin-left:4px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item{width:100%;height:inherit;background:none;padding-left:0px;left:0}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item.tmap-vis-config-item-active .vis-config-label::after{content:\"(inherited)\";position:absolute;display:inline-block;margin-left:10px;-o-animation:fadein-keyframes 1s;-moz-animation:fadein-keyframes 1s;-webkit-animation:fadein-keyframes 1s;animation:fadein-keyframes 1s;content:\"✔\";color:green;font-weight:bold;font-size:15px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item button.tmap-config-item-reset{vertical-align:top;margin-left:5px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-range{width:150px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-range::-moz-range-track{width:150px !important}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-label{width:150px}.tmap-config-widget::after{clear:both;content:\"\";display:block}.tmap-flash-message{border:1px solid lightgray;padding:5px;margin:6px 0;display:block;color:#333333}.tmap-flash-message.tmap-info,.tmap-flash-message.tmap-plain,.tmap-flash-message.tmap-neutral{background:#F0F0F0}.tmap-flash-message.tmap-info::before,.tmap-flash-message.tmap-plain::before,.tmap-flash-message.tmap-neutral::before{content:\"i\";display:inline-block;border-radius:50%;width:0.8em;border:2px solid;font-family:serif;text-align:center;height:0.8em;font-weight:bold;line-height:0.8em;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-valid,.tmap-flash-message.tmap-success{background:#D1EED4}.tmap-flash-message.tmap-valid::before,.tmap-flash-message.tmap-success::before{content:\"i\";display:inline-block;border-radius:50%;width:0.8em;border:2px solid;font-family:serif;text-align:center;height:0.8em;font-weight:bold;line-height:0.8em;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-warning{background:#FFF6D1}.tmap-flash-message.tmap-warning::before{content:\"\";display:inline-block;background:url(<<tmap \"datauri\" \"$:/core/images/warning\" \"\">>);display:inline-block;width:1em;height:1em;background-size:100% 100%;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-malformed,.tmap-flash-message.tmap-invalid,.tmap-flash-message.tmap-danger{background:#EED5D1}.tmap-flash-message.tmap-malformed::before,.tmap-flash-message.tmap-invalid::before,.tmap-flash-message.tmap-danger::before{content:\"\";display:inline-block;background:url(<<tmap \"datauri\" \"$:/core/images/warning\" \"\">>);display:inline-block;width:1em;height:1em;background-size:100% 100%;vertical-align:text-top;margin-right:2px}.tmap-widget{background:#FFFFFF;width:auto;position:relative;border:1px dotted lightgray;padding:2px;color:#666;display:block}.tmap-widget .tmap-download-canvas{display:none}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active){cursor:pointer}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active) .vis-navigation{display:none}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active):hover:before{color:gray;background:white;content:\"Click to use\";font-size:14px;font-weight:bold;right:calc(50% - 65px - 5px);position:absolute;text-align:center;top:calc(50% - 14px - 5px);width:130px;z-index:2000;padding:5px;pointer-events:none;background-color:rgba(255,255,255,0.3)}.tmap-widget .tmap-loading-bar{display:none;position:absolute;text-align:center;font-size:2em;padding:10px;top:50%;background:rgba(245,245,245,0.5);z-index:1;width:250px;margin:auto;left:0px;right:0px}.tmap-widget .tmap-vis-graph{height:calc(100% - 35px)}.tmap-widget.tmap-no-buttons .vis-navigation{display:none}.tmap-widget.tmap-advanced-editor .tmap-topbar{background:#d6d9d8}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-active-button{color:#488DCD}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-active-button svg{fill:#488DCD}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-unicode-button{font-size:1.5em;vertical-align:bottom;height:28px;fill:#555555}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-unicode-button svg{vertical-align:baseline}.tmap-widget .tmap-menu-bar{width:100%}.tmap-widget .tmap-topbar{background:#F5F5F5;border-bottom:1px solid lightgray;padding:3px 5px;height:35px;position:relative}.tmap-widget .tmap-topbar .tmap-view-label{width:100%;text-align:center;font-weight:bold;padding-top:3px}.tmap-widget .tmap-topbar .tmap-focus-button{position:absolute;right:10px;top:6px}.tmap-widget .tmap-topbar .tmap-focus-button input{width:140px}.tmap-widget .tmap-topbar .tmap-search-dropdown{position:relative}.tmap-widget .tmap-topbar .tmap-search-dropdown .tc-drop-down{position:absolute;z-index:999;right:0px}.tmap-widget .tmap-topbar [hidden]{display:none}.tmap-widget .tmap-topbar select{width:30%;max-width:200px;word-wrap:initial;padding:0px;height:28px}.tmap-widget .tmap-topbar button{line-height:inherit;color:#666}.tmap-widget .tmap-topbar>*{display:inline-block}.tmap-widget .tmap-topbar .tmap-separator:after{color:#bdbdbd;margin:3px;content:\" | \"}.tmap-widget .tmap-topbar .tc-edit-add-tag .tc-add-tag-name input{width:70%}.tmap-widget .tmap-topbar .tc-sidebar-header{text-shadow:none}.tmap-widget .tmap-topbar .tc-edit-tags{border:none;padding:inherit;box-shadow:none}.tmap-widget.tmap-static-mode .tmap-topbar{height:initial}.tmap-widget.tmap-static-mode .tmap-vis-graph{text-align:center;cursor:not-allowed}.tmap-widget.tmap-static-mode .tmap-vis-graph:not(.tmap-graph-placeholder):hover::before{box-shadow:10px 10px 5px lightgray;color:gray;background:white;content:\"Static\";font-size:18px;font-weight:bold;left:50%;margin-left:-100px;position:absolute;text-align:center;top:50px;width:200px;z-index:2000;padding:5px;pointer-events:none}.tmap-widget.tmap-static-mode .tmap-vis-graph.tmap-graph-placeholder::before{content:\"No Preview\";display:block;text-align:center;padding:20px}.tmap-widget .tc-drop-down{min-width:170px;padding:5px;margin:5px 0}.tmap-widget .tc-drop-down button,.tmap-widget .tc-drop-down a{padding:0 2px;text-decoration:none}.tmap-widget .tc-drop-down button:hover,.tmap-widget .tc-drop-down a:hover{color:#ffffff}.tmap-widget .tc-drop-down button svg,.tmap-widget .tc-drop-down a svg{vertical-align:middle}.tmap-widget .tc-block-dropdown{width:370px;min-width:370px;padding:5px;margin:15px 0 0 -370px}.tmap-widget .tc-block-dropdown a{display:inline;padding:0px}.tmap-widget.tmap-plain-design{border:none;padding:0px}.tmap-widget.tmap-plain-design .tmap-topbar{display:none}.tc-sidebar-scrollable .tmap-widget{position:absolute;min-height:350px}.tmap-widget div.vis-network .vis-edit-mode{height:26px}.tmap-widget div.vis-network .vis-manipulation{height:34px;border-top:1px solid #d6d9d8;background:rgba(245,245,245,0.7)}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled{right:15px}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled.tmap-fullscreen-button{bottom:90px;background-image:url(<<tmap \"datauri\" \"$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png\" \"\">>)}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled.tmap-halfscreen-button{bottom:130px;background-image:url(<<tmap \"datauri\" \"$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png\" \"\">>)}.tmap-widget div.vis-network .vis-navigation .vis-button:hover{box-shadow:0 0 3px 3px rgba(75,75,75,0.3)}.tmap-widget div.vis-network .vis-navigation .vis-button:hover:before{background:beige;display:block;color:black;padding:3px;position:relative;border:1px solid lightgray;width:80px;left:-100px;top:-50px;z-index:1000;text-align:center}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-up:before{left:30px;content:\"Scroll up\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-down:before{left:30px;content:\"Scroll down\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-right:before{left:30px;content:\"Scroll right\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-left:before{left:30px;content:\"Scroll left\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomOut:before{content:\"Zoom out\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomIn:before{content:\"Zoom in\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomExtends:before{content:\"Fit whole graph\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.tmap-fullscreen-button:before{content:\"Toggle Fullscreen\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.tmap-halfscreen-button:before{content:\"Toggle Halfscreen\"}.tc-dropzone>.tc-story-river .tmap-widget .vis-navigation .tmap-halfscreen-button{display:none}.tc-dropzone>.tc-story-river .tmap-widget:not(.tmap-fullscreen) .vis-navigation .vis-button{display:none}.tc-dropzone>.tc-story-river .tmap-widget:hover .vis-navigation .vis-button.tmap-fullscreen-button{display:block}.tc-dropzone>.tc-story-river .tmap-widget:hover .vis-navigation .vis-button.vis-zoomExtends{display:block}body.tmap-has-fullscreen-widget{overflow:hidden}body.tmap-has-fullscreen-widget .tmap-widget.tmap-fullscreen{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important}body.tmap-has-fullscreen-widget .tc-dropzone>*.tmap-has-fullscreen-widget{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important}body.tmap-has-fullscreen-widget .tc-dropzone>*:not(.tmap-has-fullscreen-widget){display:none}body.tmap-has-halfscreen-widget .tmap-widget.tmap-halfscreen{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important;position:absolute !important;border-left:1px solid lightgray !important}.tc-modal-footer .tmap-hidden-close-button{display:none}.tmap-modal-content{position:relative;padding:1em 0;padding-top:0}.tmap-modal-content table tr td{vertical-align:top}.tmap-modal-content :not(pre)>code{padding:1px;font-size:0.9em;position:relative;top:-1px}.tmap-modal-content :not(pre)>code{color:#666}.tmap-modal-content .tc-tab-set .tc-tab-content{margin-top:0.5em}.tmap-modal-content .tc-image-button{font-size:14px}.tmap-modal-content fieldset{margin:0px}.tmap-modal-content fieldset legend{font-weight:bold}.tc-modal-body .tmap-modal-editor>p{margin:0px}.tc-modal-body .tmap-modal-editor .tmap-template-select select{width:50%}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame{margin:auto;width:auto}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame .tc-tiddler-controls{display:none}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame .tc-tiddler-title{display:none}.tc-modal-body table{margin:6px 0;border:none;width:100%}.tc-modal-body table td,.tc-modal-body table th{border:1px solid lightgray}.tc-modal-body table.tmap-key-value-table th{width:30%;background-color:#F0F0F0}.tc-modal-body table.tmap-config-table.tmap-large-input tr td:last-child{width:20%}.tc-modal-body table.tmap-config-table.tmap-small-input tr td:last-child{width:60%}.tc-modal-body table.tmap-config-table tr td{border:none;vertical-align:top;padding:5px}.tc-modal-body table.tmap-config-table tr td:first-child{width:15%}.tc-modal-body table.tmap-config-table tr td:last-child{width:40%}.tc-modal-body table.tmap-config-table tr td input:not([type=radio]),.tc-modal-body table.tmap-config-table tr td textarea,.tc-modal-body table.tmap-config-table tr td select{width:100%;word-wrap:normal}.tc-modal-body table.tmap-config-table tr td textarea{height:100%}.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch input,.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch textarea,.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch select{width:auto}.tc-modal-body table.tmap-config-table tr td div.tmap-button-wrapper{text-align:center}.tc-modal-body table.tmap-config-table tr td .tmap-note{margin-top:0.5em}.tc-modal-body table.tmap-config-table tr td .tmap-description{font-style:italic}#tmap-element-type-manager>div:first-child{height:50vh;float:left;width:21%;background:linear-gradient(90deg, #f5f5f5 0%, #fff 50%)}#tmap-element-type-manager>div:first-child .tmap-searchbar{padding:1em 0 0 0}#tmap-element-type-manager>div:first-child .tmap-searchbar input{width:calc(100% - 36px)}#tmap-element-type-manager>div:first-child .tmap-searchbar button{width:30px;float:right}#tmap-element-type-manager>div:first-child ul{height:calc(100% - 65px);overflow:auto;margin-top:1em;padding:0}#tmap-element-type-manager>div:first-child ul.no-bullets li{list-style:none}#tmap-element-type-manager>div:first-child ul li{white-space:nowrap}#tmap-element-type-manager>div:first-child ul li .tmap-ranking{width:30px;display:inline-block}#tmap-element-type-manager>div:last-child{height:100%;width:calc(79% - 15px);float:right}#tmap-element-type-manager>div:last-child .tc-tab-set .tc-tab-content{overflow:auto;height:50vh}.tmap-manage-node-types .tmap-edge-type-specific{display:none !important}.tmap-manage-edge-types .tmap-node-type-specific{display:none !important}.tmap-modal-fullscreen-editor .tc-tab-content p{margin:1em 0}.tmap-has-pending-template{background-color:#C1EDC4}#tmap-search-table td{border:none;padding-left:0px}#tmap-search-table td:first-child{width:30px}#tmap-search-table b{display:inline-block;width:40px;text-align:right}#tmap-search-table ul{padding-left:20px;margin:1em 0 0 0}#tmap-search-table ul li{list-style:inherit}#tmap-search-table ul button{text-align:left}button.tmap-go-back{margin-bottom:1em;font-weight:bold}.tmap-badges>span,.tmap-badge{background:gray;font-size:11px;color:white;padding:3px 4px;display:inline-block;font-weight:bold;border-radius:2px;line-height:1em;cursor:help}.tmap-badges>span.tmap-red-flag,.tmap-badge.tmap-red-flag{background:red}.tmap-popup{display:none;position:absolute;opacity:0;transition:opacity 0.3s ease}.tmap-popup.tmap-popup-active{opacity:1}.tmap-tooltip{box-shadow:3px 3px 10px rgba(0,0,0,0.2);min-width:100px;min-height:50px;max-width:<<tmap option config.sys.popups.width>>;max-height:<<tmap option config.sys.popups.height>>;padding:5px;resize:both;overflow:auto;cursor:auto;font-family:verdana;font-size:14px;background-color:#f5f4ed;border:1px solid #808074;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.tmap-tooltip[style*=\"height\"]{max-height:none !important}.tmap-tooltip[style*=\"width\"]{max-width:none !important}.tmap-quick-connect{font-size:0.7em}.tmap-quick-connect p{padding-left:0;padding-right:0}.tmap-quick-connect .tc-drop-down{padding:5px;width:250px;white-space:normal;line-height:1em;position:absolute;z-index:1000;right:50px;background:linear-gradient(45deg, #f5f5f5 0%, #fff 50%, #f5f5f5 100%)}.tmap-quick-connect .tc-drop-down:first-child{padding-top:0;margin-top:0}.tmap-quick-connect .tc-drop-down .title{margin:1.5em 0 0.5em 0;font-weight:bold;color:gray}.tmap-quick-connect .tc-drop-down select{width:80px;word-wrap:initial}.tmap-quick-connect .tc-drop-down table{width:100%;border:none;margin:0.5em 0}.tmap-quick-connect .tc-drop-down table td,.tmap-quick-connect .tc-drop-down table th{padding:3px 3px 3px 0;vertical-align:middle;font-weight:normal;border:none}.tmap-quick-connect .tc-drop-down table td table,.tmap-quick-connect .tc-drop-down table th table{margin:0}.tmap-quick-connect .tc-drop-down .tmap-quick-connect-search-bar,.tmap-quick-connect .tc-drop-down .tmap-quick-connect-existing-bar{background:#F1F1F1;margin-top:0;border-bottom:1px solid #D5D5D5;border-top:1px solid #D5D5D5}.tmap-quick-connect .tc-drop-down table.tmap-quick-connect-search-bar td,.tmap-quick-connect .tc-drop-down th{padding:5px}.tmap-quick-connect .tc-drop-down .tmap-quick-connect-existing-bar{padding:5px}.tmap-quick-connect .tc-drop-down .tmap-connection-table th,.tmap-quick-connect .tc-drop-down .tmap-connection-table td{text-align:left;padding:1px 1px 1px 0}.tmap-quick-connect .tc-drop-down .tmap-connection-table button{width:20px;padding:0px}.tmap-quick-connect .tc-drop-down .tmap-scroll-table{height:120px;overflow:auto;display:block}.tmap-quick-connect .tc-drop-down hr{border:0;height:0;border-top:1px solid rgba(0,0,0,0.1);border-bottom:1px solid rgba(255,255,255,0.3)}.tmap-quick-connect .tc-drop-down a{display:inline;padding:0;color:#5778d8;background:transparent}.tmap-quick-connect .tc-drop-down a:hover{background:transparent;color:#5778d8;text-decoration:underline}.tmap-quick-connect .tc-drop-down button{display:inline-block;padding:0px 3px;text-align:center;color:#333333;line-height:1.0}.tmap-quick-connect .tc-drop-down button:hover{color:#ffffff}.tmap-quick-connect .tc-drop-down button svg{fill:inherit}.tmap-quick-connect .tc-drop-down button svg:hover{fill:#ffffff}\n",
"title": "$:/plugins/felixhayashi/tiddlymap/layout",
"type": "text/vnd.tiddlywiki",
"tags": [
"$:/tags/Stylesheet"
]
},
"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();/* @preserve TW-Guard */ /* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}var AbstractEdgeTypeSubscriber=function(){function e(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},i=t.priority,n=i===undefined?0:i,a=t.skipOthers,s=a===undefined?true:a,u=t.ignore,l=u===undefined?false:u;_classCallCheck(this,e);this.allEdgeTypes=r;this.priority=n;this.skipOthers=s;this.ignore=l}_createClass(e,[{key:\"setTracker\",value:function e(r){this.tracker=r}},{key:\"loadEdges\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"loadEdges\")}},{key:\"canHandle\",value:function e(r){throw new _exception.MissingOverrideError(this,\"canHandle\")}},{key:\"insertEdge\",value:function e(r,t,i){}},{key:\"deleteEdge\",value:function e(r,t,i){}}]);return e}();exports.default=AbstractEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&&(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&&r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractMagicEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e,t){_classCallCheck(this,r);var i=_possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,t));i.edgeTypesByFieldName=_utils2.default.makeHashMap();for(var a in e){var n=e[a];if(i.canHandle(n)){i.edgeTypesByFieldName[n.name]=n}}return i}_createClass(r,[{key:\"getReferencesFromField\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"getReferencesFromField\")}},{key:\"getReferences\",value:function e(r,t,i){var a=_utils2.default.makeHashMap();var n=r.fields;for(var s in n){var u=this.edgeTypesByFieldName[s];if(!u||i&&!i[u.id])continue;var o=this.getReferencesFromField(r,s,t);if(o&&o.length){a[u.id]=o}}return a}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.default=AbstractMagicEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractMagicEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractRefEdgeTypeSubscriber=function(e){_inherits(t,e);function t(){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=this.getReferences(t,r,i);if(!a||!_utils2.default.hasElements(a))return;var s=t.fields[\"tmap.id\"];var n=$tm.tracker.getIdsByTiddlers();var u=this.allEdgeTypes;var l=_utils2.default.getTiddlerRef(t);var o=_utils2.default.makeHashMap();for(var f in a){var c=a[f];if(!c){continue}var p=u[f];for(var d=c.length;d--;){var _=c[d];if(!_||!$tw.wiki.tiddlerExists(_)||_utils2.default.isSystemOrDraft(_)||r&&!r[_]){continue}var b=p.id+$tw.utils.hashString(l+_);o[b]=new _Edge2.default(s,n[_],p.id,b)}}return o}},{key:\"getReferences\",value:function e(t,r,i){throw new _exception.MissingOverrideError(this,\"getReferences\")}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.default=AbstractRefEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractRefEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var s=r[t];s.enumerable=s.enumerable||false;s.configurable=true;if(\"value\"in s)s.writable=true;Object.defineProperty(e,s.key,s)}}return function(r,t,s){if(t)e(r.prototype,t);if(s)e(r,s);return r}}();function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeTypeSubscriberRegistry=function(){function e(r,t,s){_classCallCheck(this,e);this.subscriberClasses=r;this.tracker=s;this.updateIndex(t)}_createClass(e,[{key:\"getAllForType\",value:function e(r){var t=this.allSubscribers;var s=[];for(var i=0,a=t.length;i<a;i++){if(t[i].canHandle(r)){s.push(t[i]);if(t[i].skipOthers){break}}}return s}},{key:\"getAll\",value:function e(){return this.allSubscribers}},{key:\"updateIndex\",value:function e(r){var t=[];var s=this.subscriberClasses;for(var i in s){var a=new s[i](r);a.setTracker(this.tracker);if(a.ignore===true){continue}t.push(a)}t.sort(function(e,r){return r.priority-e.priority});this.allSubscribers=t}}]);return e}();exports.default=EdgeTypeSubscriberRegistry;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/EdgeTypeSubscriberRegistry.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TmapEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TmapEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:0},r)))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\");if(!a){return}var n=this.tracker.getTiddlersByIds();var u=t.fields[\"tmap.id\"];var s=_utils2.default.makeHashMap();for(var l in a){var o=a[l];var d=n[o.to];if(d&&(!r||r[d])&&(!i||i[o.type])){s[l]=new _Edge2.default(u,o.to,o.type,l)}}return s}},{key:\"insertEdge\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});r.id=r.id||_utils2.default.genUUID();a[r.id]={to:r.to,type:i.id};_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"deleteEdge\",value:function e(t,r,i){if(!r.id)return;var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});delete a[r.id];_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"canHandle\",value:function e(t){return true}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.TmapEdgeTypeSubscriber=TmapEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/TmapEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FieldEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FieldEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-field\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return[t.fields[r]]}},{key:\"insertEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,n);return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,undefined);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FieldEdgeTypeSubscriber=FieldEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FieldEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FilterEdgeTypeSubstriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _widget2=_interopRequireDefault(_widget);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FilterEdgeTypeSubstriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-filter\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){var n=t.fields[r];var a=new _widget2.default.widget({});a.setVariable(\"currentTiddler\",t.fields.title);var u=new _widget2.default.widget({},{parentWidget:a});var s=_utils2.default.getMatches(n,i,u);return s}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var a=t.fields[n]||\"\";var u=this.tracker.getTiddlerById(r.to);var s=$tw.utils.stringifyList([u]);if(a.length>0){s=\" \"+s}_utils2.default.setField(t,n,a+s);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FilterEdgeTypeSubstriber=FilterEdgeTypeSubstriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FilterEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.ListEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var ListEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-list\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return $tw.utils.parseStringArray(t.fields[r])}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var s=$tw.utils.parseStringArray(t.fields[n]);s=(s||[]).slice();var a=this.tracker.getTiddlerById(r.to);s.push(a);_utils2.default.setField(t,n,$tw.utils.stringifyList(s));return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=$tw.utils.parseStringArray(t.fields[i.name]);n=(n||[]).slice();var s=this.tracker.getTiddlerById(r.to);var a=n.indexOf(s);if(a>-1){n.splice(a,1)}var u=void 0;if(n.length>0){u=$tw.utils.stringifyList(n)}_utils2.default.setField(t,i.name,u);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.ListEdgeTypeSubscriber=ListEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/ListEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.LinkEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var LinkEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:20},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.id===\"tw-body:link\"}},{key:\"getReferences\",value:function e(t,r,n){if(n&&!n[\"tw-body:link\"]){return}var i=$tw.wiki.getTiddlerLinks(t.fields.title);if(!i||!i.length){return}return{\"tw-body:link\":i}}}]);return t}(_AbstractRefEdgeTypeSubscriber2.default);exports.LinkEdgeTypeSubscriber=LinkEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/LinkEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TranscludeEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t){if(Object.prototype.hasOwnProperty.call(t,n)){e[n]=t[n]}}}return e};var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(r,t,n){if(t)e(r.prototype,t);if(n)e(r,n);return r}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&&(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&&r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TranscludeEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,r);return _possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,_extends({priority:20,ignore:typeof $tw.wiki.getTiddlerTranscludes!==\"function\"},t)))}_createClass(r,[{key:\"canHandle\",value:function e(r){return r.id===\"tw-body:transclude\"}},{key:\"getReferences\",value:function e(r,t,n){if(n&&!n[\"tw-body:transclude\"]){return}var i=$tw.wiki.getTiddlerTranscludes(r.fields.title);if(!i||!i.length){return}return{\"tw-body:transclude\":i}}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.TranscludeEdgeTypeSubscriber=TranscludeEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/TranscludeEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/Edge": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Edge",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Edge\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var Edge=function e(t,i,s,l){_classCallCheck(this,e);this.from=t;this.to=i;this.type=s;this.id=l||_utils2.default.genUUID()};exports.default=Edge;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/Edge.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/EdgeType": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeType",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var n=t.getIdParts(e),o=n.marker,a=n.namespace,i=n.name;e=t.getId(o,a,i);var l=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,env.path.edgeTypes,t.fieldMeta,r));l.id=e;l.marker=o;l.name=i;l.namespace=a;var u=(l.style||{}).arrows;if(u){l.invertedArrow=isArrowEnabled(u,\"from\");l.toArrow=isArrowEnabled(u,\"to\")||isArrowEnabled(u,\"middle\");l.biArrow=l.invertedArrow===l.toArrow;if(l.biArrow){l.toArrow=true;l.invertedArrow=true}}else{l.toArrow=true}Object.freeze(l);return l}_createClass(t,[{key:\"getLabel\",value:function e(){return this.label||this.name}}],[{key:\"getIdParts\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";t=_utils2.default.getWithoutPrefix(t,env.path.edgeTypes+\"/\");var r=t.match(edgeTypeRegex)||[];return{marker:r[1]||\"\",namespace:r[3]&&r[2]||\"\",name:r[3]||r[2]||\"\"}}},{key:\"getId\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];return n?t+(r&&r+\":\")+n:\"tmap:unknown\"}}]);return t}(_MapElementType3.default);EdgeType.getInstance=function(e){return e instanceof EdgeType?e:new EdgeType(e)};EdgeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{label:{},\"show-label\":{}});var isArrowEnabled=function e(t,r){var n=t[r];if(n==null&&r===\"to\"){return true}return(typeof n===\"undefined\"?\"undefined\":_typeof(n))===\"object\"?n.enabled!==false:n===true};var edgeTypeRegex=new RegExp(\"^(_?)([^:_][^:]*):?([^:]*)\");exports.default=EdgeType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/EdgeType.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/MapElementType": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/MapElementType",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(t){return typeof t}:function(t){return t&&typeof Symbol===\"function\"&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t};var _createClass=function(){function t(t,e){for(var i=0;i<e.length;i++){var l=e[i];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(t,l.key,l)}}return function(e,i,l){if(i)t(e.prototype,i);if(l)t(e,l);return e}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/MapElementType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}var MapElementType=function(){function t(e,i,l,s){_classCallCheck(this,t);this.id=e;this.root=i;this._fieldMeta=l;this.fullPath=this.root+\"/\"+this.id;this.isShipped=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath);this._load(s||this.fullPath)}_createClass(t,[{key:\"_load\",value:function t(e){if(!e){return}if(typeof e===\"string\"){var i=_utils2.default.startsWith(e,this.root);var l=i?e:this.root+\"/\"+e;this._loadFromTiddler(l)}else if(e instanceof $tw.Tiddler){this._loadFromTiddler(e)}else if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){for(var s in this._fieldMeta){this[s]=e[s]}}}},{key:\"_loadFromTiddler\",value:function t(e){var i=_utils2.default.getTiddler(e);if(!i){return}var l=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath)||{};var s=$tw.utils.extend({},l.fields,i.fields);for(var r in this._fieldMeta){var a=this._fieldMeta[r].parse;var f=s[r];this[r]=a?a.call(this,f):f}}},{key:\"exists\",value:function t(){return _utils2.default.tiddlerExists(this.fullPath)}},{key:\"setStyle\",value:function t(e,i){if(typeof e===\"string\"){e=_utils2.default.parseJSON(e)}if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){if(i){_utils2.default.merge(this.style,e)}else{this.style=e}}}},{key:\"save\",value:function t(e,i){if(!e){e=this.fullPath}else if(typeof e!==\"string\"){return}var l={title:e,text:\"\"};if(!_utils2.default.startsWith(e,this.root)){l.id=this.id}for(var s in this._fieldMeta){var r=this._fieldMeta[s].stringify;l[s]=r?r.call(this,this[s]):this[s]}if(!this.exists()){Object.assign(l,$tw.wiki.getCreationFields())}if(i!==true){Object.assign(l,$tw.wiki.getModificationFields())}$tw.wiki.addTiddler(new $tw.Tiddler(l))}}]);return t}();MapElementType.fieldMeta={description:{},style:{parse:_utils2.default.parseJSON,stringify:JSON.stringify},modified:{},created:{}};exports.default=MapElementType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/MapElementType.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/NodeType": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/NodeType",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/NodeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var NodeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);e=typeof e===\"string\"?_utils2.default.getWithoutPrefix(e,$tm.path.nodeTypes+\"/\"):\"tmap:unknown\";var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,$tm.path.nodeTypes,t.fieldMeta,r));Object.freeze(n);return n}_createClass(t,[{key:\"getInheritors\",value:function e(t){return this.scope?_utils2.default.getMatches(this.scope,t||$tw.wiki.allTitles()):[]}}]);return t}(_MapElementType3.default);NodeType.getInstance=function(e){return e instanceof NodeType?e:new NodeType(e)};NodeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{view:{},priority:{parse:function e(t){return isNaN(t)?1:parseInt(t)},stringify:function e(t){return _utils2.default.isInteger(t)?t.toString():\"1\"}},scope:{stringify:_utils2.default.getWithoutNewLines},\"fa-icon\":{},\"tw-icon\":{}});exports.default=NodeType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/NodeType.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var r in i){if(Object.prototype.hasOwnProperty.call(i,r)){e[r]=i[r]}}}return e};var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var ViewAbstraction=function(){function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,e);if(t instanceof e){return t}this._registerPaths(t);if(i.isCreate){if(!this.configTRef){var r=_utils2.default.getRandomLabel({plural:true});this.configTRef=$tw.wiki.generateNewTitle($tm.path.views+\"/\"+r)}this._createView(i)}else if(!e.exists(this.getRoot())){throw new ResourceNotFoundException(\"ViewAbstraction\",t)}}_createClass(e,[{key:\"isLocked\",value:function e(){return $tw.wiki.isShadowTiddler(this.configTRef)}},{key:\"update\",value:function e(t){var i=t.changedTiddlers;if(t[env.path.edgeTypes]||_utils2.default.hasKeyWithPrefix(i,this.getRoot())){this._clearCaches();return true}return false}},{key:\"addPlaceholder\",value:function e(t){_utils2.default.cp(_utils2.default.getTiddlerRef(t),this.snapshotTRef,true)}},{key:\"exists\",value:function t(){return e.exists(this)}},{key:\"getRoot\",value:function e(){return this.configTRef}},{key:\"getCreationDate\",value:function e(t){var i=$tw.wiki.getTiddler(this.configTRef).fields[\"created\"];if(t){return i instanceof Date?$tw.utils.formatDateString(i,\"DDth MMM YYYY\"):\"\"}return i}},{key:\"getLabel\",value:function e(){return _utils2.default.getBasename(this.configTRef)}},{key:\"destroy\",value:function e(){_utils2.default.deleteTiddlers(_utils2.default.getMatches(\"[prefix[\"+this.configTRef+\"]]\"))}},{key:\"getOccurrences\",value:function e(){var t=\"[regexp:text[<\\\\$(tiddlymap|tmap).*?view=.\"+this.getLabel()+\"..*?>]]\";return _utils2.default.getMatches(t)}},{key:\"rename\",value:function t(i){if(typeof i!==\"string\"){return false}if(_utils2.default.inArray(\"/\",i)){$tm.notify('A view name must not contain any \"/\"');return false}var r=this.getLabel();var a=env.path.views+\"/\"+i;var n=this.getRoot();_utils2.default.mv(n,a,true);if($tm.config.sys.defaultView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"defaultView\",i)}if($tm.config.sys.liveTab.fallbackView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"liveTab.fallbackView\",i)}$tw.wiki.each(function(t,a){if(t.fields[\"tmap.open-view\"]===r){_utils2.default.setField(a,\"tmap.open-view\",i);return}if(e.exists(a)){var n=new e(a);var l=n.getNodeData();for(var s in l){if(l[s][\"open-view\"]===r){l[s][\"open-view\"]=i}}n.saveNodeData(l)}});this._clearCaches();this._registerPaths(i)}},{key:\"isEnabled\",value:function e(t){return _utils2.default.isTrue(this.getConfig(t),false)}},{key:\"getConfig\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.configTRef,\"tmap-config\",function(){var e=_utils2.default.getTiddler(i.configTRef).fields;return _utils2.default.getPropertiesByPrefix(e,\"config.\")});var a=t&&_utils2.default.startsWith(t,\"config.\")?t:\"config.\"+t;return t?r[a]:r}},{key:\"setConfig\",value:function e(){for(var t=arguments.length,i=Array(t),r=0;r<t;r++){i[r]=arguments[r]}if(i[0]==null){return}if(i.length===1&&_typeof(i[0])===\"object\"){for(var a in i[0]){this.setConfig(a,i[0][a])}}else if(i.length===2&&typeof i[0]===\"string\"){var n=_utils2.default.getWithoutPrefix(i[0],\"config.\");var l=i[1];if(l===undefined){return}var s=this.getConfig();if(l===null){$tm.logger(\"debug\",\"Removing config\",n);delete s[\"config.\"+n]}else{if(n===\"edge_type_namespace\"){var o=l.match(/[^:]+/);l=o?o[0]:\"\"}}$tm.logger(\"log\",\"Setting config\",n,l);s[\"config.\"+n]=l;$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(this.configTRef),s))}else{throw new(Function.prototype.bind.apply(_exception.InvalidArgumentException,[null].concat(i)))}}},{key:\"isNodeIncludedById\",value:function t(i){var r=$tw.utils.escapeRegExp(e._getNodeIdFilterPart(i));return this.getNodeFilter(\"raw\").match(r)}},{key:\"setNodeFilter\",value:function e(t,i){t=t.replace(/[\\n\\r]/g,\" \");if(this.getNodeFilter(\"raw\")===t){return}_utils2.default.setField(this.nodeFilterTRef,\"filter\",t);$tm.logger(\"debug\",\"Node filter set to\",t)}},{key:\"setEdgeTypeFilter\",value:function e(t){t=t.replace(/[\\n\\r]/g,\" \");if(this.getEdgeTypeFilter(\"raw\")===t){return}_utils2.default.setField(this.edgeTypeFilterTRef,\"filter\",t);$tm.logger(\"debug\",\"Edge filter set to\",t)}},{key:\"addNode\",value:function t(i){if(!this.isNodeIncludedById(i)){if(_utils2.default.isTrue($tm.config.sys.alwaysAddNodeIdToViewFilter)||!_utils2.default.isMatch(i.tRef,this.getNodeFilter(\"compiled\"))){var r=e._getNodeIdFilterPart(i);var a=\" \";this.setNodeFilter(this.getNodeFilter(\"raw\")+a+r)}this.saveNodePosition(i)}}},{key:\"removeNode\",value:function t(i){if(!this.isNodeIncludedById(i)){return false}var r=e._getNodeIdFilterPart(i);var a=this.getNodeFilter(\"raw\").replace(r,\"\");this.setNodeFilter(a);return true}},{key:\"getEdgeTypeFilter\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.edgeTypeFilterTRef,\"tmap-edgeTypeFilter\",function(){var e=$tm.indeces.allETy;var t=Object.keys(e);var r=$tw.wiki.getTiddler(i.edgeTypeFilterTRef);var a={};a.raw=r&&r.fields.filter||\"\";a.pretty=_utils2.default.getPrettyFilter(a.raw);a.matches=_utils2.default.getEdgeTypeMatches(a.raw,e);a.whitelist=_utils2.default.getLookupTable(a.matches);return a});return t?r[t]:r}},{key:\"isEdgeTypeVisible\",value:function e(t){return _utils2.default.isEdgeTypeMatch(_EdgeType2.default.getInstance(t).id,this.getEdgeTypeFilter(\"raw\"))}},{key:\"getNodeFilter\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.nodeFilterTRef,\"tmap-nodeFilter\",function(){var e=_utils2.default.makeHashMap();var t=$tw.wiki.getTiddler(i.nodeFilterTRef);e.raw=t&&t.fields.filter||\"\";e.pretty=_utils2.default.getPrettyFilter(e.raw);e.compiled=$tw.wiki.compileFilter(e.raw);return e});return t?r[t]:r}},{key:\"getNodeData\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.mapTRef,\"tmap-map\",function(){return _utils2.default.parseFieldData(i.mapTRef,\"text\",{})});return t?r[t]:r}},{key:\"equals\",value:function t(i){return i===this||e.exists(i)&&new e(i).getRoot()===this.getRoot()}},{key:\"saveNodeData\",value:function e(){var t=this.getNodeData();for(var i=arguments.length,r=Array(i),a=0;a<i;a++){r[a]=arguments[a]}if(r.length===2){if(_typeof(r[1])===\"object\"){if(r[1]===null){delete t[r[0]]}else{t[r[0]]=Object.assign(t[r[0]]||{},r[1])}}}else if(r.length===1&&_typeof(r[0])===\"object\"){$tm.logger(\"log\",\"Storing data in\",this.mapTRef);Object.assign(t,r[0])}else{throw new(Function.prototype.bind.apply(_exception.InvalidArgumentException,[null].concat(r)))}_utils2.default.writeFieldData(this.mapTRef,\"text\",t,$tm.config.sys.jsonIndentation)}},{key:\"saveNodePosition\",value:function e(t){if(t.id&&t.x!=null&&t.y!=null){this.saveNodeData(t.id,{x:t.x,y:t.y})}}},{key:\"saveNodePositions\",value:function e(t){var i=this.getNodeData();for(var r in t){i[r]=i[r]||{};i[r].x=t[r].x;i[r].y=t[r].y}this.saveNodeData(i)}},{key:\"setCentralTopic\",value:function e(t){this.setConfig(\"central-topic\",t)}},{key:\"saveNodeStyle\",value:function e(t,i){var r=this.getNodeData(t)||{};var a={x:r.x,y:r.y};for(var n in r){delete r[n]}this.saveNodeData(t,_extends({},i,a))}},{key:\"_registerPaths\",value:function t(i,r){this.configTRef=e._getRootPath(i);this.mapTRef=this.configTRef+\"/map\";this.nodeFilterTRef=this.configTRef+\"/filter/nodes\";this.edgeTypeFilterTRef=this.configTRef+\"/filter/edges\";this.snapshotTRef=this.getRoot()+\"/snapshot\"}},{key:\"_clearCaches\",value:function e(){_utils2.default.getMatches(\"[prefix[\"+this.getRoot()+\"]]\").forEach(function(e){$tw.wiki.clearCache(e)})}},{key:\"_createView\",value:function t(){var i=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},r=i.isForce,a=i.protoView,n=i.isHidden;if(e.exists(this)){if(!r){return}this.destroy()}if(e.exists(a)){_utils2.default.cp(new e(a).getRoot(),this.configTRef,true)}var l={title:this.configTRef,id:_utils2.default.genUUID()};if(!n){l[$tm.field.viewMarker]=true}$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(this.configTRef),l));this.setEdgeTypeFilter(env.filter.defaultEdgeTypeFilter)}}],[{key:\"_getNodeIdFilterPart\",value:function e(t){var i=(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"?t.id:t;return\"[field:tmap.id[\"+i+\"]]\"}},{key:\"_getRootPath\",value:function t(i){if(i instanceof e){return i.configTRef}if(i instanceof $tw.Tiddler){i=i.fields.title}if(typeof i===\"string\"){var r=_utils2.default.getWithoutPrefix(i,$tm.path.views+\"/\");if(r&&!_utils2.default.hasSubString(r,\"/\")){return $tm.path.views+\"/\"+r}}}},{key:\"exists\",value:function t(i){if(!i){return false}if(i instanceof e){i=i.configTRef}else{i=e._getRootPath(i)}return _utils2.default.tiddlerExists(i)}}]);return e}();exports.default=ViewAbstraction;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/ViewAbstraction.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/Popup": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Popup",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function Popup(e,t){t=t||{};this._parentDomNode=e;this._domNode=document.createElement(\"div\");this._domNode.style.display=\"none\";this._domNode.className=\"tmap-popup\";this._parentDomNode.appendChild(this._domNode);$tw.utils.addClass(this._domNode,t.className);this._isEnabled=true;this._isPreventShowOrHide=false;this._isHideOnClick=!!t.hideOnClick;this._timeoutShow=null;this._timeoutHide=null;this._isDisplayNoneAfterAnimation=true;var i=parseInt(t.leavingDelay);this._hideDelayLeavingPopup=_utils2.default.isInteger(i)?i:200;i=parseInt(t.hideDelay);this._hideDelay=_utils2.default.isInteger(i)?i:200;i=parseInt(t.showDelay);this._showDelay=_utils2.default.isInteger(i)?i:200;_utils2.default.bindTo(this,[\"_show\",\"_hide\",\"_handleEnter\",\"_handleLeave\",\"_handleAnimationEnd\",\"_handleClick\"]);this._listeners={mouseenter:this._handleEnter,mouseleave:this._handleLeave,click:[this._handleClick,true]};var s=this._handleAnimationEnd;this._listeners[$tw.utils.convertEventName(\"animationEnd\")]=s;this._listeners[$tw.utils.convertEventName(\"transitionEnd\")]=s;_utils2.default.setDomListeners(\"add\",this._domNode,this._listeners,false)}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Popup\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */Popup.prototype._handleEnter=function(e){this._isPreventShowOrHide=true};Popup.prototype._handleLeave=function(e){this._isPreventShowOrHide=false;this.hide(this._hideDelayLeavingPopup)};Popup.prototype._handleClick=function(e){if(this._isHideOnClick){this._hide(true)}};Popup.prototype._handleAnimationEnd=function(){if(this._isDisplayNoneAfterAnimation){this._domNode.style.display=\"none\"}};Popup.prototype._hide=function(e){if(!e&&this._isPreventShowOrHide)return;this._isDisplayNoneAfterAnimation=true;this._isPreventShowOrHide=false;$tw.utils.removeClass(this._domNode,\"tmap-popup-active\")};Popup.prototype._show=function(e,t){if(this._isPreventShowOrHide||$tm.mouse.ctrlKey||!this._isEnabled){return}this._domNode.style.display=\"none\";$tw.utils.removeClass(this._domNode,\"tmap-popup-active\");this._domNode.removeAttribute(\"style\");_utils2.default.removeDOMChildNodes(this._domNode);var i=this._domNode.appendChild(document.createElement(\"div\"));if(typeof t===\"function\"){t(e,i)}else{i.innerHTML=t}if(!i.childNodes.length)return;var s=this._parentDomNode.getBoundingClientRect();var o=$tm.mouse.clientX;var n=$tm.mouse.clientY;this._domNode.style.display=\"block\";var d=this._domNode.getBoundingClientRect();var l=s.right-(o+d.width);var h=o-d.width-s.left;var a=l>h;var u=s.bottom-(n+d.height);var r=n-d.height-s.top;var p=u>r;var _=a?-15:d.width+15;var m=p?-15:d.height+15;this._domNode.style.left=o-s.left-_+\"px\";this._domNode.style.top=n-s.top-m+\"px\";this._isDisplayNoneAfterAnimation=false;$tw.utils.addClass(this._domNode,\"tmap-popup-active\")};Popup.prototype.show=function(e,t,i){this._clearTimeouts();i=_utils2.default.isInteger(i)?i:this._showDelay;this._timeoutShow=setTimeout(this._show,i,e,t)};Popup.prototype.hide=function(e,t){this._clearTimeouts();e=_utils2.default.isInteger(e)?e:this._hideDelay;if(t||e===0){this._hide(t)}else{this._timeoutHide=setTimeout(this._hide,e,t)}};Popup.prototype.setEnabled=function(e){this._isEnabled=e};Popup.prototype.isShown=function(){return this._domNode.style.display===\"block\"};Popup.prototype._clearTimeouts=function(){clearTimeout(this._timeoutShow);clearTimeout(this._timeoutHide);this._timeoutShow=undefined;this._timeoutHide=undefined};exports.default=Popup;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/Popup.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function t(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(t,n.key,n)}}return function(e,i,n){if(i)t(e.prototype,i);if(n)t(e,n);return e}}();function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\ntype: application/SelectionRectangle\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var SelectionRectangle=function(){function t(e,i){_classCallCheck(this,t);this.x1=e;this.x2=e;this.y1=i;this.y2=i}_createClass(t,[{key:\"span\",value:function t(e,i){this.x2=e;this.y2=i}},{key:\"getWidth\",value:function t(){return this.x2-this.x1}},{key:\"getHeight\",value:function t(){return this.y2-this.y1}},{key:\"getRect\",value:function t(){return[this.x1,this.y1,this.getWidth(),this.getHeight()]}},{key:\"isPointWithin\",value:function t(e){var i=e.x,n=e.y;var a=this.x1,r=this.x2,s=this.y1,u=this.y2;var h=Math.min(a,r);var c=Math.max(a,r);var l=Math.min(s,u);var o=Math.max(s,u);return h<i&&i<c&&l<n&&n<o}}]);return t}();exports.default=SelectionRectangle;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/SelectionRectangle.js.map\n",
"type": "application/SelectionRectangle",
"module-type": "library"
},
"/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js": {
"title": "/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js",
"text": "\"use strict\";\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/TypeDefs.js.map\n"
},
"$:/plugins/felixhayashi/tiddlymap/js/config/vis": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/config/vis",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/config/vis\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var visConfig={locale:\"en_EN\",clickToUse:false,autoResize:false,height:\"100%\",width:\"100%\",configure:{enabled:false},interaction:{dragNodes:true,dragView:true,hideEdgesOnDrag:false,hideNodesOnDrag:false,hover:true,navigationButtons:true,multiselect:true,selectable:true,selectConnectedEdges:true,tooltipDelay:600,zoomView:false,keyboard:{enabled:false,speed:{x:10,y:10,zoom:.02},bindToWindow:false}},manipulation:{initiallyActive:true},nodes:{shape:\"box\",widthConstraint:{maximum:160},heightConstraint:{valign:\"center\"},shadow:{enabled:false},color:{border:\"#2B7CE9\",background:\"#97C2FC\"}},edges:{smooth:{enabled:true},color:{color:\"#848484\",inherit:false},arrows:{to:{enabled:true}}},layout:{hierarchical:{enabled:false,levelSeparation:200,nodeSpacing:170,treeSpacing:230,sortMethod:\"directed\",parentCentralization:true,edgeMinimization:true,blockShifting:true,direction:\"UD\"}},physics:{forceAtlas2Based:{gravitationalConstant:-300,springLength:0,springConstant:.2,centralGravity:.015,damping:.4},hierarchicalRepulsion:{nodeDistance:120,centralGravity:0,springLength:100,springConstant:.01,damping:.09},solver:\"forceAtlas2Based\",stabilization:{enabled:true,iterations:1e3,updateInterval:10,onlyDynamicEdges:false,fit:false}}};exports.default=visConfig;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/VisConfig.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/environment": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/environment",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var i=1;i<arguments.length;i++){var a=arguments[i];for(var l in a){if(Object.prototype.hasOwnProperty.call(a,l)){e[l]=a[l]}}}return e};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/environment\ntype: application/javascript\n module-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var path=exports.path={pluginRoot:\"$:/plugins/felixhayashi/tiddlymap\",edgeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes\",nodeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes\",views:\"$:/plugins/felixhayashi/tiddlymap/graph/views\",options:\"$:/plugins/felixhayashi/tiddlymap/config\",dialogs:\"$:/plugins/felixhayashi/tiddlymap/dialog\",footers:\"$:/plugins/felixhayashi/tiddlymap/dialogFooter\",tempRoot:\"$:/temp/tmap\",tempStates:\"$:/temp/tmap/state\",tempPopups:\"$:/temp/tmap/state/popup\",localHolders:\"$:/temp/tmap/holders\"};var ref=exports.ref={defaultViewHolder:\"$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder\",graphBar:\"$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar\",sysUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\",visUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/vis/user\",welcomeFlag:\"$:/plugins/felixhayashi/tiddlymap/flag/welcome\",focusButton:\"$:/plugins/felixhayashi/tiddlymap/misc/focusButton\",sysMeta:\"$:/plugins/felixhayashi/tiddlymap/misc/meta\",liveTab:\"$:/plugins/felixhayashi/tiddlymap/hook/liveTab\",mainEditor:\"$:/plugins/felixhayashi/tiddlymap/hook/editor\",sidebarBreakpoint:\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\"};var misc=exports.misc={unknownEdgeLabel:\"tmap:undefined\",liveViewLabel:\"Live View\",defaultViewLabel:\"Default\",mainEditorId:\"main_editor\",arrows:{in:\"⇦\",out:\"➡\",bi:\"⇄\"}};var config=exports.config={sys:{field:{nodeLabel:\"caption\",nodeIcon:\"icon\",nodeInfo:\"description\",viewMarker:\"isview\"},liveTab:{fallbackView:misc.liveViewLabel},suppressedDialogs:{},edgeClickBehaviour:\"manager\",debug:\"false\",notifications:\"true\",popups:{enabled:\"true\",delay:\"600\",width:\"240px\",height:\"140px\"},jsonIndentation:\"1\",alwaysAddNodeIdToViewFilter:\"true\",editNodeOnCreate:\"false\",singleClickMode:\"false\",nodeFilterNeighbours:\"false\",editorMenuBar:{showNeighScopeButton:\"true\",showRasterMenuButton:\"true\",showScreenshotButton:\"true\"}}};var filter=exports.filter={nodeTypes:\"[prefix[\"+path.nodeTypes+\"]]\",edgeTypes:\"[prefix[\"+path.edgeTypes+\"]]\",views:\"[\"+config.sys.field.viewMarker+\"[true]]\",defaultEdgeTypeFilter:\"-[prefix[_]] -[[tw-body:link]] -[[tw-list:tags]] -[[tw-list:list]]\"};var allSelector=\"[all[tiddlers+shadows]!has[draft.of]]\";var s={allEdgeTypes:allSelector+\" +\"+filter.edgeTypes,allNodeTypes:allSelector+\" +\"+filter.nodeTypes,allViews:allSelector+\" +\"+filter.views,allPotentialNodes:\"[all[tiddlers]!is[system]!has[draft.of]]\"};var selector=exports.selector=_extends({},s,{allEdgeTypesById:s.allEdgeTypes+\" +[removeprefix[\"+path.edgeTypes+\"/]]\",allNodeTypesById:s.allNodeTypes+\" +[removeprefix[\"+path.nodeTypes+\"/]]\",allViewsByLabel:s.allViews+\" +[removeprefix[\"+path.views+\"/]]\"});\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/environment.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/exception": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/exception",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function r(r,t){for(var e=0;e<t.length;e++){var o=t[e];o.enumerable=o.enumerable||false;o.configurable=true;if(\"value\"in o)o.writable=true;Object.defineProperty(r,o.key,o)}}return function(t,e,o){if(e)r(t.prototype,e);if(o)r(t,o);return t}}();function _classCallCheck(r,t){if(!(r instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(r,t){if(!r){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:r}function _inherits(r,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}r.prototype=Object.create(t&&t.prototype,{constructor:{value:r,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(r,t):r.__proto__=t}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/exception\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TiddlyMapError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);var o=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r));o.payload=e;return o}_createClass(t,[{key:\"getPayload\",value:function r(){return this.payload}}]);return t}(Error);var EnvironmentError=exports.EnvironmentError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Critical parts of the underlying system changed: \"+r))}return t}(TiddlyMapError);var DependencyError=exports.DependencyError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"TiddlyMap cannot run without: : \"+r))}return t}(TiddlyMapError);var MissingOverrideError=exports.MissingOverrideError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r.constructor.name+' does not override method \"'+e+'\"'))}return t}(TiddlyMapError);var ResourceNotFoundException=exports.ResourceNotFoundException=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);for(var e=arguments.length,o=Array(e>1?e-1:0),n=1;n<e;n++){o[n-1]=arguments[n]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Cannot resolve \"+r,o))}return t}(TiddlyMapError);var InvalidArgumentException=exports.InvalidArgumentException=function(r){_inherits(t,r);function t(){_classCallCheck(this,t);for(var r=arguments.length,e=Array(r),o=0;o<r;o++){e[o]=arguments[o]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Invalid or missing argument provided\",e))}return t}(TiddlyMapError);\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/exceptions.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/URL": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/URL",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/URL\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/**\n * <<<\n * Lightweight URL manipulation with JavaScript. This library is\n * independent of any other libraries and has pretty simple interface\n * and lightweight code-base. Some ideas of query string parsing\n * had been taken from Jan Wolter.\"\n *\n * @see http://unixpapa.com/js/querystring.html\n * @license MIT\n * @author Mykhailo Stadnyk <mikhus@gmail.com>\n * <<< https://github.com/Mikhus/jsurl\n *\n * @class\n * @param {string} url\n */function Url(t){this.paths=function(t){var e=\"\",r=0,o;if(t&&t.length&&t+\"\"!==t){if(this.isAbsolute()){e=\"/\"}for(o=t.length;r<o;r++){t[r]=encode(t[r])}this.path=e+t.join(\"/\")}t=(this.path.charAt(0)===\"/\"?this.path.slice(1):this.path).split(\"/\");for(r=0,o=t.length;r<o;r++){t[r]=decode(t[r])}return t};this.encode=encode;this.decode=decode;this.isAbsolute=function(){return this.protocol||this.path.charAt(0)===\"/\"};this.toString=function(){return(this.protocol&&this.protocol+\"://\")+(this.user&&encode(this.user)+(this.pass&&\":\"+encode(this.pass))+\"@\")+(this.host&&this.host)+(this.port&&\":\"+this.port)+(this.path&&this.path)+(this.query.toString()&&\"?\"+this.query)+(this.hash&&\"#\"+encode(this.hash))};parse(this,t)}var map={protocol:\"protocol\",host:\"hostname\",port:\"port\",path:\"pathname\",query:\"search\",hash:\"hash\"},defaultPorts={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},parse=function t(e,r){var o=document,s=o.createElement(\"a\"),r=r||o.location.href,i=r.match(/\\/\\/(.*?)(?::(.*?))?@/)||[],n;s.href=r;for(n in map){e[n]=s[map[n]]||\"\"}e.protocol=e.protocol.replace(/:$/,\"\");e.query=e.query.replace(/^\\?/,\"\");e.hash=decode(e.hash.replace(/^#/,\"\"));e.user=decode(i[1]||\"\");e.pass=decode(i[2]||\"\");e.port=defaultPorts[e.protocol]==e.port||e.port==0?\"\":e.port;if(!e.protocol&&!/^([a-z]+:)?\\/\\//.test(r)){var h=new Url(o.location.href.match(/(.*\\/)/)[0]),a=h.path.split(\"/\"),p=e.path.split(\"/\"),c=[\"protocol\",\"user\",\"pass\",\"host\",\"port\"],f=c.length;a.pop();for(n=0;n<f;n++){e[c[n]]=h[c[n]]}while(p[0]==\"..\"){a.pop();p.shift()}e.path=(r.charAt(0)!=\"/\"?a.join(\"/\"):\"\")+\"/\"+p.join(\"/\")}else{e.path=e.path.replace(/^\\/?/,\"/\")}e.paths((e.path.charAt(0)==\"/\"?e.path.slice(1):e.path).split(\"/\"));parseQs(e)},encode=function t(e){return encodeURIComponent(e).replace(/'/g,\"%27\")},decode=function t(e){e=e.replace(/\\+/g,\" \");e=e.replace(/%([ef][0-9a-f])%([89ab][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r,o){var s=parseInt(e,16)-224,i=parseInt(r,16)-128;if(s==0&&i<32){return t}var n=parseInt(o,16)-128,h=(s<<12)+(i<<6)+n;if(h>65535){return t}return String.fromCharCode(h)});e=e.replace(/%([cd][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r){var o=parseInt(e,16)-192;if(o<2){return t}var s=parseInt(r,16)-128;return String.fromCharCode((o<<6)+s)});e=e.replace(/%([0-7][0-9a-f])/gi,function(t,e){return String.fromCharCode(parseInt(e,16))});return e},parseQs=function t(e){var r=e.query;e.query=new function(t){var e=/([^=&]+)(=([^&]*))?/g,r;while(r=e.exec(t)){var o=decodeURIComponent(r[1].replace(/\\+/g,\" \")),s=r[3]?decode(r[3]):\"\";if(this[o]!=null){if(!(this[o]instanceof Array)){this[o]=[this[o]]}this[o].push(s)}else{this[o]=s}}this.clear=function(){for(var t in this){if(!(this[t]instanceof Function)){delete this[t]}}};this.count=function(){var t=0,e;for(e in this){if(!(this[e]instanceof Function)){t++}}return t};this.isEmpty=function(){return this.count()===0};this.toString=function(){var t=\"\",e=encode,r,o;for(r in this){if(this[r]instanceof Function){continue}if(this[r]instanceof Array){var s=this[r].length;if(s){for(o=0;o<s;o++){t+=t?\"&\":\"\";t+=e(r)+\"=\"+e(this[r][o])}}else{t+=(t?\"&\":\"\")+e(r)+\"=\"}}else{t+=t?\"&\":\"\";t+=e(r)+\"=\"+e(this[r])}}return t}}(r)};exports.default=Url;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/url.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.bindTo=exports.getNearestRasterPosition=exports.mod=exports.removeDOMChildNodes=exports.setDomListeners=exports.merge=exports.getRandomLabel=exports.getFirstElementByClassName=exports.pickRandom=exports.hasKeyWithPrefix=exports.getWithoutPrefix=exports.getPropertiesByPrefix=exports.removeArrayElement=exports.isTrue=exports.replaceAll=exports.isInteger=exports.findAndRemoveClassNames=exports.getAncestorWithClass=exports.makeHashMap=exports.getWithoutNewLines=exports.joinAndWrap=exports.parseJSON=exports.hasSubString=exports.inArray=exports.getRandomInt=exports.isEqual=exports.identity=exports.base64=exports.startsWith=exports.getBasename=exports.escapeRegex=exports.hasElements=exports.ucFirst=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var ucFirst=exports.ucFirst=function e(t){return t&&t[0].toUpperCase()+t.slice(1)};var hasElements=exports.hasElements=function e(t){return Object.keys(t).length>0};var escapeRegex=exports.escapeRegex=function e(t){return t.replace(/[-$^?.+*[\\]\\\\(){}|]/g,\"\\\\$&\")};var getBasename=exports.getBasename=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"/\";return t.substring(t.lastIndexOf(r)+1)};var startsWith=exports.startsWith=function e(t,r){return t.substring(0,r.length)===r};var base64=exports.base64=typeof window===\"undefined\"?function(e){return new Buffer(e).toString(\"base64\")}:window.btoa.bind(window);var identity=exports.identity=function e(t){return(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"&&t!==null?JSON.stringify(Object.keys(t).sort().map(function(e){return[e,t[e]]})):null};var isEqual=exports.isEqual=function e(t,r){return identity(t)===identity(r)};var getRandomInt=exports.getRandomInt=function e(t,r){return Math.floor(Math.random()*(r-t)+t)};var inArray=exports.inArray=function e(t,r){return r.indexOf(t)!==-1};var hasSubString=exports.hasSubString=function e(t,r){return t.indexOf(r)!==-1};var parseJSON=exports.parseJSON=function e(t,r){try{return JSON.parse(t)}catch(e){return r}};var joinAndWrap=exports.joinAndWrap=function e(t,r,n){var o=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\" \";return r+t.join(n+o+r)+n};var getWithoutNewLines=exports.getWithoutNewLines=function e(t){return typeof t===\"string\"?t.replace(/[\\n\\r]/g,\" \"):t};var makeHashMap=exports.makeHashMap=function e(t){var r=Object.create(null);Object.defineProperty(r,\"hasOwnProperty\",{enumerable:false,configurable:false,writable:false,value:Object.prototype.hasOwnProperty.bind(r)});if(t){for(var n in t){if(t.hasOwnProperty(n)){r[n]=t[n]}}}return r};var getAncestorWithClass=exports.getAncestorWithClass=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"||typeof r!==\"string\"){return}while(t.parentNode&&t.parentNode!==document){t=t.parentNode;if(t.classList.contains(r)){return t}}};var findAndRemoveClassNames=exports.findAndRemoveClassNames=function e(t){for(var r=t.length;r--;){var n=document.getElementsByClassName(t[r]);for(var o=n.length;o--;){n[o].classList.remove(t[r])}}};var isInteger=exports.isInteger=Number.isInteger||function(e){return typeof e===\"number\"&&isFinite(e)&&Math.floor(e)===e};var replaceAll=exports.replaceAll=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];for(var o=n.length;o--;){var s=n[o];var i=r;if(Array.isArray(s)){i=s[1];s=s[0]}t=t.replace(s,i)}return t};var isTrue=exports.isTrue=function e(t,r){if(t==null){return!!r}else if(typeof t===\"string\"){var n=parseInt(t);return isNaN(n)?t===\"true\":n!==0}else if(typeof t===\"boolean\"){return t}else if(typeof t===\"number\"){return n!==0}return false};var removeArrayElement=exports.removeArrayElement=function e(t,r){var n=t.indexOf(r);if(n>-1){return t.splice(n,1)[0]}};var getPropertiesByPrefix=exports.getPropertiesByPrefix=function e(t,r,n){var o=makeHashMap();for(var s in t){if(startsWith(s,r)){o[n?s.substr(r.length):s]=t[s]}}return o};var getWithoutPrefix=exports.getWithoutPrefix=function e(t,r){return startsWith(t,r)?t.substr(r.length):t};var hasKeyWithPrefix=exports.hasKeyWithPrefix=function e(t,r){for(var n in t){if(startsWith(n,r)){return true}}return false};var pickRandom=exports.pickRandom=function e(t){return t[getRandomInt(0,t.length-1)]};var getFirstElementByClassName=exports.getFirstElementByClassName=function e(t,r,n){var o=(r||document).getElementsByClassName(t)[0];if(!o&&(typeof n===\"boolean\"?n:true)){var s='Missing element with class \"'+t+'\" inside '+r;throw new _exception.EnvironmentError(s)}return o};var getRandomLabel=exports.getRandomLabel=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var r=pickRandom([\"exciting\",\"notable\",\"epic\",\"new\",\"fancy\",\"great\",\"cool\",\"fresh\",\"funky\",\"clever\"]);var n=(t.object||pickRandom([\"concept\",\"idea\",\"thought\",\"topic\",\"subject\"]))+(t.plural?\"s\":\"\");return\"My \"+r+\" \"+n};var _merge=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"){t={}}for(var n in r){if(r.hasOwnProperty(n)){if(r[n]!=null){t[n]=_typeof(r[n])===\"object\"?e(t[n],r[n]):r[n]}}}return t};var merge=exports.merge=function e(t){for(var r=arguments.length,n=Array(r>1?r-1:0),o=1;o<r;o++){n[o-1]=arguments[o]}for(var s=0,i=n.length;s<i;s++){var a=n[s];if(a!=null&&(typeof a===\"undefined\"?\"undefined\":_typeof(a))===\"object\"){t=_merge(t,a)}}return t};var setDomListeners=exports.setDomListeners=function e(t,r,n,o){o=typeof o===\"boolean\"?o:false;t=t+\"EventListener\";for(var s in n){var i=n[s];if(typeof i===\"function\"){r[t](s,i,o)}else{r[t](s,i[0],typeof i[1]===\"boolean\"?i[1]:o)}}};var removeDOMChildNodes=exports.removeDOMChildNodes=function e(t){for(var r=t.childNodes.length;r--;){t.removeChild(t.childNodes[r])}};var mod=exports.mod=function e(t,r){var n=t%r;return Math.floor(n>=0?n:n+r)};var getNearestRasterPosition=exports.getNearestRasterPosition=function e(t,r){var n=t.x,o=t.y;var s=r/2;var i=mod(n,r);var a=mod(o,r);return{x:i<s?n-i:n-i+r,y:a<s?o-a:o-a+r}};var bindTo=exports.bindTo=function e(t,r){for(var n=r.length;n--;){var o=t[r[n]];t[r[n]]=o.bind(t)}};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/basic.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var generateDraftTitle=exports.generateDraftTitle=function e(n){var r=0,t=void 0;do{t=\"Draft \"+(r?r+1+\" \":\"\")+\"of '\"+n+\"'\";r++}while($tw.wiki.tiddlerExists(t));return t};var makeDraftTiddler=exports.makeDraftTiddler=function e(n){var r=$tw.wiki.findDraft(n);if(r){return $tw.wiki.getTiddler(r)}var t=$tw.wiki.getTiddler(n);r=generateDraftTitle(n);var l=new $tw.Tiddler(t,{title:r,\"draft.title\":n,\"draft.of\":n},$tw.wiki.getModificationFields());$tw.wiki.addTiddler(l);return l};var getFullScreenApis=exports.getFullScreenApis=function e(){var n=document,r=n.body,t={_requestFullscreen:r.webkitRequestFullscreen!==undefined?\"webkitRequestFullscreen\":r.mozRequestFullScreen!==undefined?\"mozRequestFullScreen\":r.msRequestFullscreen!==undefined?\"msRequestFullscreen\":r.requestFullscreen!==undefined?\"requestFullscreen\":\"\",_exitFullscreen:n.webkitExitFullscreen!==undefined?\"webkitExitFullscreen\":n.mozCancelFullScreen!==undefined?\"mozCancelFullScreen\":n.msExitFullscreen!==undefined?\"msExitFullscreen\":n.exitFullscreen!==undefined?\"exitFullscreen\":\"\",_fullscreenElement:n.webkitFullscreenElement!==undefined?\"webkitFullscreenElement\":n.mozFullScreenElement!==undefined?\"mozFullScreenElement\":n.msFullscreenElement!==undefined?\"msFullscreenElement\":n.fullscreenElement!==undefined?\"fullscreenElement\":\"\",_fullscreenChange:n.webkitFullscreenElement!==undefined?\"webkitfullscreenchange\":n.mozFullScreenElement!==undefined?\"mozfullscreenchange\":n.msFullscreenElement!==undefined?\"MSFullscreenChange\":n.fullscreenElement!==undefined?\"fullscreenchange\":\"\"};if(!t._requestFullscreen||!t._exitFullscreen||!t._fullscreenElement){return null}else{return t}};var flatten=exports.flatten=function e(n){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l=r.prefix||\"\";var i={};function u(e,n){Object.keys(e).forEach(function(f){var s=e[f];var c=r.safe&&Array.isArray(s);var a=Object.prototype.toString.call(s);var d=a===\"[object Object]\"||a===\"[object Array]\";var o=n?n+t+f:l+f;if(!c&&d){return u(s,o)}i[o]=s})}u(n);return i};var unflatten=exports.unflatten=function e(n){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l={};if(Object.prototype.toString.call(n)!==\"[object Object]\"){return n}function i(e){var n=Number(e);return isNaN(n)||e.indexOf(\".\")!==-1?e:n}Object.keys(n).forEach(function(u){var f=u.split(t);var s=i(f.shift());var c=i(f[0]);var a=l;while(c!==undefined){if(a[s]===undefined){a[s]=typeof c===\"number\"&&!r.object?[]:{}}a=a[s];if(f.length>0){s=i(f.shift());c=i(f[0])}}a[s]=e(n[u],r)});return l};var genUUID=exports.genUUID=function(){var e=\"0123456789abcdefghijklmnopqrstuvwxyz\".split(\"\");return function(){var n=e,r=new Array(36);var t=0,l;for(var i=0;i<36;i++){if(i==8||i==13||i==18||i==23){r[i]=\"-\"}else if(i==14){r[i]=\"4\"}else{if(t<=2)t=33554432+Math.random()*16777216|0;l=t&15;t=t>>4;r[i]=n[i==19?l&3|8:l]}}return r.join(\"\")}}();\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/thirdParty.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.getArrayValuesAsHashmapKeys=exports.getLookupTable=exports.keyOfItemWithProperty=exports.keysOfItemsWithProperty=exports.getDublicates=exports.getId=exports.refreshDataSet=exports.drawRaster=exports.getPrettyFilter=exports.groupByProperty=exports.isEdgeTypeMatch=exports.getEdgeTypeMatches=exports.getDataUri=exports.convert=exports.getValues=exports.getIterableCollection=exports.getLabel=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var getLabel=exports.getLabel=function e(t,r){var i=wikiUtils.getTiddler(t);return(i&&i.fields[r]?i.fields[r]:i.fields.title).replace(\"\\\\n\",\"\\n\")};var getIterableCollection=exports.getIterableCollection=function e(t){return t instanceof _vis2.default.DataSet?t.get():t};var getValues=exports.getValues=function e(t){if(Array.isArray(t)){return t}else if(t instanceof _vis2.default.DataSet){return t.get({returnType:\"Array\"})}var r=[];var i=Object.keys(t);for(var a=i.length;a--;){r.push(t[i[a]])}return r};var convert=exports.convert=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"){throw new _exception.InvalidArgumentException(t,r)}if(r===\"object\"){r=\"hashmap\"}var i={array:function e(t){return getValues(t)},hashmap:function e(t){return t instanceof _vis2.default.DataSet?t.get({returnType:\"Object\"}):t},dataset:function e(t){return t instanceof _vis2.default.DataSet?t:!Array.isArray(t)?getValues(t):new _vis2.default.DataSet(t)}};return i[r](t)};var getDataUri=exports.getDataUri=function e(t,r,i){var a=wikiUtils.getTiddler(t);r=r||a.fields.type||\"image/svg+xml\";var s=a.fields.text;var o=$tw.config.contentTypeInfo[r].encoding;if(r===\"image/svg+xml\"){s=s.replace(/\\r?\\n|\\r/g,\" \");if(!basicUtils.hasSubString(\"xmlns\",s)){s=s.replace(/<svg/,'<svg xmlns=\"http://www.w3.org/2000/svg\"')}}if(i&&o!==\"base64\"){o=\"base64\";s=basicUtils.base64(s)}return\"data:\"+r+\";\"+o+\",\"+s};var eTyFiltAutoPrefix=\"[all[]] \";var getEdgeTypeMatches=exports.getEdgeTypeMatches=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";var r=arguments[1];if(!r){r=wikiUtils.getTiddlersByPrefix($tm.path.edgeTypes+\"/\",{iterator:\"eachTiddlerPlusShadows\",removePrefix:true})}if(r!=null&&!Array.isArray(r)){r=Object.keys(r)}return wikiUtils.getMatches(eTyFiltAutoPrefix+t,r)};var isEdgeTypeMatch=exports.isEdgeTypeMatch=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";return wikiUtils.isMatch(t,eTyFiltAutoPrefix+r)};var groupByProperty=exports.groupByProperty=function e(t,r){t=getIterableCollection(t);var i=basicUtils.makeHashMap();var a=Object.keys(t);for(var s in a){var o=t[a[s]];var n=o[r];if(n==null){throw\"Cannot group by property \"+r}else{if(!Array.isArray(i[n])){i[n]=[]}i[n].push(o)}}return i};var getPrettyFilter=exports.getPrettyFilter=function e(t){t=t.trim().replace(\"][\",\"] [\");var r=/[+-]?\\[.+?[\\]\\}\\>]\\]/g;var i=t.match(r);t=t.replace(r,\" [] \").trim();var a=t.split(/\\s+/);var s=0;var o=[];for(var n=0,l=a.length;n<l;n++){o[n]=a[n]===\"[]\"?i[s++]:a[n]}return o.join(\"\\n\")};var drawRaster=exports.drawRaster=function e(t,r,i,a){var s=arguments.length>4&&arguments[4]!==undefined?arguments[4]:\"#D9D9D9\";var o=basicUtils.getNearestRasterPosition(i,a),n=o.x,l=o.y;var u=t.canvas.width/r;var p=t.canvas.height/r;var f=a*2;var v=Math.ceil(u/a/2)*a+f;var c=Math.ceil(p/a/2)*a+f;var y=n-v;var d=n+v;var g=l-c;var h=l+c;t.beginPath();for(var b=y;b<d;b+=a){t.moveTo(b,g);t.lineTo(b,h)}for(var x=g;x<=h;x+=a){t.moveTo(y,x);t.lineTo(d,x)}t.strokeStyle=s;t.fillStyle=s;t.stroke()};var refreshDataSet=exports.refreshDataSet=function e(t,r){var i=t.get({returnType:\"Object\"});var a=[];var s=[];var o=[];var n=[];for(var l in r){if(i[l]){if(basicUtils.isEqual(i[l],r[l])){continue}s.push(l);t.remove(l)}else{a.push(l)}if(r[l].x===undefined){o.push(l)}t.add(r[l])}for(var u in i){if(!r[u]){n.push(u);t.remove(u)}}return{withoutPosition:o,inserted:a,updated:s,removed:n}};var getId=exports.getId=function e(t){return wikiUtils.getTiddler(t).fields[\"tmap.id\"]};var getDublicates=exports.getDublicates=function e(t){var r=getId(t);if(!r){return[]}var i=wikiUtils.getTiddlersWithField(\"tmap.id\",r,{limit:2});delete i[wikiUtils.getTiddlerRef(t)];return Object.keys(i)};var keysOfItemsWithProperty=exports.keysOfItemsWithProperty=function e(t,r,i,a){t=getIterableCollection(t);var s=Object.keys(t);var o=[];a=typeof a===\"number\"?a:s.length;for(var n=0,l=s.length;n<l;n++){var u=s[n];if(_typeof(t[u])===\"object\"&&t[u][r]){if(!i||t[u][r]===i){o.push(u);if(o.length===a){break}}}}return o};var keyOfItemWithProperty=exports.keyOfItemWithProperty=function e(t,r,i){return keysOfItemsWithProperty(t,r,i,1)[0]};var getLookupTable=exports.getLookupTable=function e(t,r){t=getIterableCollection(t);var i=basicUtils.makeHashMap();var a=Object.keys(t);for(var s=0,o=a.length;s<o;s++){var n=a[s];var l=r?t[n][r]:t[n];var u=typeof l===\"undefined\"?\"undefined\":_typeof(l);if(u===\"string\"&&l!==\"\"||u===\"number\"){if(!i[l]){i[l]=r?t[n]:true;continue}}if(r){throw new Error('Cannot use \"'+l+'\" as lookup table index')}}return i};var getArrayValuesAsHashmapKeys=exports.getArrayValuesAsHashmapKeys=getLookupTable;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/tmap.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/utils": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/utils",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.utils=undefined;var _extends=Object.assign||function(i){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var e in t){if(Object.prototype.hasOwnProperty.call(t,e)){i[e]=t[e]}}}return i};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/utils\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _thirdParty=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\");var thirdPartyUtils=_interopRequireWildcard(_thirdParty);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);var _tmap=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\");var tMapUtils=_interopRequireWildcard(_tmap);function _interopRequireWildcard(i){if(i&&i.__esModule){return i}else{var r={};if(i!=null){for(var t in i){if(Object.prototype.hasOwnProperty.call(i,t))r[t]=i[t]}}r.default=i;return r}}var utils=exports.utils=_extends({},basicUtils,thirdPartyUtils,wikiUtils,tMapUtils);exports.default=utils;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/utils.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.touch=exports.addTiddler=exports.getTiddlersByPrefix=exports.getTiddlerWithField=exports.getTiddlersWithField=exports.deleteByPrefix=exports.cp=exports.mv=exports.addTWlisteners=exports.getChildWidgetByProperty=exports.getMergedTiddlers=exports.isSystemOrDraft=exports.isDraft=exports.setText=exports.getText=exports.isLeftVersionGreater=exports.getEntry=exports.setEntry=exports.clone=exports.writeFieldData=exports.parseFieldData=exports.isPreviewed=exports.notify=exports.registerTransclude=exports.getElementNode=exports.getTiddlerNode=exports.getTranscludeNode=exports.isMatch=exports.getMatches=exports.moveFieldValues=exports.deleteTiddlers=exports.setField=exports.setSidebarTab=exports.tiddlerExists=exports.getField=exports.getTiddler=exports.getTiddlerRef=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var getTiddlerRef=exports.getTiddlerRef=function e(t){if(t instanceof $tw.Tiddler){return t.fields.title}else if(typeof t===\"string\"){return t}else{throw new _exception.InvalidArgumentException(t)}};var getTiddler=exports.getTiddler=function e(t){return $tw.wiki.getTiddler(t instanceof $tw.Tiddler?t.fields.title:t)};var getField=exports.getField=function e(t,r){var i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"\";var d=getTiddler(t);return!d?i:d.fields[r]||i};var tiddlerExists=exports.tiddlerExists=function e(t){if(!t){return false}var r=getTiddlerRef(t);return Boolean(r&&($tw.wiki.tiddlerExists(r)||$tw.wiki.isShadowTiddler(r)))};var setSidebarTab=exports.setSidebarTab=function e(t){setText(getTiddlersByPrefix(\"$:/state/tab/sidebar-\")[0],t)};var setField=exports.setField=function e(t,r,i){if(!t||!r){return}var d=getTiddlerRef(t);var s=_defineProperty({title:d},r,i);var n=$tw.wiki.getTiddler(d,true);if(r!==\"text\"&&n&&!n.fields.text){s.text=\"\"}n=new $tw.Tiddler(n,s);$tw.wiki.addTiddler(n);return n};var deleteTiddlers=exports.deleteTiddlers=function e(t){var r=Object.keys(t);var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");for(var d=r.length;d--;){var s=getTiddlerRef(t[r[d]]);if(!$tw.wiki.tiddlerExists(t[r[d]])){continue}var n=i.indexOf(s);if(n!==-1){i.splice(n,1);setField(\"$:/StoryList\",\"list\",i)}$tw.wiki.deleteTiddler(s)}};var moveFieldValues=exports.moveFieldValues=function e(t,r,i,d,s){if(t===r)return;var n=s||$tw.wiki.allTitles();for(var l=n.length;l--;){var a=getTiddler(n[l]);if(a.isDraft()||!a.fields[t]){continue}if(!d&&$tw.wiki.isSystemTiddler(n[l])){continue}var o=_defineProperty({},r,a.fields[t]);if(i){o[t]=undefined}$tw.wiki.addTiddler(new $tw.Tiddler(a,o))}};var getMatches=exports.getMatches=function e(t,r,i){var d=undefined;var s=$tw.wiki;if(typeof t===\"string\"){t=s.compileFilter(t)}if(r!=null&&(typeof r===\"undefined\"?\"undefined\":_typeof(r))===\"object\"){if(!Array.isArray(r)){r=Object.keys(r)}d=function e(t){for(var i=r.length;i--;){var d=s.getTiddler(r[i]);t(d,r[i])}}}return t.call(s,d,i)};var isMatch=exports.isMatch=function e(t,r){return getTiddlerRef(t)===getMatches(r,[getTiddlerRef(t)])[0]};var getTranscludeNode=exports.getTranscludeNode=function e(t,r){return{type:\"transclude\",attributes:{tiddler:{type:\"string\",value:getTiddlerRef(t)}},children:[],isBlock:!!r}};var getTiddlerNode=exports.getTiddlerNode=function e(t){return{type:\"tiddler\",attributes:{tiddler:{type:\"string\",value:getTiddlerRef(t)}},children:[]}};var getElementNode=exports.getElementNode=function e(t,r,i){return{type:\"element\",tag:t,attributes:{class:{type:\"string\",value:r}},children:i?[{type:\"text\",text:i}]:[]}};var registerTransclude=exports.registerTransclude=function e(t,r,i){basicUtils.removeArrayElement(t.children,t[r]);t[r]=t.makeChildWidget(getTranscludeNode(i,true));t.children.push(t[r]);return t[r]};var notify=exports.notify=function e(t){var r=\"$:/temp/tiddlymap/notify\";$tw.wiki.addTiddler(new $tw.Tiddler({title:r,text:t}));$tw.notifier.display(r)};var isPreviewed=exports.isPreviewed=function e(t){if(!t){return false}if(t.domNode.isTiddlyWikiFakeDom){return true}if(t.getVariable(\"tv-tiddler-preview\")){return true}else{var r=\"tc-tiddler-preview-preview\";return!!basicUtils.getAncestorWithClass(t.parentDomNode,r)}};var parseFieldData=exports.parseFieldData=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"text\";var i=arguments[2];var d=getTiddler(t);if(!d){return i}return basicUtils.parseJSON(d.fields[r],i)};var writeFieldData=exports.writeFieldData=function e(t,r,i,d){if((typeof i===\"undefined\"?\"undefined\":_typeof(i))!==\"object\"){return}d=parseInt(d);d=d>0&&r===\"text\"?d:0;setField(t,r,JSON.stringify(i,null,d))};var clone=exports.clone=function e(t,r){setField(t,\"title\",r)};var setEntry=exports.setEntry=function e(t,r,i){$tw.wiki.setText(getTiddlerRef(t),null,r,i)};var getEntry=exports.getEntry=function e(t,r,i){var d=$tw.wiki.getTiddlerData(getTiddlerRef(t),{});return d[r]==null?i:d[r]};var isLeftVersionGreater=exports.isLeftVersionGreater=function e(t,r){return t!==r&&$tw.utils.checkVersions(t,r)};var getText=exports.getText=function e(t,r){return getField(t,\"text\",r)};var setText=exports.setText=function e(t,r){setField(t,\"text\",r)};var isDraft=exports.isDraft=function e(t){var r=getTiddler(t);return r&&r.isDraft()};var isSystemOrDraft=exports.isSystemOrDraft=function e(t){return $tw.wiki.isSystemTiddler(getTiddlerRef(t))||isDraft(t)};var getMergedTiddlers=exports.getMergedTiddlers=function e(t,r){if(!Array.isArray(t)){return}for(var i=t.length;i--;){t[i]=getTiddler(t[i])}if(!t.length){return}t.push({title:r||t[0].fields.title},$tw.wiki.getModificationFields(),$tw.wiki.getCreationFields());t.unshift(null);return new(Function.prototype.bind.apply($tw.Tiddler,t))};var getChildWidgetByProperty=exports.getChildWidgetByProperty=function e(t,r,i){var d=t.children;for(var s=d.length;s--;){var n=d[s];if(n[r]===i){return n}else{n=e(n,r,i);if(n){return n}}}};var addTWlisteners=exports.addTWlisteners=function e(t,r,i){for(var d in t){r.addEventListener(d,t[d].bind(i))}};var mv=exports.mv=function e(t,r,i,d){if(t===r||!t||!r){return}i=typeof i===\"boolean\"?i:false;d=typeof d===\"boolean\"?d:true;var s=getTiddlersByPrefix(t);var n=basicUtils.makeHashMap();for(var l=s.length;l--;){var a=s[l];var o=a.replace(t,r);if($tw.wiki.tiddlerExists(o)&&!i){return}n[a]=o}for(var f in n){setField(f,\"title\",n[f]);if(d){$tw.wiki.deleteTiddler(f)}}return n};var cp=exports.cp=function e(t,r,i){return mv(t,r,i,false)};var deleteByPrefix=exports.deleteByPrefix=function e(t,r){if(!t){return}r=r||$tw.wiki.allTitles();var i=[];for(var d=r.length;d--;){if(basicUtils.startsWith(r[d],t)){$tw.wiki.deleteTiddler(r[d]);i.push(i[d])}}return i};var getTiddlersWithField=exports.getTiddlersWithField=function e(t,r){var i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var d=i.tiddlers||$tw.wiki.allTitles();var s=i.isIncludeDrafts===true;var n=basicUtils.makeHashMap();var l=Object.keys(d);var a=$tw.utils.hop;var o=i.limit||0;for(var f=l.length;f--;){var u=getTiddler(d[l[f]]);var p=u.fields;if(a(p,t)&&(!a(p,\"draft.of\")||s)){if(!r||p[t]===r){n[p.title]=u;if(--o===0){break}}}}return n};var getTiddlerWithField=exports.getTiddlerWithField=function e(t,r){return Object.keys(getTiddlersWithField(t,r,{limit:1}))[0]};var getTiddlersByPrefix=exports.getTiddlersByPrefix=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=r.removePrefix===true;var d=[];var s=$tw.wiki[r.iterator||\"each\"];s(function(e,r){if(basicUtils.startsWith(r,t)){d.push(i?basicUtils.getWithoutPrefix(r,t):r)}});return d};var addTiddler=exports.addTiddler=function e(t,r){var i=getTiddler(t);if(!r&&i){return i}i=new $tw.Tiddler({title:t,text:\"\"},$tw.wiki.getModificationFields(),$tw.wiki.getCreationFields());$tw.wiki.addTiddler(i);return i};var touch=exports.touch=function e(t){if(!t){return}var r=new $tw.Tiddler(getTiddler(t),$tw.wiki.getModificationFields());$tw.wiki.addTiddler(r)};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/wiki.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/macro/tmap": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/macro/tmap",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.params=exports.name=exports.run=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\ntitle: $:/plugins/felixhayashi/tiddlymap/js/macro/tmap\ntype: application/javascript\nmodule-type: macro\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var name=\"tmap\";var params=getParamSlots(5);function run(){this.substVarRefs=this.substituteVariableReferences;var e=command[arguments[0]];var t=null;if(typeof e===\"function\"){var r=Array.prototype.slice.call(arguments,1);t=e.apply(this,r)}return typeof t===\"string\"?t:\"\"}function getParamSlots(e){var t=[];for(var r=0;r<e;r++){t.push({name:\"arg\"+r})}return t}var command=_utils2.default.makeHashMap();command.basename=function(e){var t=this.getVariable(\"currentTiddler\");return _utils2.default.getBasename(t,e)};command.datauri=function(e,t){return _utils2.default.getDataUri(e,t,true)};command.testJSON=function(e){var t=$tw.wiki.getTiddler(this.getVariable(\"currentTiddler\"));try{JSON.parse(t.fields[e]);return\"valid\"}catch(e){return\"malformed\"}};command.splitAndSelect=function(e,t){var r=this.getVariable(\"currentTiddler\");var a=r.split(e)[t];return a!=null?a:r};command.concat=function(){var e=\"\";for(var t=1,r=arguments.length;t<r;t++){e+=arguments[t]}return e};command.uuid=function(){return _utils2.default.genUUID()};command.regRepl=function(){var e=this.substVarRefs(arguments[0]);var t=arguments[1];var r=this.substVarRefs(arguments[2]);var a=this.substVarRefs(arguments[4]);return e.replace(new RegExp(t,a),r)};command.halfOfString=function(){var e=this.substVarRefs(arguments[0]);if(!e){return\"\"}return e.substr(0,Math.ceil(e.length/2))};command.isETyVisible=function(e,t){e=new _ViewAbstraction2.default(e);var r=command.getETyId.call(this,e,t);return\"\"+e.isEdgeTypeVisible(r)};command.getETyId=function(e,t){e=new _ViewAbstraction2.default(e);var r=_EdgeType2.default.getInstance(t||this.getVariable(\"currentTiddler\"));if(!r.namespace){var a=_EdgeType2.default.getIdParts(r.id),n=a.marker,i=a.name;var u=e.getConfig(\"edge_type_namespace\");r=_EdgeType2.default.getInstance(_EdgeType2.default.getId(n,u,i))}return r.id};command.scale=function(){var e=\"\";for(var t=1,r=parseInt(arguments[0]);t<r;t++){e+=\"[[\"+t+\"]]\"}return e};command.mergeFields=function(){var e=_utils2.default.getTiddler(arguments[0]);var t=arguments[1];var r=arguments[2]||\" \";if(!e)return;var a=_utils2.default.getPropertiesByPrefix(e.fields,t);var n=\"\";for(var i in a){if(typeof a[i]===\"string\"){n+=a[i]+r}}return n};command.option=function(e,t){if(typeof $tm==\"undefined\"){return\"\"}var r=$tm;var a=e.split(\".\");for(var n=0;n<a.length;n++){if((typeof r===\"undefined\"?\"undefined\":_typeof(r))==\"object\"&&r[a[n]]){r=r[a[n]]}}if(t&&typeof r===\"string\"&&_utils2.default.hasSubString(t)&&r.lastIndexOf(t)+t.length===r.length){r=r+t}return r};exports.run=run;exports.name=name;exports.params=params;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/macro/MapMacro.js.map\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/plugins/felixhayashi/tiddlymap/js/Adapter": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Adapter",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Adapter\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _contrastcolour=require(\"$:/core/modules/macros/contrastcolour.js\");function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Adapter=function(){function e(t,i){_classCallCheck(this,e);this.getTiddlerById=t.getTiddlerById.bind(t);this.getId=t.getIdByTiddler.bind(t);this.assignId=t.assignId.bind(t);this.edgeTypeSubscriberRegistry=i;this.indeces=$tm.indeces;this.wiki=$tw.wiki;this.visShapesWithTextInside=_utils2.default.getLookupTable([\"ellipse\",\"circle\",\"database\",\"box\",\"text\"])}_createClass(e,[{key:\"deleteEdge\",value:function e(t){return this._processEdge(t,\"delete\")}},{key:\"insertEdge\",value:function e(t){return this._processEdge(t,\"insert\")}},{key:\"deleteEdges\",value:function e(t){t=_utils2.default.convert(t,\"array\");for(var i=t.length;i--;){this.deleteEdge(t[i])}}},{key:\"_processEdge\",value:function e(t,i){$tm.logger(\"debug\",\"Edge\",i,t);var r=this.getTiddlerById(t.from);if(!r||!_utils2.default.tiddlerExists(r)){return}var a=_utils2.default.getTiddler(r);var s=this.indeces.allETy[t.type]||_EdgeType2.default.getInstance(t.type);var l=this.edgeTypeSubscriberRegistry.getAllForType(s);var n=i+\"Edge\";for(var d=l.length;d--;){l[d][n](a,t,s)}if(i===\"insert\"&&!s.exists()){s.save()}return t}},{key:\"getAdjacencyList\",value:function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Creating adjacency list\");if(!i.edges){var r=_utils2.default.getMatches(env.selector.allPotentialNodes);i.edges=this.getEdgesForSet(r,i.toWL,i.typeWL)}var a=_utils2.default.groupByProperty(i.edges,t||\"to\");$tm.stop(\"Creating adjacency list\");return a}},{key:\"getNeighbours\",value:function e(t){var i=this;var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Get neighbours\");var a=r.addProperties,s=r.toWL,l=r.typeWL,n=r.steps;var d=this.indeces.allETy;var o=_utils2.default.getArrayValuesAsHashmapKeys(t);var u=_ViewAbstraction2.default.exists(r.view)?new _ViewAbstraction2.default(r.view):null;var f=_utils2.default.makeHashMap();var g=_utils2.default.makeHashMap();var c=parseInt(n)>0?n:1;var v=r.direction||u&&u.getConfig(\"neighbourhood_directions\");var y=!v||v===\"both\";var h=y||v===\"in\";var p=y||v===\"out\";var _=u&&\"[all[]] \"+u.getNodeFilter(\"raw\");var b=this.getAdjacencyList(\"to\",r);var m=function e(t,r,s){f[t.id]=t;var l=i.getTiddlerById(t[r]);if(u&&_utils2.default.isTrue($tm.config.sys.nodeFilterNeighbours)&&!_utils2.default.isMatch(l,_)){return}if(!o[l]){o[l]=true;var n=i.makeNode(l,a);if(n){g[n.id]=n;s.push(l)}}};var w=void 0;for(w=0;w<c&&t.length;w++){var T=[];for(var k=t.length;k--;){if(_utils2.default.isSystemOrDraft(t[k])){continue}var E=this.getEdges(t[k],s,l);for(var N in E){var A=d[E[N].type];if(y||p&&A.toArrow||h&&A.invertedArrow){m(E[N],\"to\",T)}}var I=b[this.getId(t[k])];if(!I){continue}for(var j=I.length;j--;){var x=d[I[j].type];if(y||h&&x.toArrow||p&&x.invertedArrow){m(I[j],\"from\",T)}}}t=T}var S={nodes:g,edges:f};$tm.logger(\"debug\",\"Retrieved neighbourhood\",S,\"steps\",w);$tm.stop(\"Get neighbours\");return S}},{key:\"getGraph\",value:function e(t){var i=t.view,r=t.matches,a=t.includeNeighboursOf;$tm.start(\"Assembling Graph\");i=new _ViewAbstraction2.default(i);r=r||_utils2.default.getMatches(i.getNodeFilter(\"compiled\"));var s=parseInt(i.getConfig(\"neighbourhood_scope\"));var l=i.getEdgeTypeFilter(\"whitelist\");var n=_utils2.default.getArrayValuesAsHashmapKeys(r);var d=this.getEdgesForSet(r,n,l);var o=void 0;if(i.isEnabled(\"filter_nodes_by_edge_types\")){o=new Set;Object.values(d).forEach(function(e){o.add(e.from);o.add(e.to)})}var u={edges:d,nodes:this.selectNodesByReferences(r,{view:i,outputType:\"hashmap\"})};if(s){var f=a?r.filter(a):r;var g=this.getNeighbours(f,{steps:s,view:i,typeWL:l,addProperties:{type:\"tmap:neighbour\"}});Object.assign(u.nodes,g.nodes);Object.assign(u.edges,g.edges);if(i&&i.isEnabled(\"show_inter_neighbour_edges\")){var c=this.getTiddlersByIds(g.nodes);var v=_utils2.default.getArrayValuesAsHashmapKeys(c);Object.assign(u.edges,this.getEdgesForSet(c,v))}}if(o){var y=_utils2.default.makeHashMap();Object.values(u.nodes).forEach(function(e){if(o.has(e.id)){y[e.id]=e}});u.nodes=y}this.attachStylesToNodes(u.nodes,i);$tm.stop(\"Assembling Graph\");$tm.logger(\"debug\",\"Assembled graph:\",u);return u}},{key:\"getEdges\",value:function e(t,i,r){var a=_utils2.default.getTiddler(t);if(!a||_utils2.default.isSystemOrDraft(a)){return}var s=this.indeces.allETy;var l=_utils2.default.makeHashMap();var n=this.edgeTypeSubscriberRegistry.getAll();for(var d=0,o=n.length;d<o;d++){Object.assign(l,n[d].loadEdges(a,i,r))}for(var u in l){var f=l[u];if(!f.from||!f.to){continue}var g=s[f.type]||_EdgeType2.default.getInstance(f.type);addStyleToEdge(l[u],g);l[u]=f}return l}},{key:\"getEdgesForSet\",value:function e(t,i,r){var a=_utils2.default.makeHashMap();for(var s=t.length;s--;){Object.assign(a,this.getEdges(t[s],i,r))}return a}},{key:\"selectEdgesByType\",value:function e(t){var i=_utils2.default.makeHashMap(_defineProperty({},_EdgeType2.default.getInstance(t).id,true));return this.getEdgesForSet(this.getAllPotentialNodes(),null,i)}},{key:\"getAllPotentialNodes\",value:function e(){return _utils2.default.getMatches($tm.selector.allPotentialNodes)}},{key:\"_processEdgesWithType\",value:function e(t,i){var r=i.action,a=i.newName;t=_EdgeType2.default.getInstance(t);$tm.logger(\"debug\",\"Processing edges\",t,r);var s=this.selectEdgesByType(t);if(r===\"rename\"){new _EdgeType2.default(a,t).save()}for(var l in s){this._processEdge(s[l],\"delete\");if(r===\"rename\"){s[l].type=a;this._processEdge(s[l],\"insert\")}}this.wiki.deleteTiddler(t.fullPath)}},{key:\"selectNodesByReferences\",value:function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},r=i.addProperties,a=i.outputType;var s=_utils2.default.makeHashMap();var l=Object.keys(t);for(var n=l.length;n--;){var d=this.makeNode(t[l[n]],r);if(d){s[d.id]=d}}return _utils2.default.convert(s,a)}},{key:\"selectNodesByIds\",value:function e(t,i){var r=this.getTiddlersByIds(t);return this.selectNodesByReferences(r,i)}},{key:\"selectNodeById\",value:function e(t,i){i=Object.assign({},i,{outputType:\"hashmap\"});var r=this.selectNodesByIds([t],i);return r[t]}},{key:\"removeNodeType\",value:function e(t){t=_NodeType2.default.getInstance(t);this.wiki.deleteTiddler(t.fullPath)}},{key:\"makeNode\",value:function e(t,i){var r=_utils2.default.getTiddler(t);if(!r||_utils2.default.isSystemOrDraft(r))return;var a=_utils2.default.merge({},i);a.id=this.assignId(r);a.tRef=r.fields.title;var s=r.fields[$tm.field.nodeLabel];a.label=(s&&$tm.field.nodeLabel!==\"title\"?this.wiki.renderText(\"text/plain\",\"text/vnd-tiddlywiki\",s):r.fields.title).replace(\"\\\\n\",\"\\n\");return a}},{key:\"getInheritedNodeStyles\",value:function e(t){var i=this.getTiddlersByIds(t);var r={};var a=this.indeces.glNTy;for(var s=a.length;s--;){var l=a[s];var n=[];if(l.id===\"tmap:neighbour\"){for(var d in t){if(t[d].type===\"tmap:neighbour\"){n.push(this.getTiddlerById(d))}}}else{n=l.getInheritors(i)}for(var o=n.length;o--;){var u=n[o];var f=r[u]=r[u]||{};f.style=_utils2.default.merge(f.style||{},l.style);if(l[\"fa-icon\"]){f[\"fa-icon\"]=l[\"fa-icon\"]}else if(l[\"tw-icon\"]){f[\"tw-icon\"]=l[\"tw-icon\"]}}}return r}},{key:\"attachStylesToNodes\",value:function e(t,i){i=_ViewAbstraction2.default.exists(i)?new _ViewAbstraction2.default(i):null;var r=this.getInheritedNodeStyles(t);var a=i?i.getNodeData():_utils2.default.makeHashMap();var s=i&&!i.isEnabled(\"physics_mode\");for(var l in t){var n=this.getTiddlerById(l);var d=this.wiki.getTiddler(n);var o=d.fields;var u=t[l];var f=void 0;var g=r[n];if(g){_utils2.default.merge(u,g.style);f=getIcon(g[\"fa-icon\"],g[\"tw-icon\"])}if(o.color){u.color=o.color}if(o[\"tmap.style\"]){_utils2.default.merge(u,_utils2.default.parseJSON(o[\"tmap.style\"]))}f=getIcon(o[\"tmap.fa-icon\"],o[\"icon\"])||f;var c=a[l];if(c){_utils2.default.merge(u,c);if(s){u.fixed={x:u.x!=null,y:u.y!=null}}f=getIcon(c[\"fa-icon\"],c[\"tw-icon\"])||f}var v=u.color!==null&&_typeof(u.color)===\"object\";var y=v?u.color.background:u.color;u.color={background:y,border:v?u.color.border:undefined};addNodeIcon(u,f);u.font=u.font||{};if(u.shape&&!this.visShapesWithTextInside[u.shape]){u.font.color=\"black\"}else if(!u.font.color&&y){u.font.color=(0,_contrastcolour.run)(y,y,\"black\",\"white\")}if(u.shape===\"icon\"){u.label=\"\\n\"+u.label;if(_typeof(u.icon)===\"object\"){u.icon.color=y}}}if(i){var h=t[i.getConfig(\"central-topic\")];if(h){_utils2.default.merge(h,this.indeces.glNTyById[\"tmap:central-topic\"].style)}}}},{key:\"deleteNode\",value:function e(t){if(!t){return}var i=(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"?t.id:t;var r=this.getTiddlerById(i);if(r){_utils2.default.deleteTiddlers([r])}var a=_utils2.default.getMatches(env.selector.allViews);for(var s=a.length;s--;){var l=new _ViewAbstraction2.default(a[s]);l.removeNode(i)}var n=this.getNeighbours([r]);this.deleteEdges(n.edges)}},{key:\"deleteNodes\",value:function e(t){for(var i=t.length;i--;){this.deleteNode(t[i])}}},{key:\"insertNode\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var i=arguments[1];var r=arguments[2];t.label=this.wiki.generateNewTitle(t.label||_utils2.default.getRandomLabel());var a=new $tw.Tiddler({text:\"\"},r,{title:t.label,\"tmap.id\":null},this.wiki.getModificationFields(),this.wiki.getCreationFields());this.wiki.addTiddler(a);t=this.makeNode(a,t);if(_ViewAbstraction2.default.exists(i)){new _ViewAbstraction2.default(i).addNode(t)}return t}},{key:\"getTiddlersByIds\",value:function e(t){if(Array.isArray(t)){t=_utils2.default.getArrayValuesAsHashmapKeys(t)}else if(t instanceof _vis2.default.DataSet){t=_utils2.default.getLookupTable(t,\"id\")}var i=[];for(var r in t){var a=this.getTiddlerById(r);if(a){i.push(a)}}return i}}]);return e}();var getFAdigits=function e(t){return t.length===4?t:t.substr(3,4)};var addNodeIcon=function e(t,i){if(!i){return}if(i.fa){t.shape=\"icon\";t.icon={shape:\"icon\",face:\"FontAwesome\",color:t.color,code:String.fromCharCode(\"0x\"+getFAdigits(i.fa))};if(t.size){t.icon.size=t.size}return}if(i.tw){var r=_utils2.default.getTiddler(i.tw);if(!r){return}if(r.fields[\"_canonical_uri\"]){t.image=r.fields[\"_canonical_uri\"];t.shape=\"image\"}else if(r.fields.text){t.image=_utils2.default.getDataUri(r);t.shape=\"image\"}}};var removeObsoleteViewData=function e(t,i){if(!_ViewAbstraction2.default.exists(i)||!t){return}i=new _ViewAbstraction2.default(i);var r=i.getNodeData();var a=0;for(var s in r){if(t[s]===undefined&&r[s]!=null){r[s]=undefined;a++}}if(a){$tm.logger(\"debug\",\"[Cleanup]\",\"Removed obsolete node data:\",i.getLabel(),a);i.saveNodeData(r)}};var addStyleToEdge=function e(t,i){t=Object.assign(t,i.style);if(_utils2.default.isTrue(i[\"show-label\"],true)){t.label=i.getLabel()}};var getIcon=function e(t,i){return t&&{fa:t}||i&&{tw:i}};exports.default=Adapter;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Adapter.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/CallbackManager",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a<t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/CallbackManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var CallbackManager=function(){function e(){_classCallCheck(this,e);this.callbacks=_utils2.default.makeHashMap();this.logger=$tm.logger;this.wiki=$tw.wiki}_createClass(e,[{key:\"add\",value:function e(t,a){var l=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;this.logger(\"debug\",'A callback was registered for changes of \"'+t+'\"');this.callbacks[t]={execute:a,isDeleteOnCall:l}}},{key:\"remove\",value:function e(t){if(!t){return}if(typeof t===\"string\"){t=[t]}for(var a=t.length;a--;){var l=t[a];if(this.callbacks[l]){this.logger(\"debug\",'Deleting callback for \"'+l+'\"');delete this.callbacks[l]}}}},{key:\"refresh\",value:function e(t){if(this.callbacks.length==0){return}for(var a in t){if(!this.callbacks[a]){continue}if(this.wiki.getTiddler(a)){this.logger(\"debug\",\"Executing a callback for: \"+a);this.callbacks[a].execute(a);if(!this.callbacks.isDeleteOnCall){continue}}this.remove(a)}}}]);return e}();exports.default=CallbackManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/CallbackManager.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _rebuilders;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/caretaker\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Fixer=require(\"$:/plugins/felixhayashi/tiddlymap/js/Fixer\");var _Fixer2=_interopRequireDefault(_Fixer);var _Adapter=require(\"$:/plugins/felixhayashi/tiddlymap/js/Adapter\");var _Adapter2=_interopRequireDefault(_Adapter);var _tracker=require(\"$:/plugins/felixhayashi/tiddlymap/js/services/tracker\");var _tracker2=_interopRequireDefault(_tracker);var _EdgeTypeSubscriberRegistry=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\");var _EdgeTypeSubscriberRegistry2=_interopRequireDefault(_EdgeTypeSubscriberRegistry);var _DialogManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/DialogManager\");var _DialogManager2=_interopRequireDefault(_DialogManager);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _vis3=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis4=_interopRequireDefault(_vis3);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _URL=require(\"$:/plugins/felixhayashi/tiddlymap/js/URL\");var _URL2=_interopRequireDefault(_URL);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}var init=function e(){window.$tm=_extends({},env,{utils:_utils2.default,url:new _URL2.default(window.location.href)});cleanup();registerPublicClasses($tm);updateGlobals($tm);createMetaFile($tm.logger);var t=attachIndeces($tm);var r=getInitializedServices(t);Object.assign($tm,r);loadDefaultView($tm.config.sys.defaultView);r.fixer.fix();$tm.registry=[];setInterval(routineCheck,5e3);registerChangeListener($tm.callbackManager);registerMousemoveListener();registerClickListener();if($tm.url.query[\"tmap-enlarged\"]){prepareFullscreenStart($tm.url)}$tm.logger(\"warn\",\"TiddlyMap's caretaker successfully started\")};var getInitializedServices=function e(t){var r=new _tracker2.default(d);var i=$tw.modules.applyMethods(\"tmap.edgetypehandler\");var a=new _EdgeTypeSubscriberRegistry2.default(i,t.allETy,r);var s=new _Adapter2.default(r,a);var l=new _CallbackManager2.default;var n=new _DialogManager2.default(l);var d=new _Fixer2.default(s,$tm.logger,t.glNTy);return{edgeTypeSubscriberRegistry:a,tracker:r,adapter:s,callbackManager:l,dialogManager:n,fixer:d}};var registerPublicClasses=function e(t){t.keycharm=_vis4.default.keycharm;t.NodeType=_NodeType2.default;t.EdgeType=_EdgeType2.default;t.ViewAbstraction=_ViewAbstraction2.default};var attachOptions=function e(t){var r=t;if(!r.config)r.config=_utils2.default.makeHashMap();r.config.sys=_utils2.default.merge(r.config.sys,_utils2.default.unflatten($tw.wiki.getTiddlerData(env.ref.sysUserConf)));r.config.vis=_utils2.default.merge({},_vis2.default,_utils2.default.parseFieldData(env.ref.visUserConf));if(!r.field)r.field=_utils2.default.makeHashMap();$tw.utils.extend(r.field,r.config.sys.field)};var attachIndeces=function e(t){$tm.start(\"Attaching Indeces\");t.indeces=t.indeces||{};updateNodeTypesIndeces(t.indeces);updateEdgeTypesIndeces(t.indeces);$tm.stop(\"Attaching Indeces\");return t.indeces};var updateNodeTypesIndeces=function e(t){t=t||$tm.indeces;var r=$tm.path.nodeTypes;var i=t.glNTy=[];var a=t.glNTyById=_utils2.default.makeHashMap();$tw.wiki.eachTiddlerPlusShadows(function(e,t){if(_utils2.default.startsWith(t,r)){var s=_NodeType2.default.getInstance(t);a[s.id]=s;i.push(s)}});i.sort(function(e,t){return e.priority-t.priority})};var updateEdgeTypesIndeces=function e(t){t=t||$tm.indeces;var r=$tm.path.edgeTypes;var i=t.allETy=_utils2.default.makeHashMap();$tw.wiki.eachTiddlerPlusShadows(function(e,t){if(_utils2.default.startsWith(t,r)){var a=_EdgeType2.default.getInstance(t);i[a.id]=a}});if($tm.edgeTypeSubscriberRegistry){$tm.edgeTypeSubscriberRegistry.updateIndex(i)}};var attachFunctions=function e(t){var r=t;var i=function e(){};if(_utils2.default.isTrue($tm.config.sys.debug,false)&&console){r.logger=function(){if(arguments.length<2)return;var e=Array.prototype.slice.call(arguments);var t=e.shift(e);var r=console.hasOwnProperty(t)?t:\"debug\";console[r].apply(console,e)};r.start=function(e){console.time(\"[timer] \"+e)};r.stop=function(e){console.timeEnd(\"[timer] \"+e)}}else{r.logger=r.start=r.stop=i}r.notify=_utils2.default.isTrue($tm.config.sys.notifications)?_utils2.default.notify:i};var routineCheck=function e(){for(var t=$tm.registry.length;t--;){var r=$tm.registry[t];if(!r.destruct||!r.isZombieWidget)return;if(r.isZombieWidget()){$tm.logger(\"warn\",\"a widget will be removed\");$tm.registry.splice(t,1);r.destruct()}}};var dispatchUpdates=function e(t){var r=$tm.registry;for(var i=r.length;i--;){var a=r[i];if(a.update&&a.isZombieWidget&&!a.isZombieWidget()){a.update(t)}}};var checkForClone=function e(t){var r=_utils2.default.getDublicates(t);if(!r.length){return}_utils2.default.setField(t,\"tmap.edges\",undefined);$tm.tracker.assignId(t,true);$tm.dialogManager.open(\"dublicateIdInfo\",{param:{changedTiddler:t.fields.title,filter:_utils2.default.joinAndWrap(r,\"[[\",\"]]\"),id:_utils2.default.getId(t)}})};var updateGlobals=function e(t){attachOptions($tm);attachFunctions($tm);$tm.logger(\"warn\",\"Rebuilt globals\")};var lastCurrentTiddler=null;var updateLiveViewTrigger=function e(t){if(t[\"$:/HistoryList\"]){var r=_utils2.default.getField(\"$:/HistoryList\",\"current-tiddler\")}else if(t[\"$:/temp/focussedTiddler\"]){var r=_utils2.default.getField(\"$:/temp/focussedTiddler\",\"text\")}if(r!=null&&lastCurrentTiddler!==r){lastCurrentTiddler=r;_utils2.default.setField(\"$:/temp/tmap/currentTiddler\",\"text\",r)}};var printChanges=function e(t,r){if(!_utils2.default.isTrue($tm.config.sys.debug,false))return;$tm.logger(\"warn\",\"=== Refresh \"+r+\" ===\");for(var i in t){var a=t[i].deleted?\"[Deleted]\":\"[Modified]\";$tm.logger(\"warn\",a,i,$tw.wiki.getTiddler(i))}};var registerMousemoveListener=function e(){$tm.mouse={};var t=function e(t){$tm.mouse=t};window.addEventListener(\"mousemove\",t,false)};var registerClickListener=function e(){var t=$tm.path.tempPopups;window.addEventListener(\"click\",function(e){var r=_utils2.default.getTiddlersByPrefix(t);for(var i=r.length;i--;){if(_utils2.default.getText(r[i]))break}if(i===-1)return;if(!$tw.utils.hasClass(e.target,\"tc-drop-down\")&&!_utils2.default.getAncestorWithClass(e.target,\"tc-drop-down\")){for(var i=r.length;i--;){_utils2.default.setText(r[i],\"\")}}},false)};var registerChangeListener=function e(t){var r=0;$tw.wiki.addEventListener(\"change\",function(e){$tm.start(\"Caretaker handling changes\");printChanges(e,r++);t.refresh(e);var i={changedTiddlers:{}};for(var a in e){var s=_utils2.default.getTiddler(a);if(s&&s.isDraft()){continue}var l=handleTiddlerChange(a,s,i);if(l){i.changedTiddlers[a]=e[a]}}dispatchUpdates(i);updateLiveViewTrigger(e);$tm.stop(\"Caretaker handling changes\")})};var rebuilders=(_rebuilders={},_defineProperty(_rebuilders,env.path.options,updateGlobals),_defineProperty(_rebuilders,env.path.nodeTypes,updateNodeTypesIndeces),_defineProperty(_rebuilders,env.path.edgeTypes,updateEdgeTypesIndeces),_rebuilders);var handleTiddlerChange=function e(t,r,i){if($tw.wiki.isSystemTiddler(t)){for(var a in rebuilders){if(_utils2.default.startsWith(t,a)&&!i[a]){$tm.logger(\"warn\",\"[System change]\",a);rebuilders[a]();i[a]=true}}}else if(r){if(r.fields.text===undefined){$tw.wiki.dispatchEvent(\"lazyLoad\",t);return false}checkForClone(r);$tm.tracker.assignId(r)}else{var s=$tm.tracker.getIdByTiddler(t);if(!s){return false}var l=_utils2.default.getTiddlerWithField(\"tmap.id\",s);if(l){$tm.logger(\"warn\",\"[Renamed]\",t,\"into\",l)}else{$tm.adapter.deleteNode(s)}}return true};var cleanup=function e(){_utils2.default.deleteByPrefix(\"$:/temp/felixhayashi\");_utils2.default.deleteByPrefix(\"$:/temp/tiddlymap\");_utils2.default.deleteByPrefix(\"$:/temp/tmap\")};var loadDefaultView=function e(t){if(!t){return}var r=_utils2.default.getTiddler(env.ref.defaultViewHolder);if(r.fields.text===$tm.config.sys.defaultView){return}_utils2.default.setText(env.ref.defaultViewHolder,$tm.config.sys.defaultView)};var prepareFullscreenStart=function e(t){var r=env.ref,i=r.mainEditor,a=r.defaultViewHolder;_utils2.default.setSidebarTab(i);if(_ViewAbstraction2.default.exists(t)){t=new _ViewAbstraction2.default(t);_utils2.default.setField(a,\"text\",t.getLabel())}};var createMetaFile=function e(t){if(_utils2.default.tiddlerExists(env.ref.sysMeta)){return}t(\"warn\",\"Creating meta file\");var r=$tw.wiki.getTiddler(env.path.pluginRoot);$tw.wiki.setTiddlerData(env.ref.sysMeta,{originalVersion:r.fields.version,dataStructureState:\"0.6.9\",showWelcomeMessage:true})};var name=exports.name=\"tmap.caretaker\";var platforms=exports.platforms=[\"browser\"];var after=exports.after=[\"startup\"];var before=exports.before=[\"rootwidget\"];var synchronous=exports.synchronous=true;var startup=exports.startup=init;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Caretaker.js.map\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/tiddlymap/js/DialogManager": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/DialogManager",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a<t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/DialogManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var DialogManager=function(){function e(t,a){_classCallCheck(this,e);this.callbackManager=t;this.context=a}_createClass(e,[{key:\"open\",value:function t(a){var l=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=arguments[2];if(_utils2.default.isTrue($tm.config.sys.suppressedDialogs[a],false)){$tm.logger(\"warning\",\"Suppressed dialog\",a);return}$tm.logger(\"debug\",\"Dialog param object\",l);if(typeof i===\"function\"&&this.context){i=i.bind(this.context)}var r=$tm.path.tempRoot+\"/dialog-\"+_utils2.default.genUUID();var n=_utils2.default.getTiddler($tm.path.dialogs+\"/\"+a);var u={title:r,buttons:n.fields[\"buttons\"]||\"ok_cancel\",classes:\"tmap-modal-content \"+n.fields[\"classes\"],output:r+\"/output\",result:r+\"/result\",temp:r+\"/temp\",template:n.fields.title,templateId:a,currentTiddler:r+\"/output\",text:_utils2.default.getText($tm.path.dialogs)};_utils2.default.touch(u.output);if(l.dialog){if(l.dialog.preselects){$tw.wiki.addTiddler(new $tw.Tiddler({title:u.output},_utils2.default.flatten(l.dialog.preselects)));delete l.dialog.preselects}_utils2.default.merge(u,l.dialog)}u.footer=_utils2.default.getText($tm.path.footers);u=_utils2.default.flatten(u);l=_utils2.default.flatten(l);var s=function t(a){e.getElement(\"hidden-close-button\").click();var l=$tw.wiki.getTiddler(a);var n=l.fields.text;var s=null;if(n){s=$tw.wiki.getTiddler(u.output)}else{$tm.notify(\"operation cancelled\")}if(typeof i===\"function\"){i(n,s)}_utils2.default.deleteByPrefix(r)};this.callbackManager.add(u.result,s,true);var o=new $tw.Tiddler(n,l,u);$tw.wiki.addTiddler(o);$tm.logger(\"debug\",\"Opening dialog\",o);$tw.rootWidget.dispatchEvent({type:\"tm-modal\",param:o.fields.title,paramObject:o.fields});e.addKeyBindings();return o}}],[{key:\"getElement\",value:function e(t){return _utils2.default.getFirstElementByClassName(\"tmap-\"+t)}},{key:\"addKeyBindings\",value:function t(){var a=$tm.keycharm({container:_utils2.default.getFirstElementByClassName(\"tc-modal\")});var l=/tmap-triggers-(.+?)-on-(.+?)(?:\\s|$)/;var i=document.getElementsByClassName(\"tmap-trigger-field\");var r=function t(r){var n=i[r].className.split(\" \");var u=function t(i){var r=n[i].match(l);if(!r){return\"continue\"}var u=r[1];var s=r[2];var o=e.getElement(u);if(!o){return\"continue\"}a.bind(s,function(){if(document.getElementsByClassName(n[i]).length){o.click()}})};for(var s=n.length;s--;){var o=u(s);if(o===\"continue\")continue}};for(var n=i.length;n--;){r(n)}}}]);return e}();exports.default=DialogManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/DialogManager.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/Fixer": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Fixer",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Fixer\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Fixer=function(){function e(t,i,r){_classCallCheck(this,e);this.adapter=t;this.logger=i;this.wiki=$tw.wiki;this.glNTy=r}_createClass(e,[{key:\"moveEdges\",value:function e(t,i){var r=_utils2.default.getTiddlersByPrefix(t);for(var a=0;a<r.length;a++){var u=_utils2.default.getBasename(r[a]);if(u===\"__noname__\"){u=\"tmap:unknown\"}u=_EdgeType2.default.getInstance(u);if(!u.exists()){u.save()}var n=this.wiki.getTiddlerData(r[a]);for(var s=0;s<n.length;s++){n[s].type=(i?i+\":\":\"\")+u.id;this.adapter.insertEdge(n[s])}this.wiki.deleteTiddler(r[a])}}},{key:\"executeUpgrade\",value:function e(t,i,r){if(!_utils2.default.isLeftVersionGreater(t,i)){return}this.logger(\"debug\",\"Upgrading data structure to \"+t);var a=r();_utils2.default.setEntry(env.ref.sysMeta,\"dataStructureState\",t);return a}},{key:\"fixId\",value:function e(){var t=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.executeUpgrade(\"0.9.2\",t.dataStructureState,function(){if(_utils2.default.isLeftVersionGreater(\"0.9.2\",t.originalVersion)){var e=\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\";var i=_utils2.default.getEntry(e,\"field.nodeId\",\"tmap.id\");_utils2.default.moveFieldValues(i,\"tmap.id\",true,false)}})}},{key:\"fix\",value:function e(){var t=this;var i=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.logger(\"debug\",\"Fixer is started\");this.logger(\"debug\",\"Data-structure currently in use: \",i.dataStructureState);this.executeUpgrade(\"0.7.0\",i.dataStructureState,function(){t.moveEdges(\"$:/plugins/felixhayashi/tiddlymap/graph/edges\",null);var e=env.selector.allViews;var i=_utils2.default.getMatches(e);for(var r=0;r<i.length;r++){var a=new _ViewAbstraction2.default(i[r]);t.moveEdges(a.getRoot()+\"/graph/edges\",a)}});this.executeUpgrade(\"0.7.32\",i.dataStructureState,function(){if(!_ViewAbstraction2.default.exists(\"Live View\")){return}var e=new _ViewAbstraction2.default(\"Live View\");e.setNodeFilter(\"[field:title{$:/temp/tmap/currentTiddler}]\",true);e.setConfig({\"refresh-trigger\":null,\"refresh-triggers\":$tw.utils.stringifyList([\"$:/temp/tmap/currentTiddler\"])})});this.executeUpgrade(\"0.9.0\",i.dataStructureState,function(){var e=env.ref.visUserConf;var i=_utils2.default.unflatten(t.wiki.getTiddlerData(e,{}));if(_typeof(i.groups)===\"object\"){var r=_NodeType2.default.getInstance(\"tmap:neighbour\");r.setStyle(i.groups[\"neighbours\"]);r.save();delete i.groups;t.wiki.setTiddlerData(e,i)}});this.fixId();this.executeUpgrade(\"0.9.16\",i.dataStructureState,function(){for(var e=t.glNTy.length;e--;){t.glNTy[e].save(null,true)}});this.executeUpgrade(\"0.10.3\",i.dataStructureState,function(){var e=env.ref.liveTab;if(_utils2.default.getTiddler(e).hasTag(\"$:/tags/SideBar\")){this.wiki.deleteTiddler(e);_utils2.default.setField(e,\"tags\",\"$:/tags/SideBar\")}});this.executeUpgrade(\"0.11.0\",i.dataStructureState,function(){var e=_utils2.default.getMatches(env.selector.allViews);for(var t=e.length;t--;){var i=new _ViewAbstraction2.default(e[t]);var r=i.getEdgeTypeFilter(\"raw\");var a=\"edge_type_namespace\";i.setConfig(a,i.getConfig(a));var u=env.filter.defaultEdgeTypeFilter;if(r){var n=env.path.edgeTypes;r=_utils2.default.replaceAll(r,\"\",[n,n+\"/\",\"[prefix[\"+n+\"]]\",\"[prefix[\"+n+\"/]]\",[\"[suffix[tw-body:link]]\",\"[[tw-body:link]]\"],[\"[suffix[tw-list:tags]]\",\"[[tw-list:tags]]\"],[\"[suffix[tw-list:list]]\",\"[[tw-body:list]]\"],[\"[suffix[tmap:unknown]]\",\"[[tmap:unknown]]\"],[\"[suffix[unknown]]\",\"[[tmap:unknown]]\"]]);u=\"-[prefix[_]] \"+r}i.setEdgeTypeFilter(u)}})}}]);return e}();exports.default=Fixer;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Fixer.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/startup/listener": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/startup/listener",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var handleCancelDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"\")};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/listener\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var handleClearTiddler=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},a=t.paramObject;var r=a.title,d=a.keep;if(!r)return;var i=_utils2.default.getTiddler(r);var l=i?i.fields:{};var s=d?d.split():[];var n={title:r,text:\"\"};for(var p=s.length;p--;){var o=s[p];n[o]=l[o]}$tw.wiki.deleteTiddler(r);$tw.wiki.addTiddler(new $tw.Tiddler(n))};var handleMixTiddlers=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d=r.tiddlers,i=r.output;if(!d||!i)return;var l=$tw.utils.parseStringArray(d);var s=_utils2.default.getMergedTiddlers(l,i);$tw.wiki.addTiddler(s)};var handleConfirmDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"1\")};var handleSuppressDialog=function e(t){var a=t.paramObject;var r=a.dialog,d=a.suppress;if(_utils2.default.isTrue(d,false)){_utils2.default.setEntry($tm.ref.sysUserConf,\"suppressedDialogs.\"+r,true)}};var handleDownloadGraph=function e(t){var a=t.paramObject;var r=a.view;var d=$tm.adapter.getGraph({view:r});d.nodes=_utils2.default.convert(d.nodes,\"array\");d.edges=_utils2.default.convert(d.edges,\"array\");var i=\"$:/temp/tmap/export\";_utils2.default.setField(i,\"text\",JSON.stringify(d,null,2));$tw.rootWidget.dispatchEvent({type:\"tm-download-file\",param:i,paramObject:{filename:r+\".json\"}})};var handleConfigureSystem=function e(){var t=_utils2.default.getMatches($tm.selector.allPotentialNodes);var a=$tm.adapter.getEdgesForSet(t);var r=$tw.wiki.getTiddler($tm.path.pluginRoot).fields;var d=$tw.wiki.getTiddlerData($tm.ref.sysMeta);var i=_utils2.default.getTiddler($tm.ref.liveTab).hasTag(\"$:/tags/SideBar\");var l={numberOfNodes:\"\"+t.length,numberOfEdges:\"\"+Object.keys(a).length,pluginVersion:\"v\"+r.version,dataStructureVersion:\"v\"+d.dataStructureState,dialog:{preselects:{liveTab:\"\"+i,\"inherited-style\":JSON.stringify(_vis2.default),\"config.vis\":_utils2.default.getText($tm.ref.visUserConf),\"config.sys\":$tm.config.sys}}};$tm.dialogManager.open(\"globalConfig\",l,function(e,t){if(!e)return;var a=_utils2.default.getPropertiesByPrefix(t.fields,\"config.sys.\",true);$tw.wiki.setTiddlerData($tm.ref.sysUserConf,a);if(_utils2.default.isTrue(t.fields.liveTab,false)){_utils2.default.setField($tm.ref.liveTab,\"tags\",\"$:/tags/SideBar\")}else{$tw.wiki.deleteTiddler($tm.ref.liveTab)}_utils2.default.setField($tm.ref.visUserConf,\"text\",t.fields[\"config.vis\"])})};var handleGenerateWidget=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d={dialog:{preselects:{\"var.view\":r.view||$tm.misc.defaultViewLabel}}};$tm.dialogManager.open(\"widgetCodeGenerator\",d)};var handleRemoveEdge=function e(t){var a=t.paramObject;$tm.adapter.deleteEdge(a)};var handleCreateEdge=function e(t){var a=t.paramObject;var r=a.from,d=a.to,i=a.force;if(!r||!d)return;if(_utils2.default.tiddlerExists(r)&&_utils2.default.tiddlerExists(d)||i){_utils2.default.addTiddler(d);_utils2.default.addTiddler(r);var l=new _Edge2.default($tm.adapter.makeNode(r).id,$tm.adapter.makeNode(d).id,a.label,a.id);$tm.adapter.insertEdge(l);$tm.notify(\"Edge inserted\")}};var handleOpenTypeManager=function e(t){var a=t.type,r=t.paramObject,d=r===undefined?{}:r;var i=a.match(/tmap:tm-(.*)/)[1];if(i===\"manage-edge-types\"){var l=\"Edge-Type Manager\";var s=$tm.selector.allEdgeTypes;var n=$tm.path.edgeTypes}else{var l=\"Node-Type Manager\";var s=$tm.selector.allNodeTypes;var n=$tm.path.nodeTypes}var p={mode:i,topic:l,searchSelector:s,typeRootPath:n};var o=$tm.dialogManager.open(\"MapElementTypeManager\",p);if(d.type){handleLoadTypeForm({paramObject:{mode:i,id:d.type,output:o.fields[\"output\"]}})}};var handleLoadTypeForm=function e(t){var a=t.paramObject,r=a.mode,d=a.id,i=a.output;var l=i;var s=r===\"manage-edge-types\"?_EdgeType2.default.getInstance(d):_NodeType2.default.getInstance(d);s.save(l,true);if(r===\"manage-edge-types\"){var n=$tm.adapter.selectEdgesByType(s);var p=Object.keys(n).length;_utils2.default.setField(l,\"temp.usageCount\",p)}$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(l),{typeTRef:s.fullPath,\"temp.idImmutable\":s.isShipped?\"true\":\"\",\"temp.newId\":s.id,\"inherited-style\":JSON.stringify((r===\"manage-edge-types\"?$tm.config.vis.edges:$tm.config.vis.nodes)||{})}));_utils2.default.deleteByPrefix(\"$:/state/tabs/MapElementTypeManager\")};var handleSaveTypeForm=function e(t){var a=t.paramObject;var r=_utils2.default.getTiddler(a.output);if(!r)return;var d=r.fields.id;var i=a.mode;if(_utils2.default.isTrue(r.fields[\"temp.deleteType\"],false)){deleteType(i,d,r)}else{saveType(i,d,r)}};var deleteType=function e(t,a,r){var d=t===\"manage-edge-types\"?_EdgeType2.default.getInstance(a):_NodeType2.default.getInstance(a);$tm.logger(\"debug\",\"Deleting type\",d);if(t===\"manage-edge-types\"){$tm.adapter._processEdgesWithType(d,{action:\"delete\"})}else{$tm.adapter.removeNodeType(d)}$tw.wiki.addTiddler(new $tw.Tiddler({title:_utils2.default.getTiddlerRef(r)}));$tm.notify(\"Deleted type\")};var saveType=function e(t,a,r){var d=_utils2.default.getTiddler(r);var i=t===\"manage-edge-types\"?_EdgeType2.default:_NodeType2.default;var l=new i(a,d);l.save();var s=d.fields[\"temp.newId\"];if(s&&s!==d.fields[\"id\"]){if(t===\"manage-edge-types\"){$tm.adapter._processEdgesWithType(l,{action:\"rename\",newName:s})}else{new _NodeType2.default(s,l).save();$tw.wiki.deleteTiddler(l.fullPath)}_utils2.default.setField(d,\"id\",s)}$tm.notify(\"Saved type data\")};var handleCreateType=function e(t){var a=t.paramObject,r=a.mode,d=a.id,i=d===undefined?\"New type\":d,l=a.output;var s=r===\"manage-edge-types\"?new _EdgeType2.default(i):new _NodeType2.default(i);s.save();handleLoadTypeForm({paramObject:{id:s.id,mode:r,output:l}})};var name=exports.name=\"tmap.listener\";var platforms=exports.platforms=[\"browser\"];var after=exports.after=[\"rootwidget\",\"tmap.caretaker\"];var before=exports.before=[\"story\"];var synchronous=exports.synchronous=true;var startup=exports.startup=function e(){_utils2.default.addTWlisteners({\"tmap:tm-remove-edge\":handleRemoveEdge,\"tmap:tm-load-type-form\":handleLoadTypeForm,\"tmap:tm-save-type-form\":handleSaveTypeForm,\"tmap:tm-create-type\":handleCreateType,\"tmap:tm-create-edge\":handleCreateEdge,\"tmap:tm-suppress-dialog\":handleSuppressDialog,\"tmap:tm-generate-widget\":handleGenerateWidget,\"tmap:tm-download-graph\":handleDownloadGraph,\"tmap:tm-configure-system\":handleConfigureSystem,\"tmap:tm-manage-edge-types\":handleOpenTypeManager,\"tmap:tm-manage-node-types\":handleOpenTypeManager,\"tmap:tm-cancel-dialog\":handleCancelDialog,\"tmap:tm-clear-tiddler\":handleClearTiddler,\"tmap:tm-merge-tiddlers\":handleMixTiddlers,\"tmap:tm-confirm-dialog\":handleConfirmDialog},$tw.rootWidget,undefined)};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Listener.js.map\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/tiddlymap/js/services/tracker": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/services/tracker",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/services/tracker\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Tracker=function(){function e(t){_classCallCheck(this,e);this.wiki=$tw.wiki;this.logger=$tm.logger;this._createIndex()}_createClass(e,[{key:\"_createIndex\",value:function e(){var t=this.tById={};var i=this.idByT={};this.wiki.each(function(e,r){if(_utils2.default.isSystemOrDraft(e)){return}var l=e.fields[\"tmap.id\"];if(!l){l=_utils2.default.genUUID();_utils2.default.setField(e,\"tmap.id\",l)}t[l]=r;i[r]=l})}},{key:\"assignId\",value:function e(t,i){var r=_utils2.default.getTiddler(t);if(!r){throw new ResourceNotFoundException(t)}var l=r.fields[\"tmap.id\"];if(!l||i){l=_utils2.default.genUUID();_utils2.default.setField(r,\"tmap.id\",l);this.logger(\"info\",\"Assigning new id to\",r.fields.title)}this.tById[l]=r.fields.title;this.idByT[r.fields.title]=l;return l}},{key:\"getIdByTiddler\",value:function e(t){return this.idByT[_utils2.default.getTiddlerRef(t)]}},{key:\"getIdsByTiddlers\",value:function e(){return this.idByT}},{key:\"getTiddlersByIds\",value:function e(){return this.tById}},{key:\"getTiddlerById\",value:function e(t){return this.tById[t]}}]);return e}();exports.default=Tracker;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Tracker.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget",
"text": "\"use strict\";var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function MapConfigWidget(e,t){_widget.widget.call(this);this.initialise(e,t);this.computeAttributes()}MapConfigWidget.prototype=Object.create(_widget.widget.prototype);MapConfigWidget.prototype.render=function(e,t){this.parentDomNode=e;if(!this.domNode){this.domNode=this.document.createElement(\"div\");$tw.utils.addClass(this.domNode,\"tmap-config-widget\");e.insertBefore(this.domNode,t)}if(this.network){this.network.destroy()}this.networkContainer=document.createElement(\"div\");this.domNode.appendChild(this.networkContainer);this.refreshTrigger=this.getAttribute(\"refresh-trigger\");this.pipeTRef=this.getVariable(\"currentTiddler\");this.inheritedFields=$tw.utils.parseStringArray(this.getAttribute(\"inherited\"));this.extensionTField=this.getAttribute(\"extension\");this.mode=this.getAttribute(\"mode\");for(var i=0;i<this.inheritedFields.length;i++){var s=this.inheritedFields[i];var n=_utils2.default.parseFieldData(this.pipeTRef,s,{});if(this.mode===\"manage-edge-types\"){n={edges:n}}else if(this.mode===\"manage-node-types\"){n={nodes:n}}this.inherited=_utils2.default.merge(this.inherited,n)}this.extension=_utils2.default.parseFieldData(this.pipeTRef,this.extensionTField,{});if(this.mode===\"manage-edge-types\"){if(!this.extension.edges){this.extension={edges:this.extension}}}else if(this.mode===\"manage-node-types\"){if(!this.extension.nodes){this.extension={nodes:this.extension}}}var r=_utils2.default.isTrue(this.getAttribute(\"save-only-changes\"));this.changes=r?{}:this.extension;var o={nodes:[],edges:[]};var a=_utils2.default.merge({},this.inherited,this.extension);$tw.utils.extend(a,{configure:{enabled:true,showButton:false,filter:this.getOptionFilter(this.mode)}});this.network=new _vis2.default.Network(this.networkContainer,o,a);this.network.on(\"configChange\",this.handleConfigChange.bind(this));var l=this.parentDomNode.getBoundingClientRect().height;this.parentDomNode.style[\"height\"]=l+\"px\";var h=this.handleResetEvent.bind(this);this.networkContainer.addEventListener(\"reset\",h,false);$tm.registry.push(this);this.enhanceConfigurator()};MapConfigWidget.prototype.handleResetEvent=function(e){var t={};t[e.detail.trigger.path]=null;this.handleConfigChange(t)};MapConfigWidget.prototype.handleConfigChange=function(e){var t=_utils2.default.flatten(this.changes);var i=_utils2.default.flatten(e);var s=Object.keys(_utils2.default.flatten(e))[0];var n=i[s]===null;if(n){t[s]=undefined;this.changes=_utils2.default.unflatten(t)}else{this.changes=_utils2.default.merge(this.changes,e)}var r=_utils2.default.merge({},this.changes);if(this.mode===\"manage-node-types\"){r=r[\"nodes\"]}if(this.mode===\"manage-edge-types\"){r=r[\"edges\"]}_utils2.default.writeFieldData(this.pipeTRef,this.extensionTField,r,$tm.config.sys.jsonIndentation);var o=\"vis-configuration-wrapper\";var a=this.networkContainer.getElementsByClassName(o)[0];a.style.height=a.getBoundingClientRect().height+\"px\";if(n){window.setTimeout(this.refresh.bind(this),0)}else{window.setTimeout(this.enhanceConfigurator.bind(this),50)}};MapConfigWidget.prototype.enhanceConfigurator=function(){var e=\"vis-configuration-wrapper\";var t=this.networkContainer.getElementsByClassName(e)[0].children;var i=[];var s=_utils2.default.flatten(this.changes);for(var n=0;n<t.length;n++){if(!t[n].classList.contains(\"vis-config-item\"))continue;var r=new VisConfElement(t[n],i,n);i.push(r);if(r.level===0)continue;r.setActive(!!s[r.path])}};function VisConfElement(e,t,i){var s=\"getElementsByClassName\";this.el=e;this.labelEl=e[s](\"vis-config-label\")[0]||e[s](\"vis-config-header\")[0]||e;var n=this.labelEl.innerText||this.labelEl.textContent;this.label=n&&n.match(/([a-zA-Z0-9]+)/)[1];this.level=parseInt(e.className.match(/.*vis-config-s(.).*/)[1])||0;this.path=this.label;if(this.level>0){for(var r=i;r--;){var o=t[r];if(o.level<this.level){this.path=o.path+\".\"+this.path;break}}}}VisConfElement.prototype.setActive=function(e){if(!e)return;var t=\"tmap-vis-config-item-\"+(e?\"active\":\"inactive\");$tw.utils.addClass(this.el,t);if(e){var i=document.createElement(\"button\");i.innerHTML=\"reset\";i.className=\"tmap-config-item-reset\";var s=this;i.addEventListener(\"click\",function(e){e.currentTarget.dispatchEvent(new CustomEvent(\"reset\",{detail:{trigger:s},bubbles:true,cancelable:true}))},false);this.el.appendChild(i)}};MapConfigWidget.prototype.getOptionFilter=function(e){var t={nodes:{borderWidth:true,borderWidthSelected:true,widthConstraint:true,heightConstraint:true,color:{background:true,border:true},font:{color:true,size:true},icon:true,labelHighlightBold:false,shadow:true,shape:true,shapeProperties:{borderDashes:true},size:true},edges:{arrows:true,color:true,dashes:true,font:true,labelHighlightBold:false,length:true,selfReferenceSize:false,shadow:true,smooth:true,width:true},interaction:{hideEdgesOnDrag:true,hideNodesOnDrag:true,tooltipDelay:true},layout:{hierarchical:true},manipulation:{initiallyActive:true},physics:{forceAtlas2Based:{gravitationalConstant:true,springLength:true,springConstant:true,damping:true,centralGravity:true}}};if(e===\"manage-edge-types\"){t={edges:t.edges}}else if(e===\"manage-node-types\"){t={nodes:t.nodes}}else{t.edges.arrows=false}return function(e,i){i=i.concat([e]);var s=t;for(var n=0,r=i.length;n<r;n++){if(s[i[n]]===true){return true}else if(s[i[n]]==null){return false}s=s[i[n]]}return false}};MapConfigWidget.prototype.isZombieWidget=function(){return!document.body.contains(this.parentDomNode)};MapConfigWidget.prototype.destruct=function(){if(this.network){this.network.destroy()}};MapConfigWidget.prototype.refresh=function(e){if(this.isZombieWidget()||!this.network)return;if(!e||e[this.refreshTrigger]){this.refreshSelf();return true}};MapConfigWidget.prototype.setNull=function(e){for(var t in e){if(_typeof(e[t])==\"object\"){this.setNull(e[t])}else{e[t]=undefined}}};exports[\"tmap-config\"]=MapConfigWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/ConfigurationWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem",
"text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListItemWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var i=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r));i.arrows=$tm.misc.arrows;return i}_createClass(t,[{key:\"execute\",value:function e(){var t=this.parseTreeNode;var r=$tm.tracker.getTiddlerById(t.neighbour.id);var i=_utils2.default.flatten(t.edge);for(var o in i){if(typeof i[o]===\"string\"){this.setVariable(\"edge.\"+o,i[o])}}this.setVariable(\"currentTiddler\",r);this.setVariable(\"neighbour\",r);var n=$tm.indeces.allETy[i.type];var s=i.to===t.neighbour.id?\"to\":\"from\";var a=s;if(n.biArrow){a=\"bi\"}else{if(s===\"to\"&&n.invertedArrow){a=\"from\"}else if(s===\"from\"&&n.invertedArrow){a=\"to\"}}this.setVariable(\"direction\",a);this.setVariable(\"directionSymbol\",a===\"bi\"?this.arrows.bi:a===\"from\"?this.arrows.in:this.arrows.out);this.makeChildWidgets()}},{key:\"refresh\",value:function e(t){return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-edgelistitem\"]=EdgeListItemWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListItemWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget",
"text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r))}_createClass(t,[{key:\"render\",value:function e(t,r){this.parentDomNode=t;this.computeAttributes();this.execute();this.renderChildren(t,r)}},{key:\"execute\",value:function e(){var t=[this.getVariable(\"currentTiddler\")];var r=this.getAttribute(\"filter\",\"\");var i=this.getAttribute(\"direction\",\"both\");var s=$tm.indeces.allETy;var n=_utils2.default.getEdgeTypeMatches(r,s);var u={typeWL:_utils2.default.getLookupTable(n),direction:i};var o=$tm.adapter.getNeighbours(t,u),a=o.nodes,l=o.edges;var f=[];for(var c in l){var h=l[c];var p=a[h.to]||a[h.from];if(!p){continue}f.push({type:\"tmap-edgelistitem\",edge:h,typeWL:u.typeWL,neighbour:p,children:this.parseTreeNode.children})}if(!f.length){this.wasEmpty=true;f=this.getEmptyMessage()}else if(this.wasEmpty){this.removeChildDomNodes()}this.makeChildWidgets(f)}},{key:\"getEmptyMessage\",value:function e(){var t=this.wiki.parseText(\"text/vnd.tiddlywiki\",this.getAttribute(\"emptyMessage\",\"\"),{parseAsInline:true});return t?t.tree:[]}},{key:\"refresh\",value:function e(t){var r=this.computeAttributes();if(_utils2.default.hasElements(r)){this.refreshSelf();return true}for(var i in t){if(!_utils2.default.isSystemOrDraft(i)){this.refreshSelf();return true}}return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-connections\"]=EdgeListWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.tiddlymap=exports.tmap=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var a in i){if(Object.prototype.hasOwnProperty.call(i,a)){e[a]=i[a]}}}return e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var a=t[i];a.enumerable=a.enumerable||false;a.configurable=true;if(\"value\"in a)a.writable=true;Object.defineProperty(e,a.key,a)}}return function(t,i,a){if(i)e(t.prototype,i);if(a)e(t,a);return t}}();var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Popup=require(\"$:/plugins/felixhayashi/tiddlymap/js/Popup\");var _Popup2=_interopRequireDefault(_Popup);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _SelectionRectangle=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\");var _SelectionRectangle2=_interopRequireDefault(_SelectionRectangle);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,i=Array(e.length);t<e.length;t++){i[t]=e[t]}return i}else{return Array.from(e)}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var MapWidget=function(e){_inherits(t,e);function t(e,i){_classCallCheck(this,t);var a=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,i));a.getAttr=a.getAttribute;a.isDebug=_utils2.default.isTrue($tm.config.sys.debug,false);_utils2.default.bindTo(a,[\"constructTooltip\",\"handleResizeEvent\",\"handleClickEvent\",\"handleCanvasKeyup\",\"handleCanvasKeydown\",\"handleCanvasScroll\",\"handleCanvasMouseMove\",\"handleWidgetKeyup\",\"handleWidgetKeydown\",\"handleTriggeredRefresh\",\"handleContextMenu\"]);a.callbackManager=new _CallbackManager2.default;a.computeAttributes();a.editorMode=a.getAttr(\"editor\");a.clickToUse=_utils2.default.isTrue(a.getAttr(\"click-to-use\"),false);a.id=a.getAttr(\"object-id\")||a.getStateQualifier();a.widgetPopupsPath=$tm.path.tempPopups+\"/\"+a.id;if(a.editorMode){_utils2.default.addTWlisteners({\"tmap:tm-create-view\":a.handleCreateView,\"tmap:tm-rename-view\":a.handleRenameView,\"tmap:tm-delete-view\":a.handleDeleteView,\"tmap:tm-delete-element\":a.handleDeleteElement,\"tmap:tm-edit-view\":a.handleEditView,\"tmap:tm-generate-widget\":a.handleGenerateWidget,\"tmap:tm-toggle-central-topic\":a.handleSetCentralTopic,\"tmap:tm-save-canvas\":a.handleSaveCanvas},a,a)}_utils2.default.addTWlisteners({\"tmap:tm-focus-node\":a.handleFocusNode,\"tmap:tm-reset-focus\":a.repaintGraph,\"tmap:tm-neighbourhood-reset-trace\":function e(){a.initAndRenderGraph(a.graphDomNode)}},a,a);a.visListeners={click:a.handleVisSingleClickEvent,doubleClick:a.handleVisDoubleClickEvent,stabilized:a.handleVisStabilizedEvent,selectNode:a.handleVisSelectNode,deselectNode:a.handleVisDeselectNode,dragStart:a.handleVisDragStart,dragEnd:a.handleVisDragEnd,hoverNode:a.handleVisHoverElement,hoverEdge:a.handleVisHoverElement,blurNode:a.handleVisBlurElement,blurEdge:a.handleVisBlurElement,beforeDrawing:a.handleVisBeforeDrawing,afterDrawing:a.handleVisAfterDrawing,stabilizationProgress:a.handleVisLoading,stabilizationIterationsDone:a.handleVisLoadingDone};a.windowDomListeners={resize:[a.handleResizeEvent,false],click:[a.handleClickEvent,false],mousemove:[a.handleCanvasMouseMove,true]};a.canvasDomListeners={keyup:[a.handleCanvasKeyup,true],keydown:[a.handleCanvasKeydown,true],mousewheel:[a.handleCanvasScroll,true],DOMMouseScroll:[a.handleCanvasScroll,true],contextmenu:[a.handleContextMenu,true],MozMousePixelScroll:[a.handleExtraCanvasScroll,true]};a.widgetDomListeners={keyup:[a.handleWidgetKeyup,true],keydown:[a.handleWidgetKeydown,true]};a.conVector={from:null,to:null};return a}_createClass(t,[{key:\"handleConnectionEvent\",value:function e(t,i){var a=this;var s=this.view.getEdgeTypeFilter();var r={fromLabel:$tm.adapter.selectNodeById(t.from).label,toLabel:$tm.adapter.selectNodeById(t.to).label,view:this.view.getLabel(),eTyFilter:s.raw};$tm.dialogManager.open(\"getEdgeType\",r,function(e,r){if(e){var n=_utils2.default.getText(r);var o=_EdgeType2.default.getInstance(n);if(!o.namespace){var l=_EdgeType2.default.getIdParts(o.id),d=l.marker,h=l.name;var u=a.view.getConfig(\"edge_type_namespace\");o=_EdgeType2.default.getInstance(_EdgeType2.default.getId(d,u,h))}if(!o.exists()){o.save()}t.type=o.id;$tm.adapter.insertEdge(t);a.isPreventZoomOnNextUpdate=true;if(!a.view.isEdgeTypeVisible(o)){$tm.dialogManager.open(\"edgeNotVisible\",{type:o.id,view:a.view.getLabel(),eTyFilter:s.pretty})}}if(typeof i===\"function\"){i(e)}})}},{key:\"checkForFreshInstall\",value:function e(){if(!_utils2.default.getEntry($tm.ref.sysMeta,\"showWelcomeMessage\",true)){return}_utils2.default.setEntry($tm.ref.sysMeta,\"showWelcomeMessage\",false);var t={dialog:{preselects:{\"config.storyview\":\"true\",\"config.navigation\":\"true\",\"config.sidebar\":\"true\",\"config.demo\":\"true\"}}};$tm.dialogManager.open(\"welcome\",t,function(e,t){var i=_utils2.default.getPropertiesByPrefix(t.fields,\"config.\",true);if(i[\"storyview\"]&&_utils2.default.tiddlerExists(\"$:/plugins/felixhayashi/topstoryview\")){_utils2.default.setText(\"$:/view\",\"top\")}if(i[\"navigation\"]){_utils2.default.setText(\"$:/config/Navigation/openLinkFromInsideRiver\",\"above\");_utils2.default.setText(\"$:/config/Navigation/openLinkFromOutsideRiver\",\"top\")}if(i[\"sidebar\"]){_utils2.default.setText(\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\",\"fixed-fluid\")}if(i[\"demo\"]){var a=$tm.misc.defaultViewLabel;var s=$tm.adapter.insertNode({label:\"Have fun with\",x:0,y:0},a);var r=$tm.adapter.insertNode({label:\"TiddlyMap!!\",x:100,y:100},a);$tm.adapter.insertEdge({from:s.id,to:r.id})}if(Object.keys(i).length){_utils2.default.touch(\"$:/plugins/felixhayashi/tiddlymap\")}})}},{key:\"openStandardConfirmDialog\",value:function e(t,i){var a={message:i};$tm.dialogManager.open(\"getConfirmation\",a,t)}},{key:\"logger\",value:function e(t,i){if(this.isDebug){var a=Array.prototype.slice.call(arguments,1);a.unshift(\"@\"+this.id);a.unshift(t);$tm.logger.apply(this,a)}}},{key:\"render\",value:function e(t,i){this.parentDomNode=t;this.domNode=this.document.createElement(\"div\");t.insertBefore(this.domNode,i);this.registerClassNames(this.domNode);this.viewHolderRef=this.getViewHolderRef();this.view=this.getView();this.graphBarDomNode=this.document.createElement(\"div\");$tw.utils.addClass(this.graphBarDomNode,\"tmap-topbar\");this.domNode.appendChild(this.graphBarDomNode);this.graphDomNode=this.document.createElement(\"div\");this.domNode.appendChild(this.graphDomNode);$tw.utils.addClass(this.graphDomNode,\"tmap-vis-graph\");if(_utils2.default.isPreviewed(this)){$tw.utils.addClass(this.domNode,\"tmap-static-mode\");this.renderPreview(this.graphBarDomNode,this.graphDomNode)}else{this.renderFullWidget(this.domNode,this.graphBarDomNode,this.graphDomNode);var a=this.document.createElement(\"canvas\");$tw.utils.addClass(a,\"tmap-download-canvas\");this.domNode.appendChild(a)}}},{key:\"renderPreview\",value:function e(t,i){var a=this.view.snapshotTRef;var s=_utils2.default.getTiddler(a);var r=this.document.createElement(\"span\");r.innerHTML=this.view.getLabel();r.className=\"tmap-view-label\";t.appendChild(r);if(s){var n=_utils2.default.getTiddlerNode(this.view.getRoot());n.children.push(_utils2.default.getTranscludeNode(a));this.makeChildWidgets([n]);this.renderChildren(i,i.firstChild)}else{$tw.utils.addClass(i,\"tmap-graph-placeholder\")}}},{key:\"renderFullWidget\",value:function e(t,i,a){_utils2.default.setDomListeners(\"add\",window,this.windowDomListeners);_utils2.default.setDomListeners(\"add\",t,this.widgetDomListeners);this.addLoadingBar(this.domNode);this.tooltip=new _Popup2.default(this.domNode,{className:\"tmap-tooltip\",showDelay:$tm.config.sys.popups.delay});this.contextMenu=new _Popup2.default(this.domNode,{className:\"tmap-context-menu\",showDelay:0,hideOnClick:true,leavingDelay:999999});this.sidebar=_utils2.default.getFirstElementByClassName(\"tc-sidebar-scrollable\");this.isInSidebar=this.sidebar&&!this.domNode.isTiddlyWikiFakeDom&&this.sidebar.contains(this.domNode);this.rebuildEditorBar(i);this.reloadRefreshTriggers();this.initAndRenderGraph(a);$tm.registry.push(this);this.checkForFreshInstall();if(this.id===$tm.misc.mainEditorId){var s=$tm.url;if(s&&s.query[\"tmap-enlarged\"]){this.toggleEnlargedMode(s.query[\"tmap-enlarged\"]);this.setView(s.query[\"tmap-view\"])}}}},{key:\"registerClassNames\",value:function e(t){var i=$tw.utils.addClass;i(t,\"tmap-widget\");if(this.clickToUse){i(t,\"tmap-click-to-use\")}if(this.getAttr(\"editor\")===\"advanced\"){i(t,\"tmap-advanced-editor\")}if(this.getAttr(\"design\")===\"plain\"){i(t,\"tmap-plain-design\")}if(!_utils2.default.isTrue(this.getAttr(\"show-buttons\"),true)){i(t,\"tmap-no-buttons\")}if(this.getAttr(\"class\")){i(t,this.getAttr(\"class\"))}}},{key:\"addLoadingBar\",value:function e(t){this.graphLoadingBarDomNode=this.document.createElement(\"progress\");$tw.utils.addClass(this.graphLoadingBarDomNode,\"tmap-loading-bar\");t.appendChild(this.graphLoadingBarDomNode)}},{key:\"rebuildEditorBar\",value:function e(){this.removeChildDomNodes();var t=this.view;var i=\"tmap-unicode-button\";var a=i+\" tmap-active-button\";var s={widgetQualifier:this.getStateQualifier(),widgetTempPath:this.widgetTempPath,widgetPopupsPath:this.widgetPopupsPath,isViewBound:String(this.isViewBound()),viewRoot:t.getRoot(),viewLabel:t.getLabel(),viewHolder:this.getViewHolderRef(),edgeTypeFilter:t.edgeTypeFilterTRef,allEdgesFilter:$tm.selector.allEdgeTypes,isShowNeighbourhood:String(t.isEnabled(\"neighbourhood_scope\")),tracingBtnClass:t.isEnabled(\"neighbourhood_trace_clicks\")?a:i,neighScopeBtnClass:t.isEnabled(\"neighbourhood_scope\")?a:i,rasterMenuBtnClass:t.isEnabled(\"raster\")?a:i};for(var r in s){this.setVariable(r,s[r])}var n=_utils2.default.getTiddlerNode(t.getRoot());if(this.editorMode===\"advanced\"){n.children.push(_utils2.default.getTranscludeNode($tm.ref.graphBar))}else{var o=_utils2.default.getElementNode(\"span\",\"tmap-view-label\",t.getLabel());n.children.push(o)}n.children.push(_utils2.default.getTranscludeNode($tm.ref.focusButton));this.makeChildWidgets([n]);this.renderChildren(this.graphBarDomNode,this.graphBarDomNode.firstChild)}},{key:\"refresh\",value:function e(t){return false}},{key:\"update\",value:function e(t){if(!this.network||this.isZombieWidget()||_utils2.default.isPreviewed(this)){return}var i=t.changedTiddlers;this.callbackManager.refresh(i);if(this.isViewSwitched(i)||this.hasChangedAttributes()||t[env.path.options]||i[this.view.getRoot()]){this.logger(\"warn\",\"View switched or config changed\");this.isPreventZoomOnNextUpdate=false;this.view=this.getView(true);this.reloadRefreshTriggers();this.trace=_utils2.default.makeHashMap();this.rebuildEditorBar();this.reloadBackgroundImage();this.initAndRenderGraph(this.graphDomNode)}else{var a=this.view.update(t);if(a){this.logger(\"warn\",\"View components modified\");this.rebuildGraph({resetFocus:{delay:1e3,duration:1e3}})}else{if(t[env.path.nodeTypes]||this.hasChangedElements(i)){this.rebuildGraph()}this.refreshChildren(i)}}}},{key:\"hidePopups\",value:function e(t,i){this.tooltip.hide(t,i);this.contextMenu.hide(0,true)}},{key:\"reloadRefreshTriggers\",value:function e(){this.callbackManager.remove(this.refreshTriggers);var t=this.getAttr(\"refresh-triggers\")||this.view.getConfig(\"refresh-triggers\");this.refreshTriggers=$tw.utils.parseStringArray(t)||[];this.logger(\"debug\",\"Registering refresh trigger\",this.refreshTriggers);for(var i=this.refreshTriggers.length;i--;){this.callbackManager.add(this.refreshTriggers[i],this.handleTriggeredRefresh,false)}}},{key:\"rebuildGraph\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.resetFocus;if(_utils2.default.isPreviewed(this)){return}this.logger(\"debug\",\"Rebuilding graph\");this.hidePopups(0,true);this.hasNetworkStabilized=false;var a=this.rebuildGraphData();if(a.changedNodes.withoutPosition.length){i=i||{delay:1e3,duration:1e3};if(!this.view.isEnabled(\"physics_mode\")){var s=this.visOptions.physics;s[s.solver].centralGravity=.25;this.network.setOptions(this.visOptions)}}if(!_utils2.default.hasElements(this.graphData.nodesById)){return}if(i){var r=this.isPreventZoomOnNextUpdate==null?false:typeof this.isPreventZoomOnNextUpdate===\"number\"?this.isPreventZoomOnNextUpdate>Date.now():this.isPreventZoomOnNextUpdate;if(!r){this.network.stabilize();this.resetFocus=i}if(typeof this.isPreventZoomOnNextUpdate!==\"number\"){this.isPreventZoomOnNextUpdate=false}}}},{key:\"getContainer\",value:function e(){return this.domNode}},{key:\"rebuildGraphData\",value:function e(){var t=this;$tm.start(\"Reloading Network\");var i={view:this.view,matches:_utils2.default.getMatches(this.view.getNodeFilter(\"compiled\"))};if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){var a=i.matches;var s=Object.keys(this.trace);var r=[].concat(_toConsumableArray(a.filter(function(e){return!t.trace[e]})),_toConsumableArray(s));i.matches=r;i.includeNeighboursOf=this.view.isEnabled(\"neighbourhood_include_traced_node_neighbours\")?function(e){return r.includes(e)}:function(e){return a.includes(e)}}var n=$tm.adapter.getGraph(i);var o=_utils2.default.refreshDataSet(this.graphData.nodes,n.nodes);var l=_utils2.default.refreshDataSet(this.graphData.edges,n.edges);this.graphData.nodesById=n.nodes;this.graphData.edgesById=n.edges;_utils2.default.setField(\"$:/temp/tmap/nodes/\"+this.view.getLabel(),\"list\",$tm.adapter.getTiddlersByIds(n.nodes));$tm.stop(\"Reloading Network\");return{changedEdges:l,changedNodes:o}}},{key:\"isViewBound\",value:function e(){return _utils2.default.startsWith(this.getViewHolderRef(),$tm.path.localHolders)}},{key:\"isViewSwitched\",value:function e(t){return!_ViewAbstraction2.default.exists(this.view)||t[this.getViewHolderRef()]}},{key:\"hasChangedAttributes\",value:function e(){return Object.keys(this.computeAttributes()).length}},{key:\"hasChangedElements\",value:function e(t){var i=[];var a=this.graphData.nodesById;var s=this.view.isEnabled(\"neighbourhood_scope\");for(var r in t){if(_utils2.default.isSystemOrDraft(r)){continue}if(a[$tm.adapter.getId(r)]||s){return true}if(t[r].modified){i.push(r)}}if(i.length){var n=this.view.getNodeFilter(\"compiled\");var o=_utils2.default.getMatches(n,i);return!!o.length}}},{key:\"initAndRenderGraph\",value:function e(t){var i=this;if(this.network){this._destructVis()}this.logger(\"info\",\"Initializing and rendering the graph\");if(!this.isInSidebar){this.callbackManager.add(\"$:/state/sidebar\",this.handleResizeEvent)}this.visOptions=this.getVisOptions();this.graphData={nodes:new _vis2.default.DataSet,edges:new _vis2.default.DataSet,nodesById:_utils2.default.makeHashMap(),edgesById:_utils2.default.makeHashMap()};this.tooltip.setEnabled(_utils2.default.isTrue($tm.config.sys.popups.enabled,true));this.trace=_utils2.default.makeHashMap();this.network=new _vis2.default.Network(t,this.graphData,this.visOptions);this.canvas=t.getElementsByTagName(\"canvas\")[0];this.networkDomNode=_utils2.default.getFirstElementByClassName(\"vis-network\",t,true);this.canvas.tabIndex=0;for(var a in this.visListeners){this.network.on(a,this.visListeners[a].bind(this))}this.addGraphButtons({\"fullscreen-button\":function e(){i.toggleEnlargedMode(\"fullscreen\")},\"halfscreen-button\":function e(){i.toggleEnlargedMode(\"halfscreen\")}});_utils2.default.setDomListeners(\"add\",this.canvas,this.canvasDomListeners);this.reloadBackgroundImage();this.rebuildGraph({resetFocus:{delay:0,duration:0}});this.handleResizeEvent();this.canvas.focus();if(this.isLiveView()&&this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[_utils2.default.getText(this.refreshTriggers[0])]=true}}},{key:\"handleCanvasKeyup\",value:function e(t){var i=this;var a=this.network.getSelectedNodes();if(t.ctrlKey){t.preventDefault();if(t.keyCode===88){if(this.editorMode){this.handleAddNodesToClipboard(\"move\")}else{$tm.notify(\"Map is read only!\")}}else if(t.keyCode===67){this.handleAddNodesToClipboard(\"copy\")}else if(t.keyCode===86){this.handlePasteNodesFromClipboard()}else if(t.keyCode===65){var s=Object.keys(this.graphData.nodesById);this.network.selectNodes(s)}else if(t.keyCode===49||t.keyCode===50){if(a.length!==1)return;var r=t.keyCode===49?\"from\":\"to\";$tm.notify(_utils2.default.ucFirst(r)+\"-part selected\");this.conVector[r]=a[0];if(this.conVector.from&&this.conVector.to){this.handleConnectionEvent(this.conVector,function(){i.conVector={from:null,to:null}})}}}else{if(t.keyCode===13){if(a.length!==1)return;this.openTiddlerWithId(a[0])}}}},{key:\"handleCanvasKeydown\",value:function e(t){if(t.altKey||t.metaKey){t.preventDefault();if(t.keyCode>=48&&t.keyCode<=57){var i=String.fromCharCode(t.keyCode);this.view.setConfig(\"neighbourhood_scope\",i)}}else{if(t.keyCode===46){t.preventDefault();this.handleRemoveElements(this.network.getSelection())}}}},{key:\"handleDeleteElement\",value:function e(t){var i=t.paramObject.id;var a=i?[i]:this.network.getSelectedNodes();this.handleRemoveElements({nodes:a})}},{key:\"handleCanvasMouseMove\",value:function e(t){var i=this.network;if(!(t.ctrlKey&&t.buttons)){if(this.selectRect){this.selectRect=null;var a=i.getSelectedNodes();$tm.notify(a.length+\" nodes selected\");i.redraw()}return}t.preventDefault();t.stopPropagation();if(!this.domNode.contains(t.target)){return}var s=i.DOMtoCanvas({x:t.offsetX,y:t.offsetY});if(!this.selectRect){this.selectRect=new _SelectionRectangle2.default(s.x,s.y)}this.selectRect.span(s.x,s.y);var r=i.getPositions();var n=i.getSelectedNodes();for(var o in r){if(this.selectRect.isPointWithin(r[o])&&!_utils2.default.inArray(o,n)){n.push(o)}}i.selectNodes(n);this.assignActiveStyle(n);i.redraw()}},{key:\"handleCanvasScroll\",value:function e(t){var i=!!(this.isInSidebar||t.ctrlKey||this.enlargedMode||this.clickToUse&&this.networkDomNode.classList.contains(\"vis-active\"));var a=this.visOptions.interaction;var s=i===a.zoomView;if(i||!s){t.preventDefault()}if(!s){t.stopPropagation();a.zoomView=i;this.network.setOptions({interaction:{zoomView:i}});return false}}},{key:\"handleExtraCanvasScroll\",value:function e(t){t.preventDefault()}},{key:\"handleContextMenu\",value:function e(t){var i=this;t.preventDefault();var a=this.network;this.hidePopups(0,true);var s=a.getNodeAt({x:t.offsetX,y:t.offsetY});if(!s)return;var r=a.getSelectedNodes();if(!_utils2.default.inArray(s,r)){r=[s];a.selectNodes(r)}this.contextMenu.show(r,function(e,t){var a=e.length>1?\"multi\":\"single\";var s=\"$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node\";_utils2.default.registerTransclude(i,\"contextMenuWidget\",s);i.contextMenuWidget.setVariable(\"mode\",a);i.contextMenuWidget.render(t)})}},{key:\"handleWidgetKeyup\",value:function e(t){}},{key:\"handleWidgetKeydown\",value:function e(t){if(t.ctrlKey){t.preventDefault();if(t.keyCode===70){t.preventDefault();var i=this.widgetPopupsPath+\"/focus\";_utils2.default.setText(i,_utils2.default.getText(i)?\"\":\"1\")}else{return}}else if(t.keyCode===120){t.preventDefault();this.toggleEnlargedMode(\"halfscreen\")}else if(t.keyCode===121){t.preventDefault();this.toggleEnlargedMode(\"fullscreen\")}else if(t.keyCode===27){t.preventDefault();_utils2.default.deleteByPrefix(this.widgetPopupsPath)}else{return}this.canvas.focus()}},{key:\"handlePasteNodesFromClipboard\",value:function e(){if(!this.editorMode){$tm.notify(\"Map is read only!\");return}if(!$tm.clipBoard||$tm.clipBoard.type!==\"nodes\"){$tm.notify(\"TiddlyMap clipboad is empty!\")}var t=$tm.clipBoard.nodes;var i=Object.keys(t);for(var a=i.length;a--;){var s=i[a];if(this.graphData.nodesById[s]){continue}this.view.addNode(t[s]);this.graphData.nodes.update({id:s})}this.network.selectNodes(i);this.rebuildGraph({resetFocus:{delay:0,duration:0}});$tm.notify(\"pasted \"+i.length+\" nodes into map.\")}},{key:\"handleAddNodesToClipboard\",value:function e(t){var i=this.network.getSelectedNodes();if(!i.length){return}$tm.clipBoard={type:\"nodes\",nodes:this.graphData.nodes.get(i,{returnType:\"Object\"})};$tm.notify(\"Copied \"+i.length+\" nodes to clipboard\");if(t===\"move\"){for(var a=i.length;a--;){this.view.removeNode(i[a])}}this.isPreventZoomOnNextUpdate=true}},{key:\"getVisOptions\",value:function e(){var t=this;var i=$tm.config.vis;var a=_utils2.default.parseJSON(this.view.getConfig(\"vis\"))||{};var s=a.layout||{},r=s.hierarchical;var n={layout:{hierarchical:{enabled:r===undefined||r===null?false:typeof r===\"boolean\"?r:r.enabled!==false}}};var o=_utils2.default.merge({},i,_utils2.default.merge(a,n));o.clickToUse=this.clickToUse;o.manipulation.enabled=!!this.editorMode;o.manipulation.deleteNode=function(e,i){t.handleRemoveElements(e);t.resetVisManipulationBar(i)};o.manipulation.deleteEdge=function(e,i){t.handleRemoveElements(e);t.resetVisManipulationBar(i)};o.manipulation.addEdge=function(e,i){t.handleConnectionEvent(e);t.resetVisManipulationBar(i)};o.manipulation.addNode=function(e,i){t.handleInsertNode(e);t.resetVisManipulationBar(i)};o.manipulation.editNode=function(e,i){t.handleEditNode(e);t.resetVisManipulationBar(i)};o.interaction.zoomView=!!(this.isInSidebar||this.enlargedMode);o.manipulation.editEdge=false;var l=o.physics;l[l.solver]=l[l.solver]||{};l.stabilization.iterations=1e3;this.logger(\"debug\",\"Loaded graph options\",o);return o}},{key:\"resetVisManipulationBar\",value:function e(t){if(t){t(null)}this.network.disableEditMode();this.network.enableEditMode()}},{key:\"isVisInEditMode\",value:function e(){return this.graphDomNode.getElementsByClassName(\"vis-button vis-back\").length>0}},{key:\"isLiveView\",value:function e(){return this.id===\"live_tab\"}},{key:\"handleCreateView\",value:function e(){var t=this;var i={view:this.view.getLabel()};$tm.dialogManager.open(\"createView\",i,function(e,i){if(!e)return;var a=_utils2.default.getField(i,\"name\");var s=_utils2.default.getField(i,\"clone\",false);if(_ViewAbstraction2.default.exists(a)){$tm.notify(\"Forbidden! View already exists!\");return}if(s&&t.isLiveView()){$tm.notify(\"Forbidden to clone the live view!\");return}var r=new _ViewAbstraction2.default(a,{isCreate:true,protoView:s?t.view:null});t.setView(r)})}},{key:\"handleRenameView\",value:function e(){var t=this;if(this.view.isLocked()){$tm.notify(\"Forbidden!\");return}var i=this.view.getOccurrences();var a={count:i.length.toString(),refFilter:_utils2.default.joinAndWrap(i,\"[[\",\"]]\")};$tm.dialogManager.open(\"renameView\",a,function(e,i){if(!e){return}var a=_utils2.default.getText(i);if(!a){$tm.notify(\"Invalid name!\")}else if(_ViewAbstraction2.default.exists(a)){$tm.notify(\"Forbidden! View already exists!\")}else{t.view.rename(a);t.setView(t.view)}})}},{key:\"handleEditView\",value:function e(){var t=this;var i=JSON.stringify($tm.config.vis);var a=this.graphData;var s=this.view.getConfig();var r={\"filter.prettyNodeFltr\":this.view.getNodeFilter(\"pretty\"),\"filter.prettyEdgeFltr\":this.view.getEdgeTypeFilter(\"pretty\"),\"inherited-style\":i};var n={view:this.view.getLabel(),createdOn:this.view.getCreationDate(true),numberOfNodes:Object.keys(a.nodesById).length.toString(),numberOfEdges:Object.keys(a.edgesById).length.toString(),dialog:{preselects:$tw.utils.extend({},s,r)}};$tm.dialogManager.open(\"configureView\",n,function(e,i){if(!e){return}var a=_utils2.default.getPropertiesByPrefix(i.fields,\"config.\",true);var s=t.view.getConfig(\"background_image\");t.view.setConfig(a);if(a[\"physics_mode\"]&&!t.view.isEnabled(\"physics_mode\")){t.view.saveNodePositions(t.network.getPositions())}var r=t.view.getConfig(\"background_image\");if(r&&r!==s){$tm.notify(\"Background changed! You may need to zoom out a bit.\")}var n=_utils2.default.getField(i,\"filter.prettyNodeFltr\",\"\");var o=_utils2.default.getField(i,\"filter.prettyEdgeFltr\",\"\");t.view.setNodeFilter(n);t.view.setEdgeTypeFilter(o)})}},{key:\"handleSaveCanvas\",value:function e(){var t=this;var i=\"$:/temp/tmap/snapshot\";this.createAndSaveSnapshot(100,100,i);var a=this.view.getLabel()+\".png\";var s={dialog:{snapshot:i,view:this.view.getLabel(),preselects:{width:this.canvas.width.toString(),height:this.canvas.height.toString(),name:a,action:\"download\"}}};$tm.dialogManager.open(\"saveCanvas\",s,function(e,a){if(!e)return;var r=a.fields.width||s.dialog.preselects.width;var n=a.fields.height||s.dialog.preselects.height;t.createAndSaveSnapshot(r,n,i);var o=a.fields.name||s.dialog.preselects.imageName;var l=a.fields.action;if(l===\"download\"){t.handleDownloadSnapshot(r,n,o)}else if(l===\"wiki\"){_utils2.default.cp(i,o,true);t.dispatchEvent({type:\"tm-navigate\",navigateTo:o})}else if(l===\"placeholder\"){t.view.addPlaceholder(i)}$tw.wiki.deleteTiddler(\"$:/temp/tmap/snapshot\")})}},{key:\"handleDownloadSnapshot\",value:function e(t,i,a){var s=this.document.createElement(\"a\");var r=this.view.getLabel();s.download=a;s.href=this.getCanvasAsBase64({size:{width:t,height:i}});var n=new MouseEvent(\"click\");s.dispatchEvent(n)}},{key:\"createAndSaveSnapshot\",value:function e(t,i,a,s){$tw.wiki.addTiddler(new $tw.Tiddler({title:s||a,type:\"image/png\",text:this.getCanvasAsBase64({size:{width:t,height:i},withoutPreamble:true})},$tw.wiki.getCreationFields(),$tw.wiki.getModificationFields()));return a}},{key:\"getCanvasAsBase64\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.withoutPreamble,a=t.size;var s=this.graphDomNode.style.width;var r=this.graphDomNode.style.height;if(a){this.graphDomNode.style.width=a.width+\"px\";this.graphDomNode.style.height=a.height+\"px\";this.network.redraw()}var n=this.canvas.toDataURL(\"image/png\");if(a){this.graphDomNode.style.width=s;this.graphDomNode.style.height=r;this.network.redraw()}return i?_utils2.default.getWithoutPrefix(n,\"data:image/png;base64,\"):n}},{key:\"handleDeleteView\",value:function e(){var t=this;var i=this.view.getLabel();if(this.view.isLocked()){$tm.notify(\"Forbidden!\");return}var a=this.view.getOccurrences();if(a.length){var s={count:a.length.toString(),refFilter:_utils2.default.joinAndWrap(a,\"[[\",\"]]\")};$tm.dialogManager.open(\"cannotDeleteViewDialog\",s);return}var r=\"\\n You are about to delete the view ''\"+i+\"''\\n (no tiddler currently references this view).\\n \";this.openStandardConfirmDialog(function(e){if(!e){return}t.view.destroy();t.setView($tm.misc.defaultViewLabel);var a='view \"'+i+\"' deleted\";t.logger(\"debug\",a);$tm.notify(a)},r)}},{key:\"handleTriggeredRefresh\",value:function e(t){this.logger(\"log\",t,\"Triggered a refresh\");var i=_utils2.default.getTiddler(_utils2.default.getText(t));if(this.isLiveView()){if(i){if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[i.fields.title]=true}var a=i.fields[\"tmap.open-view\"]||$tm.config.sys.liveTab.fallbackView;if(a&&a!==this.view.getLabel()){this.setView(a);return}}}this.rebuildGraph({resetFocus:{delay:1e3,duration:1e3}})}},{key:\"handleRemoveElements\",value:function e(t){var i=t.nodes,a=t.edges;if(i.length){this.handleRemoveNodes(i)}else if(a.length){this.handleRemoveEdges(a)}this.resetVisManipulationBar()}},{key:\"handleRemoveEdges\",value:function e(t){$tm.adapter.deleteEdges(this.graphData.edges.get(t));$tm.notify(\"edge\"+(t.length>1?\"s\":\"\")+\" removed\")}},{key:\"handleRemoveNodes\",value:function e(t){var i=this;var a=$tm.adapter.getTiddlersByIds(t);var s={count:t.length.toString(),tiddlers:$tw.utils.stringifyList(a),dialog:{preselects:{\"delete-from\":\"filter\"}}};$tm.dialogManager.open(\"deleteNodeDialog\",s,function(e,a){if(!e)return;var s=0;for(var r=t.length;r--;){var n=i.view.removeNode(t[r]);if(n){s++}}if(a.fields[\"delete-from\"]===\"system\"){$tm.adapter.deleteNodes(t);s=t.length}i.isPreventZoomOnNextUpdate=true;$tm.notify(\"\\n Removed \"+s+\"\\n of \"+t.length+\"\\n from \"+a.fields[\"delete-from\"]+\"\\n \")})}},{key:\"toggleEnlargedMode\",value:function e(t){if(!this.isInSidebar&&t===\"halfscreen\"){return}this.logger(\"log\",\"Toggled graph enlargement\");var i=this.enlargedMode;if(i){this.network.setOptions({clickToUse:this.clickToUse});_utils2.default.findAndRemoveClassNames([\"tmap-has-\"+i+\"-widget\",\"tmap-\"+i]);this.enlargedMode=null;document.body.scrollTop=this.scrollTop}if(!i||i!==t&&(t===\"fullscreen\"||t===\"halfscreen\"&&!this.isInSidebar)){this.scrollTop=document.body.scrollTop;this.enlargedMode=t;var a=this.isInSidebar?this.sidebar:_utils2.default.getFirstElementByClassName(\"tc-story-river\");$tw.utils.addClass(this.document.body,\"tmap-has-\"+t+\"-widget\");$tw.utils.addClass(a,\"tmap-has-\"+t+\"-widget\");$tw.utils.addClass(this.domNode,\"tmap-\"+t);this.network.setOptions({clickToUse:false});$tm.notify(\"Toggled \"+t+\" mode\")}this.handleResizeEvent()}},{key:\"handleGenerateWidget\",value:function e(t){$tw.rootWidget.dispatchEvent({type:\"tmap:tm-generate-widget\",paramObject:{view:this.view.getLabel()}})}},{key:\"handleSetCentralTopic\",value:function e(t){var i=t.paramObject;var a=i.id||this.network.getSelectedNodes()[0];if(a===this.view.getConfig(\"central-topic\")){a=\"\"}this.view.setCentralTopic(a)}},{key:\"handleVisStabilizedEvent\",value:function e(t){if(this.hasNetworkStabilized){return}this.hasNetworkStabilized=true;this.logger(\"log\",\"Network stabilized after\",t.iterations,\"iterations\");if(!this.view.isEnabled(\"physics_mode\")){var i=this.graphData.nodesById;var a=[];for(var s in i){if(i[s].x===undefined){a.push(s)}}if(a.length){this.setNodesMoveable(a,false);$tm.notify(a.length+\" nodes were added to the graph\")}var r=this.visOptions.physics;r[r.solver].centralGravity=0;this.network.setOptions(this.visOptions)}if(this.resetFocus){this.fitGraph(this.resetFocus.delay,this.resetFocus.duration);this.resetFocus=null}}},{key:\"handleFocusNode\",value:function e(t){var i=t.param;this.network.focus($tm.adapter.getId(i),{scale:1.5,animation:true})}},{key:\"isZombieWidget\",value:function e(){return this.domNode.isTiddlyWikiFakeDom===true||!this.document.body.contains(this.getContainer())}},{key:\"fitGraph\",value:function e(){var t=this;var i=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;var a=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;clearTimeout(this.activeFitTimeout);var s=function e(){if(t.isZombieWidget()){return}t.network.redraw();t.network.fit({animation:{duration:a,easingFunction:\"easeOutQuart\"}})};this.activeFitTimeout=setTimeout(s,i)}},{key:\"handleInsertNode\",value:function e(t){var i=this;$tm.dialogManager.open(\"addNodeToMap\",{},function(e,a){if(!e){return}var s=_utils2.default.getField(a,\"draft.title\").trim();if(_utils2.default.tiddlerExists(s)){if(_utils2.default.isMatch(s,i.view.getNodeFilter(\"compiled\"))){$tm.notify(\"Node already exists\");return}else{t=$tm.adapter.makeNode(s,t);i.view.addNode(t)}}else{var r=new $tw.Tiddler(a,{\"draft.title\":null});t.label=s;$tm.adapter.insertNode(t,i.view,r)}i.isPreventZoomOnNextUpdate=true})}},{key:\"handleEditNode\",value:function e(t){var i=this;var a=$tm.tracker.getTiddlerById(t.id);var s=_utils2.default.getTiddler(a);var r=$tm.config.vis.nodes;var n=_utils2.default.parseJSON(this.view.getConfig(\"vis\"),{}).nodes;var o={};o[t.id]=t;var l=$tm.adapter.getInheritedNodeStyles(o);var d=l[a];var h=_utils2.default.merge({},{color:s.fields[\"color\"]},_utils2.default.parseJSON(s.fields[\"tmap.style\"]));var u=this.view.getLabel();var g=_extends({},this.view.getNodeData(t.id));delete g.x;delete g.y;var f={view:u,tiddler:s.fields.title,tidColor:s.fields[\"color\"],tidIcon:s.fields[$tm.field.nodeIcon]||s.fields[\"tmap.fa-icon\"],tidLabelField:\"global.\"+$tm.field.nodeLabel,tidIconField:\"global.\"+$tm.field.nodeIcon,dialog:{preselects:{\"inherited-global-default-style\":JSON.stringify(r),\"inherited-local-default-style\":JSON.stringify(n),\"inherited-group-styles\":JSON.stringify(d),\"global.tmap.style\":JSON.stringify(h),\"local-individual-node-style\":JSON.stringify(g)}}};var v=function e(t,i,a){for(var s=a.length;s--;){f.dialog.preselects[t+\".\"+a[s]]=i[a[s]]||\"\"}};v(\"local\",g,[\"label\",\"tw-icon\",\"fa-icon\",\"open-view\"]);v(\"global\",s.fields,[$tm.field.nodeLabel,$tm.field.nodeIcon,\"tmap.fa-icon\",\"tmap.open-view\"]);$tm.dialogManager.open(\"editNode\",f,function(e,s){if(!e)return;var r=s.fields;var n=_utils2.default.getPropertiesByPrefix(r,\"global.\",true);for(var o in n){_utils2.default.setField(a,o,n[o]||undefined)}var l=_utils2.default.getPropertiesByPrefix(r,\"local.\",true);var d=_utils2.default.parseJSON(r[\"local-individual-node-style\"],{});for(var h in l){d[h]=l[h]||undefined}i.view.saveNodeStyle(t.id,d);i.isPreventZoomOnNextUpdate=true})}},{key:\"handleVisSingleClickEvent\",value:function e(t){var i=_utils2.default.isTrue($tm.config.sys.singleClickMode);if(i&&!this.editorMode){this.handleOpenMapElementEvent(t)}}},{key:\"handleVisDoubleClickEvent\",value:function e(t){if(t.nodes.length||t.edges.length){if(this.editorMode||!_utils2.default.isTrue($tm.config.sys.singleClickMode)){this.handleOpenMapElementEvent(t)}}else{if(this.editorMode){this.handleInsertNode(t.pointer.canvas)}}}},{key:\"handleOpenMapElementEvent\",value:function e(t){var i=this;var a=t.nodes,s=t.edges;if(a.length){var r=this.graphData.nodesById[a[0]];if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[$tm.adapter.getTiddlerById(r.id)]=true;this.isPreventZoomOnNextUpdate=Date.now()+500;this.rebuildGraph();if(this.view.isEnabled(\"neighbourhood_focus_newly_traced_node\")){setTimeout(function(){i.network.focus(r.id,{scale:1,animation:true})},1500)}}if(r[\"open-view\"]){$tm.notify(\"Switching view\");this.setView(r[\"open-view\"])}this.openTiddlerWithId(a[0])}else if(s.length){this.logger(\"debug\",\"Clicked on an Edge\");var n=this.graphData.edgesById[s[0]].type;this.handleEditEdgeType(n)}else{return}this.hidePopups(0,true)}},{key:\"handleEditEdgeType\",value:function e(t){if(!this.editorMode)return;var i=$tm.config.sys.edgeClickBehaviour;if(i!==\"manager\")return;$tw.rootWidget.dispatchEvent({type:\"tmap:tm-manage-edge-types\",paramObject:{type:t}})}},{key:\"handleResizeEvent\",value:function e(t){if(this.isZombieWidget())return;var i=this.getAttr(\"height\");var a=this.getAttr(\"width\");if(this.isInSidebar){var s=this.domNode.getBoundingClientRect();var r=15;a=document.body.clientWidth-s.left-r+\"px\";var n=parseInt(this.getAttr(\"bottom-spacing\"))||15;var o=window.innerHeight-s.top;i=o-n+\"px\"}this.domNode.style.height=i||\"300px\";this.domNode.style.width=a;this.repaintGraph()}},{key:\"handleClickEvent\",value:function e(t){if(this.isZombieWidget()||!this.network)return;if(!this.graphDomNode.contains(t.target)){var i=this.network.getSelection();if(i.nodes.length||i.edges.length){this.logger(\"debug\",\"Clicked outside; deselecting nodes/edges\");this.network.selectNodes([]);this.resetVisManipulationBar()}}else{this.canvas.focus()}if(t.button!==2){this.contextMenu.hide(0,true)}}},{key:\"handleVisSelectNode\",value:function e(t){var i=t.nodes;if(!this.isDraggingAllowed(i)){return}this.assignActiveStyle(i)}},{key:\"isDraggingAllowed\",value:function e(t){var i=t.nodes;return this.editorMode||this.view.isEnabled(\"physics_mode\")}},{key:\"assignActiveStyle\",value:function e(t){if(!Array.isArray(t))t=[t];var i=this.visOptions.nodes.color;for(var a=t.length;a--;){var s=t[a];var r=this.graphData.nodesById[s];var n=_utils2.default.merge({},i,r.color);this.graphData.nodes.update({id:s,color:{highlight:n,hover:n}})}}},{key:\"handleVisDeselectNode\",value:function e(t){}},{key:\"handleVisDragEnd\",value:function e(t){var i=t.nodes;if(!i.length){return}if(i.length===1&&this.view.isEnabled(\"raster\")){var a=this.network.getPositions()[i[0]];this.graphData.nodes.update(_extends({id:i[0]},_utils2.default.getNearestRasterPosition(a,parseInt(this.view.getConfig(\"raster\")))))}this.draggedNode=null;this.setNodesMoveable(i,false)}},{key:\"handleVisBeforeDrawing\",value:function e(t){var i=this.view,a=this.network,s=this.backgroundImage;if(s){t.drawImage(s,0,0)}if(i.isEnabled(\"raster\")){_utils2.default.drawRaster(t,a.getScale(),a.getViewPosition(),parseInt(i.getConfig(\"raster\")))}}},{key:\"handleVisAfterDrawing\",value:function e(t){if(this.selectRect){var i=this.selectRect.getRect();t.beginPath();t.globalAlpha=.5;t.fillStyle=\"#EAFFEF\";t.fillRect.apply(t,_toConsumableArray(i));t.beginPath();t.globalAlpha=1;t.strokeStyle=\"#B4D9BD\";t.strokeRect.apply(t,_toConsumableArray(i))}if(this.draggedNode&&this.view.isEnabled(\"raster\")){var a=this.network.getPositions()[this.draggedNode];var s=_utils2.default.getNearestRasterPosition(a,parseInt(this.view.getConfig(\"raster\")));t.strokeStyle=\"green\";t.fillStyle=\"green\";t.beginPath();t.moveTo(a.x,a.y);t.lineTo(s.x,s.y);t.stroke();t.beginPath();t.arc(s.x,s.y,5,0,Math.PI*2);t.fill()}}},{key:\"constructTooltip\",value:function e(t,i){var a=_utils2.default.parseJSON(t);var s=a.node||a.edge;var r=null;var n=\"text/html\";var o=\"text/vnd-tiddlywiki\";if(a.node){var l=$tm.tracker.getTiddlerById(s);var d=_utils2.default.getTiddler(l);var h=d.fields[$tm.field.nodeInfo];if(h){i.innerHTML=$tw.wiki.renderText(n,o,h)}else if(d.fields.text){_utils2.default.registerTransclude(this,\"tooltipWidget\",l);this.tooltipWidget.setVariable(\"tv-tiddler-preview\",\"yes\");this.tooltipWidget.render(i)}else{i.innerHTML=l}}else{var u=this.graphData.edgesById[s];var g=$tm.indeces.allETy[u.type];if(g.description){r=$tw.wiki.renderText(n,o,g.description)}i.innerHTML=r||g.label||g.id}}},{key:\"handleVisHoverElement\",value:function e(t){if($tm.mouse.buttons)return;var i=t.node||t.edge;var a=JSON.stringify(t);if(t.node){this.assignActiveStyle(i)}if(!this.isVisInEditMode()&&!this.contextMenu.isShown()){var s=this.constructTooltip;this.tooltip.show(a,s)}}},{key:\"handleVisBlurElement\",value:function e(t){this.tooltip.hide()}},{key:\"handleVisLoading\",value:function e(t){var i=t.total,a=t.iterations;this.graphLoadingBarDomNode.style.display=\"block\";this.graphLoadingBarDomNode.setAttribute(\"max\",i);this.graphLoadingBarDomNode.setAttribute(\"value\",a)}},{key:\"handleVisLoadingDone\",value:function e(t){this.graphLoadingBarDomNode.style.display=\"none\"}},{key:\"handleVisDragStart\",value:function e(t){var i=t.nodes;if(!i.length||!this.isDraggingAllowed(i)){return}this.hidePopups(0,true);this.assignActiveStyle(i);this.setNodesMoveable(i,true);if(i.length===1){this.draggedNode=i[0]}}},{key:\"destruct\",value:function e(){_utils2.default.setDomListeners(\"remove\",window,this.windowDomListeners);_utils2.default.setDomListeners(\"remove\",this.domNode,this.widgetDomListeners);this._destructVis()}},{key:\"_destructVis\",value:function e(){if(!this.network)return;_utils2.default.setDomListeners(\"remove\",this.canvas,this.canvasDomListeners);this.network.destroy();this.network=null}},{key:\"openTiddlerWithId\",value:function e(t){var i=this;var a=$tm.tracker.getTiddlerById(t);this.logger(\"debug\",\"Opening tiddler\",a,\"with id\",t);if(this.enlargedMode===\"fullscreen\"){var s=$tw.wiki.findDraft(a);var r=!!s;if(!r){var n=\"tm-edit-tiddler\";this.dispatchEvent({type:n,tiddlerTitle:a});s=$tw.wiki.findDraft(a)}var o={draftTRef:s,originalTRef:a};$tm.dialogManager.open(\"fullscreenTiddlerEditor\",o,function(e,t){if(e){var n=\"tm-save-tiddler\";i.dispatchEvent({type:n,tiddlerTitle:s})}else if(!r){_utils2.default.deleteTiddlers([s])}var o=\"tm-close-tiddler\";i.dispatchEvent({type:o,tiddlerTitle:a})})}else{var l=this.domNode.getBoundingClientRect();this.dispatchEvent({type:\"tm-navigate\",navigateTo:a,navigateFromTitle:this.getVariable(\"storyTiddler\"),navigateFromNode:this,navigateFromClientRect:{top:l.top,left:l.left,width:l.width,right:l.right,bottom:l.bottom,height:l.height}})}}},{key:\"getViewHolderRef\",value:function e(){if(this.viewHolderRef){return this.viewHolderRef}this.logger(\"info\",\"Retrieving or generating the view holder reference\");var t=this.getAttr(\"view\");var i=null;if(t){this.logger(\"log\",'User wants to bind view \"'+t+\"' to graph\");var a=$tm.path.views+\"/\"+t;if($tw.wiki.getTiddler(a)){i=$tm.path.localHolders+\"/\"+_utils2.default.genUUID();this.logger(\"log\",'Created an independent temporary view holder \"'+i+'\"');_utils2.default.setText(i,a);this.logger(\"log\",'View \"'+a+\"' inserted into independend holder\")}else{this.logger(\"log\",'View \"'+t+'\" does not exist')}}if(!i){this.logger(\"log\",\"Using default (global) view holder\");i=$tm.ref.defaultViewHolder}return i}},{key:\"setView\",value:function e(t,i){if(!_ViewAbstraction2.default.exists(t)){return}t=new _ViewAbstraction2.default(t);var a=t.getLabel();i=i||this.viewHolderRef;this.logger(\"info\",'Inserting view \"'+a+'\" into holder \"'+i+'\"');$tw.wiki.addTiddler(new $tw.Tiddler({title:i,text:a}));this.update({changedTiddlers:_defineProperty({},i,true)})}},{key:\"getView\",value:function e(t){if(!t&&this.view){return this.view}var i=this.getViewHolderRef();var a=_utils2.default.getText(i);this.logger(\"debug\",\"Retrieved view from holder\");var s=void 0;if(_ViewAbstraction2.default.exists(a)){s=new _ViewAbstraction2.default(a)}else{this.logger(\"debug\",'Warning: View \"'+a+\"\\\" doesn't exist. Default is used instead.\");s=new _ViewAbstraction2.default(\"Default\")}return s}},{key:\"reloadBackgroundImage\",value:function e(t){var i=this;this.backgroundImage=null;var a=this.view.getConfig(\"background_image\");var s=_utils2.default.getTiddler(a);if(!s&&!a)return;var r=new Image;r.onload=function(){i.backgroundImage=r;i.repaintGraph()};if(s){var n=s.fields[\"_canonical_uri\"];if(n){r.src=n}else if(s.fields.text){r.src=$tw.utils.makeDataUri(s.fields.text,s.fields.type)}}else if(a){r.src=a}}},{key:\"repaintGraph\",value:function e(){var t=$tw.utils.hasClass(this.document.body,\"tmap-has-fullscreen-widget\");if(this.network&&(!t||t&&this.enlargedMode)){this.logger(\"info\",\"Repainting the whole graph\");this.network.redraw();this.fitGraph(0,1e3)}}},{key:\"setGraphButtonEnabled\",value:function e(t,i){var a=\"vis-button tmap-\"+t;var s=_utils2.default.getFirstElementByClassName(a,this.domNode);$tw.utils.toggleClass(s,\"tmap-button-enabled\",i)}},{key:\"setNodesMoveable\",value:function e(t,i){if(!t||!t.length||this.view.isEnabled(\"physics_mode\")){return}var a=[];var s=!i;for(var r=t.length;r--;){a.push({id:t[r],fixed:{x:s,y:s}})}this.graphData.nodes.update(a);if(s){this.logger(\"debug\",\"Fixing\",a.length,\"nodes\");this.view.saveNodePositions(this.network.getPositions());this.isPreventZoomOnNextUpdate=true}}},{key:\"addGraphButtons\",value:function e(t){var i=_utils2.default.getFirstElementByClassName(\"vis-navigation\",this.domNode);for(var a in t){var s=this.document.createElement(\"div\");s.className=\"vis-button tmap-\"+a;s.addEventListener(\"click\",t[a].bind(this),false);i.appendChild(s);this.setGraphButtonEnabled(a,true)}}}]);return t}(_widget.widget);exports.tmap=MapWidget;exports.tiddlymap=MapWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/MapWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/license": {
"title": "$:/plugins/felixhayashi/tiddlymap/license",
"subtitle": "License",
"caption": "License",
"text": "\\rules except wikilink\n\n!! TiddlyMap\n\nCopyright (c) 2014, Felix Küppers\nAll rights reserved.\n\nTiddlyMap is licensed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]]. For the exact license terms, please visit [[https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]]. \n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n# BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n# Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! Vis.js\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n# Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n# MIT License (MIT)\n"
},
"$:/plugins/felixhayashi/tiddlymap/readme": {
"title": "$:/plugins/felixhayashi/tiddlymap/readme",
"text": "* Please refer to the project-readme hosted at [[https://github.com/felixhayashi/TW5-TiddlyMap]].\n* A demo with several examples and explanations can be found at [[http://tiddlymap.org]]."
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown",
"description": "Automatically assigned to an edge that does not have a type assigned",
"style": "{\"color\":\"gray\"}",
"show-label": "false"
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link",
"description": "A link that is contained in the tiddler's body pointing to another resource.",
"style": "{\"color\":\"orange\", \"dashes\":true}",
"label": "links to",
"text": ""
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list",
"description": "Contained in a list of this tiddler",
"style": "{ \"color\": \"red\", \"dashes\":true}",
"label": "listed in",
"text": ""
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags",
"description": "A tag that refers to a tiddler of the same name.",
"style": "{ \"color\": \"darkslategray\", \"dashes\":true}",
"label": "tagged with"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default",
"caption": "Overview",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-plain\">\n Please visit the [[online docs|http://tiddlymap.org/Documentation]]\n for more information about the available global options.\n</div>\n<table class=\"tmap-key-value-table\">\n <tr>\n <th align=\"left\">Plugin version</th>\n <td><<pluginVersion>></td>\n </tr>\n<!--\n <tr>\n <th align=\"left\">Datastructure version</th>\n <td><<dataStructureVersion>></td>\n </tr>\n-->\n <tr>\n <th align=\"left\">Nodes in system</th>\n <td><<numberOfNodes>></td>\n </tr>\n <tr>\n <th align=\"left\">Edges in system</th>\n <td><<numberOfEdges>></td>\n </tr>\n</table>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor",
"caption": "Editor",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Show Neighbour­hood menu\"\n field:\"config.sys.editorMenuBar.showNeighScopeButton\"\n descr:\"Show or hide the neighbourhood menu button.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show Screen­shot menu\"\n field:\"config.sys.editorMenuBar.showScreenshotButton\"\n descr:\"Show or hide the screenshot menu button.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show Raster­ menu\"\n field:\"config.sys.editorMenuBar.showRasterMenuButton\"\n descr:\"Show or hide the raster menu button.\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields",
"caption": "Field settings",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"Node-icon field\"\n field:\"config.sys.field.nodeIcon\" \n descr:\"Local image used as node image in the graphs.\">>\n <<tmap-row type:\"input-text\"\n title:\"Node-label field\"\n field:\"config.sys.field.nodeLabel\" \n descr:\"Alternative node label to use instead of the title.\">>\n <<tmap-row type:\"input-text\"\n title:\"Node-info field\"\n field:\"config.sys.field.nodeInfo\" \n descr:\"Field used as tooltip when hovering over a node in a graph.\"\n note:\"It is prohibited to use the text field here.\">>\n</table> \n\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction",
"caption": "Interaction & behaviour",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Default startup view\"\n field=\"config.sys.defaultView\"\n nochoice=\"Last view used at startup\"\n selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n descr=\"The view to display at startup\" />\n <<tmap-row type:\"input-checkbox\"\n title:\"Show popups\"\n field:\"config.sys.popups.enabled\"\n descr:\"Set this to true if you want to see automatic\n popups in the map.\">>\n <$list filter=\"[config.sys.popups.enabled[true]]\">\n <<tmap-row type:\"input-text\"\n title:\"Popup delay\"\n field:\"config.sys.popups.delay\"\n descr:\"The time in miliseconds that needs to pass after\n a tooltip is triggered.\">>\n <<tmap-row type:\"input-text\"\n title:\"Popup width\"\n field:\"config.sys.popups.width\"\n descr:\"The default max-width of the popup.\"\n note:\"Make sure you added the desired unit (e.g. `px`).\n Requires a wiki refresh.\">>\n <<tmap-row type:\"input-text\"\n title:\"Popup height\"\n field:\"config.sys.popups.height\"\n descr:\"The default max-height of the popup.\"\n note:\"Make sure you added desired the unit (e.g. `px`).\n Requires a wiki refresh.\">>\n </$list>\n <<tmap-row type:\"input-checkbox\"\n title:\"Allow single click mode\"\n field:\"config.sys.singleClickMode\"\n descr:\"A single click on a node is sufficient to open the\n corresponding tiddler.\"\n note:\"Drag and drop will still work and does not cause a\n tiddler to be opened. Single click is never active in\n the map editor.\">>\n <<tmap-row type:\"input-select\"\n title:\"Edge click behaviour\"\n field:\"config.sys.edgeClickBehaviour\"\n selectFilter:\"[[nothing|Nothing]]\n [[manager|Open edge-type manager]]\"\n descr:\"What should happen when you click on an edge?\">>\n <<tmap-row type:\"input-select\" title:\"Raster size\" field:\"config.sys.raster\"\n selectFilter:\"[[|disabled]] [[5|5px]] [[10|10px]] [[15|15px]] [[20|20px]] [[30|30px]] [[40|40px]]\"\n descr:\"Snap nodes to an invisible raster of the given size after drag'n'drop.\"\n note:\"Only works when the view is not in floating mode\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Apply node-filter to neighbours\"\n field:\"config.sys.nodeFilterNeighbours\"\n descr:\"If checked, neighbours displayed in the map will be filtered\n by the view's node-filter. Otherwise the node-filter will only be used\n to filter the original set of nodes in the map\">>\n</table>\n\n!! Suppressed dialogs\n\n<div class=\"tmap-flash-message tmap-plain\">\n Dialogs that you decided to suppress in the past are listed here.\n Remove the checkmark to enable dialogs again.\n</div>\n\n<table class=\"tmap-config-table\">\n <$list\n filter=\"[<output>fields[]prefix[config.sys.suppressedDialogs]]\"\n emptyMessage=\"–\">\n <$set name=\"dialogName\" value=<<tmap basename \".\">>>\n <$macrocall $name=\"tmap-row\"\n type=\"input-checkbox\"\n title=\"Suppress '$(dialogName)$' dialog\"\n field=<<currentTiddler>> />\n </$set>\n <br />\n </$list>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab",
"caption": "Live tab",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Show Live tab\"\n field:\"liveTab\" \n descr:\"Show or hide the live tab in the sidebar.\">>\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Fallback view\"\n field=\"config.sys.liveTab.fallbackView\" \n selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n descr=\"The view to display in the sidebar's live tab in\n case the current tiddler did not specify a view\n to open.\" />\n</table>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig",
"subtitle": "{{$:/core/images/options-button}} Global configuration of TiddlyMap",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n<$macrocall $name=\"tabs\"\n default=<<concat \"$(template)$/default\">>\n tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity",
"caption": "Verbosity",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-plain\">\n Here you can restrict the system's talkativeness.\n</div>\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Debug output\"\n field:\"config.sys.debug\" \n descr:\"Set this to true if you want debug information to be\n displayed in the browser console.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show notifications\"\n field:\"config.sys.notifications\" \n descr:\"Set this to true if you want to receive fade-out\n notifications for important events.\">>\n</table> "
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis",
"classes": "tmap-remove-top-space",
"caption": "Graph",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n The global vis configurations will affect all views and their\n elements (nodes and edges) unless they are overridden on a lower\n level. All options below are documented at\n [[vis.js.org|http://visjs.org/docs/network]].\n</div>\n<div class=\"tmap-flash-message tmap-info\">\n Only config items that you actually changed have an effect on\n the graph. Other options are visible, yet, inactive.\n</div>\n<$tmap-config\n mode=\"manage-config\"\n inherited=\"inherited-style\"\n extension=\"config.vis\" />\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default",
"caption": "Overview",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n All configurations __only__ affect this view.\n</div>\n\n<table class=\"tmap-key-value-table\">\n <tr>\n <th align=\"left\">Created on</th>\n <td><<createdOn>></td>\n </tr>\n <tr>\n <th align=\"left\">Nodes contained in graph</th>\n <td><<numberOfNodes>></td>\n </tr>\n <tr>\n <th align=\"left\">Edges contained in graph</th>\n <td><<numberOfEdges>></td>\n </tr>\n</table>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters",
"caption": "Edit filters",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n Completely new to filters? Please read\n [[Introduction to filter notation|http://tiddlywiki.com/#Introduction%20to%20filter%20notation]]\n first.\n</div>\n\n<fieldset>\n <legend>Filters <sup>[1]</sup></legend>\n <table class=\"tmap-config-table tmap-large-input\">\n <<tmap-row type:\"input-textarea\"\n title:\"Node filter\"\n field:\"filter.prettyNodeFltr\"\n descr:\"In the map, only those tiddlers that match this filter\n are shown. Drafts and system tiddlers are automatically\n excluded.\">>\n <<tmap-row type:\"input-textarea\"\n title:\"Edge-type filter\"\n field:\"filter.prettyEdgeFltr\" \n descr:\"Only edges with a type that matches the filter are shown.\">>\n </table> \n</fieldset>\n\n---\n\n<sup>[1]</sup> In the editors above, a new line is equivalent to a space symbol.<br />\n<sup>[2]</sup> It is suggested to read\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nand [[Edge-type namespaces|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nbefore using Tiddlymap's filter editor."
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout",
"caption": "Layout",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Floating nodes\"\n field:\"config.physics_mode\"\n descr:\"Set this to true if you want your nodes to freely\n swirl around.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Filter nodes by edge types\"\n field:\"config.filter_nodes_by_edge_types\"\n descr:\"Only display nodes having edges matching the edge-type filter.\">>\n <<tmap-row type:\"input-text\"\n title:\"Background image\"\n field:\"config.background_image\"\n descr:\"The title of an image tiddler to be used as background\n in the view.\"\n note:\"You can also use an image url directly, however, the\n image needs be stored under the same domain as your wiki.\n Otherwise, it won't be displayed!\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace",
"caption": "Namespace",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table tmap-small-input\">\n <<tmap-row type:\"input-text\"\n title:\"Edge-type namespace\"\n field:\"config.edge_type_namespace\" \n descr:\"A namespace (like `foaf` in `foaf:knows`) that will be\n automatically added to all edge types you create in\n this view. The namespace is only added if the types\n do not exist yet and do not have a namespace assigned yet.\n Namespaces are always hidden in the graph.\"\n note:\"Most likely, you don't want the edges created with this\n namespace to leak into other views, moreover, you don't\n want edges that do not possess the namespace ever to be\n shown here. In this case, use a private marker (`_`)\n in front of your namespace, e.g. `_mynamespace` and use\n an appropriate edge type filter, i.e. `+[prefix[_mynamespace]]`\n For further information see:\n \n * [[Edge-type namespaces|http://tiddlymap.org/#Edge-type%20namespaces]]\n * [[Private edge types|http://tiddlymap.org/#Private%20edge%20types]]\n \">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView",
"subtitle": "{{$:/core/images/options-button}} View configuration -- <<view>>",
"text": "\\rules except wikilink\n\n\\define privateEdgeTypes() [[private edge-types|http://tiddlymap.org/#Private%20edge%20types]]\n\n<$macrocall $name=\"tabs\"\n default=<<concat \"$(template)$/default\">>\n tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis",
"caption": "Graph",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n The local vis configurations will affect all\n elements (nodes and edges) of this view, unless they are\n overridden on a lower level. All options below are documented at\n [[vis.js.org|http://visjs.org/docs/network]].\n</div>\n<div class=\"tmap-flash-message tmap-info\">\n Only config items that you actually changed have an effect on the\n graph. Other options are visible, yet, inactive.\n</div>\n<$tmap-config\n mode=\"manage-config\"\n inherited=\"inherited-style\"\n extension=\"config.vis\" />\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType",
"subtitle": "{{$:/plugins/felixhayashi/tiddlymap/icon}} Edge type specification",
"text": "\\rules except wikilink\n\\rules except underscore\n\n\\define filter() $(allEdgeTypes)$ +[search:title[$(term)$]]\n\n\\define badge(color, label, tooltip)\n<span style=\"background: $color$\" title=\"$tooltip$\">$label$</span>\n\\end\n\n\\define badges()\n<$tiddler tiddler={{!!text}}>\n<$set name=\"id\" value=<<tmap \"getETyId\" \"$(view)$\">>>\n<$set name=\"isVisible\" value=<<tmap \"isETyVisible\" \"$(view)$\">>>\n<div class=\"tmap-badges\">\n <span\n style=\"background: darkslategray\"\n title=\"Your input translates into this id.\">\n <<id>>\n </span>\n <$list filter=\"[<isVisible>regexp[true]]\">\n <<badge \"green\" \"visible\" \"Matches your view's filter\">>\n </$list>\n <$list filter=\"[<isVisible>regexp[false]]\">\n <<badge \"red\" \"not visible\" \"Doesn't match your view's filter\">>\n </$list>\n <$list filter=\"[<id>!regexp[^tmap:unknown$]]\" variable=\"item\">\n <$list filter=\"[<id>regexp[^_]]\">\n <<badge \"purple\" \"private\" \"Not shown in other views per default\">>\n </$list>\n <$list filter=\"[<id>regexp[.+:.+]]\">\n <<badge \"orange\" \"namespace\" \"This type is prefixed with a proper namespace\">>\n </$list>\n </$list>\n</div>\n</$set>\n</$set>\n</$tiddler>\n\\end\n\n\\define search()\n<p>\n You are about to connect \"<$text text=\"$(fromLabel)$\" />\"\n with \"<$text text=\"$(toLabel)$\" />\". Please specify a type.\n</p>\n<table id=\"tmap-search-table\">\n <tr>\n <td><b>Type:</b></td>\n <td>\n <$edit-text\n focus=\"true\"\n field=\"text\"\n type=\"text\"\n tag=\"input\"\n default=\"\"\n class=\"tmap-trigger-field\n tmap-triggers-ok-button-on-enter\n tmap-triggers-cancel-button-on-esc\" />\n <<badges>>\n </td>\n </tr>\n <tr>\n <td></td>\n <td>\n <$set name=\"term\" value={{!!text}}>\n <$set name=\"allEdgeTypes\" value=<<tmap \"option\" \"selector.allEdgeTypesById\">>>\n <ul class=\"tmap-small-list\">\n <$list filter=<<filter>>>\n <li>\n <$button class=\"tc-btn-invisible tmap-link\">\n <$view field=\"title\" />\n <$action-setfield $tiddler=<<output>> text={{!!title}} />\n </$button>\n </li>\n </$list>\n </ul>\n </$set>\n </$set>\n </td>\n </tr>\n</table>\n\\end\n\n<$list filter=\"[<temp>!has[more]]\" variable=\"item\"><<search>></$list>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap",
"subtitle": "{{$:/core/images/tag-button}} Add node",
"classes": "tmap-modal-add-node",
"text": "\\rules except wikilink\n\n\\define backButtonText() back to list\n\\define outputAndTemplate() [[$(output)$]] [[$(template)$]]\n\n\\define editor()\n <$button class=\"tmap-go-back tc-btn-invisible\">\n {{$:/core/images/chevron-left}} <<backButtonText>>\n <$action-deletefield $tiddler=<<temp>> more template />\n <$action-sendmessage\n $message=\"tmap:tm-clear-tiddler\"\n keep=\"draft.title\"\n title=<<output>> />\n </$button>\n\n <$list filter=\"[<output>get[draft.title]is[tiddler]]\">\n <div class=\"tmap-flash-message tmap-warning\">\n Tiddler already exists! Use another title or click\n \"<<backButtonText>>\" to cancel your edit.\n </div>\n </$list>\n\n <div class=\"tmap-modal-editor\">\n <table class=\"tmap-config-table\">\n <tr class=\"tmap-template-select\">\n <td>Template</td>\n <td>\n <$select\n tiddler=<<temp>>\n field=\"template\">\n <option value=\"\"></option>\n <$list filter=<<tmap \"option\" \"selector.allPotentialNodes\">>>\n <option><$view field=\"title\" /></option>\n </$list>\n </$select>\n <$button>Load\n <$action-sendmessage\n $message=\"tmap:tm-clear-tiddler\"\n keep=\"draft.title\"\n title=<<output>> />\n <$list filter=\"[<temp>get[template]]\" variable=\"template\">\n <$action-sendmessage\n $message=\"tmap:tm-merge-tiddlers\"\n tiddlers=<<outputAndTemplate>>\n output=<<output>> />\n <$action-deletefield $tiddler=<<output>> tmap.id tmap.edges />\n </$list>\n </$button>\n </td>\n <td>Press the \"load\" button to activate the template.</td>\n </tr>\n </table>\n <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n <$set name=\"currentTiddler\" value=<<output>>>\n <$transclude tiddler=\"$:/core/ui/EditTemplate\" mode=\"block\" />\n </$set>\n </$importvariables>\n </div>\n\\end\n\n\\define search()\n<p>Add an existing tiddler to the map or create a new one.</p>\n<table id=\"tmap-search-table\">\n <tr>\n <td><b>Title:</b></td>\n <td>\n <$edit-text\n tiddler=<<output>>\n field=\"draft.title\"\n focus=\"true\"\n type=\"text\"\n tag=\"input\"\n default=\"\"\n class=\"tmap-trigger-field\n tmap-triggers-ok-button-on-enter\n tmap-triggers-cancel-button-on-esc\" />\n <$list filter=\"[<output>get[draft.title]!is[tiddler]]\">\n <$button\n tooltip=\"The tiddler does not exist yet and you may edit it\n before it is added to the map\">\n {{$:/core/images/edit-button}}\n <$action-setfield $tiddler=<<temp>> more=\"true\" />\n </$button> <sup>[1]</sup>\n </$list>\n </td>\n </tr>\n <tr>\n <td></td>\n <td>\n <$set name=\"term\" value={{!!draft.title}}>\n <ul class=\"tmap-small-list\">\n <$list filter=\"[search:title<term>!is[system]!has[draft.of]]\">\n <li>\n <$button class=\"tc-btn-invisible tmap-link\">\n <$view field=\"title\" />\n <$action-setfield $tiddler=<<output>> draft.title={{!!title}} />\n </$button>\n </li>\n </$list>\n </ul>\n </$set>\n </td>\n </tr>\n</table>\n\n<$list filter=\"[<output>get[draft.title]!is[tiddler]]\">\n<hr />\n<sup>[1]</sup>\n<small>\n The tiddler does not exist yet and you may edit it\n before it is added to the map\n</small>\n</$list>\n\\end\n\n<$list filter=\"[<temp>!has[more]]\" variable=\"item\"><<search>></$list>\n<$list filter=\"[<temp>has[more]]\" variable=\"item\"><<editor>></$list>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog",
"subtitle": "{{$:/core/images/locked-padlock}} You cannot delete this view!",
"buttons": "ok",
"text": "\\rules except wikilink\n\nIt is not possible to delete the current view as ''<<count>>'' tiddlers\nare referencing it. To delete the view you must first remove the tiddlymap\nwidgets in the tiddlers listed below or change their view attributes.\n\n''References''\n\n<ul>\n<$list filter=<<refFilter>> variable=\"item\">\n <li><$link><<item>></$link></li>\n</$list>\n</ul>\n\nAfter the references are removed, you may delete the view.\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation",
"subtitle": "{{$:/core/images/import-button}} You must confirm in order to proceed!",
"text": "\\rules except wikilink\n\n<<message>>\n\n''Are you really sure you want to do this?''"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/createView": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/createView",
"subtitle": "{{$:/core/images/new-button}} Creating a new view",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"View name\"\n field:\"name\"\n focus:\"true\"\n class:\"tmap-trigger-field\n tmap-triggers-ok-button-on-enter\n tmap-triggers-cancel-button-on-esc\"\n descr:\"The name for the new view. If no name is entered,\n the program will invent one for you.\"\n note:\"You cannot override an existing view. In this case,\n you need to delete the old view first! You must no use\n slashes (`/`) in the name.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Clone view\"\n field:\"clone\"\n descr:\"Use the view that is currently displayed in the\n editor as blueprint. The view will be an __exact__\n clone of the current one, only with a different\n name.\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog",
"subtitle": "{{$:/core/images/delete-button}} You are about to delete <<count>> nodes",
"text": "\\rules except wikilink\n\n''Please choose an option or abort:''\n\n<$radio tiddler=<<output>> field=\"delete-from\" value=\"system\">\n Delete nodes from system <sup>[1]</sup>\n</$radio><br />\n<$radio tiddler=<<output>> field=\"delete-from\" value=\"filter\">\n Delete nodes from graph's filter <sup>[2]</sup>\n</$radio>\n\nThe following nodes will be deleted:\n\n<ul>\n<$list filter=<<tiddlers>>>\n <li><$view tiddler={{!!title}} field=\"title\" /></li>\n</$list>\n</ul>\n\n---\n\n<sup>[1]</sup>\n<small>This will delete all nodes, their corresponding tiddlers and all connected edges.</small><br/>\n<sup>[2]</sup>\n<small>''Important:'' Removing a node from the graph's filter only works, if the node has been added in the map editor per double click or via \"Add Node\". If the node hasn't been added as mentioned above, you need to change the underlying tiddler in a way that it doesn't match your filter anymore, if you don't want it to be displayed in the graph.</small>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo",
"subtitle": "{{$:/core/images/info-button}} Dublicate id detected",
"buttons": "ok_suppress",
"text": "\\rules except wikilink\n\nTiddlyMap requires the value of the id field (\"tmap.id\") to be\nunique in order to correctly identify nodes and tiddlers.\n\nThe id of the \"<<param.changedTiddler>>\" already exists for these tiddlers:\n\n<ul>\n<$list filter=<<param.filter>> variable=\"item\">\n <li><$link><<item>></$link></li>\n</$list>\n</ul>\n\nTherefore TiddlyMap\n\n* assigned a new id to tiddler \"<<param.changedTiddler>>\"\n* removed all edges from \"<<param.changedTiddler>>\"\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible",
"subtitle": "{{$:/core/images/info-button}} Edge will not be visible in view \"<<view>>\"",
"buttons": "ok_suppress",
"text": "\\rules except wikilink\n\nYou just created an edge of type\n<code><$text text=<<type>> /></code> that will not be\nvisible in this view because it doesn't match your\nedge-type filter settings.\n\nThe current edge-type filter of view \"<<view>>\" looks like this:\n\n<pre><code><$text text=<<eTyFilter>> /></code></pre>\n\nTo have the newly added type displayed in your view, adjust your\nedge-type filter accordingly. \n\nSome suggestions:\n\n<ul>\n <li>\n Explicitly add the type to the filter:\n <code><$text text=\"[[\" /><$text text=<<type>> /><$text text=\"]]\" /></code>\n </li>\n <li>\n <$set\n filter=\"[<type>regexp[:]splitbefore[:]]\"\n name=\"prefix\"\n emptyValue=<<tmap halfOfString \"$(type)$\">>>\n Add a filter rule (e.g. a prefix filter) that will match\n your type: <code>[prefix[<<prefix>>]]</code>\n </$set>\n </li>\n <li>Make your current view-filter less restrictive.</li>\n</ul>\n\nFor further information, please see:\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]."
},
"$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default",
"caption": "Global node style",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n A node's ''global configuration''\n (also referred to as //global individual config//) defines its\n individual appearance and behaviour in all views.\n</div>\n<<maybeShowTidColorWarning>>\n\n<$macrocall $name=\"sharedSettings\"\n twIconField=<<tidIconField>>\n faIconField=\"global.tmap.fa-icon\"\n labelField=<<tidLabelField>> />\n\n<$macrocall $name=\"visConfiguration\"\n mode=\"manage-node-types\"\n extensionField=\"global.tmap.style\"\n styleName=\"node's global style\"\n inheritedList=\"[[inherited-global-default-style]]\n [[inherited-local-default-style]]\n [[inherited-group-styles]]\" />\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local",
"caption": "Local node style",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n The ''local node configuration''\n (also referred to as //view-specific node configuration//)\n overrides the //global individual configuration// and only affects\n the node's appearance and behaviour in the current view.\n</div>\n<<maybeShowTidColorWarning>>\n\n<fieldset>\n <legend>Behaviour</legend>\n <table class=\"tmap-config-table\">\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Open view\"\n field=\"local.open-view\"\n nochoice=\"Disabled\"\n selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n descr=\"Clicking on this node will open the specified\n view instead of the tiddler represented by this node.\" />\n </table>\n</fieldset>\n\n<$macrocall $name=\"sharedSettings\"\n twIconField=\"local.tw-icon\"\n faIconField=\"local.fa-icon\"\n labelField=\"local.label\" />\n\n<$macrocall $name=\"visConfiguration\"\n mode=\"manage-node-types\"\n extensionField=\"local-individual-node-style\"\n styleName=\"node's local style\"\n inheritedList=\"[[inherited-global-default-style]]\n [[inherited-local-default-style]]\n [[inherited-group-styles]]\n [[global.tmap.style]]\" />\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/editNode": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode",
"subtitle": "{{$:/core/images/edit-button}} Editing style of node \"<<tiddler>>\"",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n\\define maybeShowTidColorWarning()\n <$list filter=\"[<tidColor>regexp[.+]]\">\n <div class=\"tmap-flash-message tmap-warning\">\n You have set the tiddler's color\n field to \"<<tidColor>>\". This value will be completely ignored\n when you change node's color properties in the vis editor below.\n </div>\n </$list>\n\\end\n\n\\define iconSettings(twIconField, faIconField)\n <fieldset>\n <legend>Icon Settings</legend>\n <table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"TW-icon\"\n field:\"$twIconField$\"\n descr:\"A tiddlywiki image reference.\n For example '$:/core/icon' for Movotun Jack.\">>\n <<tmap-row type:\"input-text\"\n title:\"FA-icon\"\n field:\"$faIconField$\"\n descr:\"A Font Awesome icon code.\n For example 'f206' for the bicycle symbol.\">>\n </table>\n </fieldset>\n\\end\n\n\\define sharedSettings(twIconField, faIconField, labelField)\n <fieldset>\n <legend>General Settings</legend>\n <table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"Label\"\n field:\"$labelField$\"\n descr:\"Use this value as node label.\">>\n </table>\n </fieldset>\n <!-- display icon fieldset -->\n <<iconSettings \"$twIconField$\" \"$faIconField$\">> \n\\end\n\n<$macrocall\n $name=\"tabs\"\n default=<<concat \"$(template)$/default\">>\n tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft",
"caption": "Draft",
"text": "\\rules except wikilink\n\n<div class=\"tmap-modal-editor\">\n <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n <$set name=\"currentTiddler\" value=<<draftTRef>> >\n <$transclude tiddler=\"$:/core/ui/EditTemplate\" field=\"text\" mode=\"block\" />\n </$set>\n </$importvariables>\n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original",
"caption": "Current Version",
"text": "\\rules except wikilink\n\n<div class=\"tmap-modal-editor\">\n <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n <$set name=\"currentTiddler\" value=<<originalTRef>> >\n <$transclude tiddler=\"$:/core/ui/ViewTemplate\" field=\"text\" mode=\"block\" />\n </$set>\n </$importvariables>\n</div>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor",
"subtitle": "{{$:/core/images/edit-button}} <<originalTRef>>",
"classes": "tmap-modal-fullscreen-editor tmap-remove-top-space",
"text": "\\rules except wikilink\n\n\\define defaultTab() $:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original\n\n<$macrocall $name=\"tabs\"\n default=<<defaultTab>>\n tabsList=\"[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/]]\" />"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged",
"subtitle": "{{$:/core/images/info-button}} The field \"<<name>>\" changed",
"text": "\\rules except wikilink\n\nYou changed the field \"<<name>>\" from \"<<oldValue>>\" to \"<<newValue>>\".\n\nIt is recommended to let TiddlyMap copy all values from the former field \"<<oldValue>>\" to the new field \"<<newValue>>\" so the data stored in \"<<oldValue>>\" is not lost. This operation has to be done now or never.\n\nDo you want to move each tiddler's existing \"<<oldValue>>\" value to \"<<newValue>>\"? Please note that any value currently stored in \"<<newValue>>\" would consequently be overridden and the old field \"<<oldValue>>\" would be eventually removed!"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported",
"subtitle": "{{$:/core/images/info-button}} Your machine does not support fullscreen",
"buttons": "ok_suppress",
"text": "\\rules except wikilink\n\nPlease have a look [[here|http://caniuse.com/#feat=fullscreen]] to see a list of supported devices/browsers.\n\nSorry for this :("
},
"$:/plugins/felixhayashi/tiddlymap/dialog/renameView": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/renameView",
"subtitle": "{{$:/core/images/tag-button}} Please specify a view name",
"text": "\\rules except wikilink\n\n''Name:''\n<$edit-text focus=\"true\" tiddler=<<output>> field=\"text\" type=\"text\" tag=\"input\" default=\"\"\n class=\"tmap-trigger-field tmap-triggers-ok-button-on-enter\" />\n\nNote that ''<<count>>'' tiddlers are referencing this view.\n\n<$reveal type=\"nomatch\" text=\"0\" default=<<count>>>\n\nRenaming the view will cause the reference to be invalid.\nIt is recommended to first remove the tiddlymap widgets in\nthe tiddlers listed below or change their view attributes\naccordingly.\n\n''References''\n\n<ul>\n<$list filter=<<refFilter>> variable=\"item\">\n <li><$text text=<<item>> /></li>\n</$list>\n</ul>\n\n</$reveal>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas",
"subtitle": "{{$:/core/images/options-button}} Save a snapshot image of view \"<<view>>\"",
"text": "\\rules except wikilink\n\n\\define preview()\n<div class=\"tmap-save-canvas-preview\">\n <$transclude tiddler=<<snapshot>> /><br />\n</div>\n\\end\n\n<table class=\"tmap-config-table\">\n <$macrocall $name=\"tmap-row\"\n type=\"input-text\"\n title=\"Name\"\n field=\"name\"\n descr=<<preview>> />\n <<tmap-row type:\"input-text\"\n title:\"Width\"\n field:\"width\"\n descr:\"Scales the image to match this new width (unit: px)\">>\n <<tmap-row type:\"input-text\"\n title:\"height\"\n field:\"height\"\n descr:\"Scales the image to match this new height (unit: px)\">>\n <<tmap-row type:\"input-radio\"\n title:\"Action\"\n field:\"action\"\n selectFilter:\"[[download|Download]]\n [[wiki|Save in wiki]]\n [[placeholder|Use as placeholder for this view]]\"\n descr:\"Save the image by downloading it to your computer or\n save it as a tiddler in your wiki.<br /><br />\n A third option is to make TiddlyMap use this image as\n placeholder for the current view. Placeholders are useful\n when the wiki is exported as static html\n or when editing a tiddler while having the preview\n shown. In this case the title input is ignored.\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog",
"text": "\\rules except wikilink\n\n<div class=<<classes>>>\n<$importvariables\n filter=\"[[$:/plugins/felixhayashi/tiddlymap/misc/macros]]\n [[$:/core/macros/tabs]]\">\n<$transclude tiddler=<<template>> mode=\"block\" />\n</$importvariables>\n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/welcome": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/welcome",
"subtitle": "{{$:/core/images/info-button }} Welcome",
"buttons": "ok",
"text": "\\rules except wikilink\n\nIt seems that you freshly installed TiddlyMap.\n\n* In case you need any help, please consult the [[online docs|http://tiddlymap.org#Documentation]] first.\n* You are welcome to create an [[issue|https://github.com/felixhayashi/TW5-TiddlyMap/issues]] at GitHub for any bug you discover.\n* Make sure to revisit the [[demo site|http://tiddlymap.org]] to see whether your version is up-to-date.\n* If you like TiddlyMap, please give it a star at [[GitHub|https://github.com/felixhayashi/TW5-TiddlyMap]] or tell your friends about it :)\n* ''Please note:'' TiddlyMap is distributed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]], which belongs to the same license family, as the license used by TiddlyWiki. By using this plugin you agree to the product's [[License Terms|https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]].\n\nEnjoy!\n\n---\n\nTiddlyMap will configure your wiki for optimal use. Everything can be changed back later by you, via the TiddlyWiki configurations panel, so no worries. If you checked some of the options below, please save & restart after closing this dialog.\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Optimize storyview\"\n field:\"config.storyview\"\n descr:\"Sets the storyview to 'top' for optimal scrolling.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Optimize sidebar\"\n field:\"config.sidebar\"\n descr:\"Sets sidebar layout to 'fixed-fluid' for larger editor.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Optimize navigation\"\n field:\"config.navigation\"\n descr:\"Sets navigation style to open tiddlers at top for better map navigation.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Create demo welcome map\"\n field:\"config.demo\"\n descr:\"Creates a little hello world welcome map for you.\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator",
"subtitle": "{{$:/core/images/permalink-button}} Widget Code Generator",
"buttons": "close",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n Use the code below to embed a view in a tiddler.\n</div>\n\n<pre style=\"white-space: normal;\">\n<$tmap\n\n<$list filter=\"[<output>has[var.view]]\">\n view=\"<$view field='var.view' />\"</$list>\n<$list filter=\"[<output>field:var.click-to-use[true]]\">\n click-to-use=\"true\"</$list>\n<$list filter=\"[<output>has[var.editor]]\">\n editor=\"<$view field='var.editor' />\"</$list>\n<$list filter=\"[<output>has[var.width]]\">\n width=\"<$view field='var.width' />\"</$list>\n<$list filter=\"[<output>has[var.height]]\">\n height=\"<$view field='var.height' />\"</$list>\n<$list filter=\"[<output>has[var.class]]\">\n class=\"<$view field='var.class' />\"</$list>\n<$list filter=\"[<output>field:var.show-buttons[false]]\">\n show-buttons=\"false\"</$list>\n<$list filter=\"[<output>has[var.design]]\">\n design=\"<$view field='var.design' />\"</$list>></$tmap>\n</pre>\n\n<fieldset>\n <legend>Parameters</legend> \n <table class=\"tmap-config-table\">\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"View\"\n field=\"var.view\"\n nochoice=\" \"\n selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n descr=\"The view to bind the wiedget to\" />\n <<tmap-row type:\"input-select\"\n title:\"Editor bar\"\n field:\"var.editor\"\n selectFilter:\"[[|Hidden]]\n [[vis|Simple]]\n [[advanced|Advanced]]\"\n descr:\"Whether the widget should act as an editor or not.\">>\n <<tmap-row type:\"input-select\"\n title:\"Design\"\n field:\"var.design\"\n selectFilter:\"[[|Normal]]\n [[plain|Plain]]\"\n descr:\"Usually a header is displayed and borders. Plain\n design will only show the mere graph.\">>\n <<tmap-row type:\"input-text\"\n title:\"Height\"\n field:\"var.height\"\n descr:\"Graph's height in css units. Defaults to '300px'.\">>\n <<tmap-row type:\"input-text\"\n title:\"Width\"\n field:\"var.width\"\n descr:\"Graph's width in css units. Defaults to '100%'.\">>\n <<tmap-row type:\"input-text\"\n title:\"Class\"\n field:\"var.class\"\n descr:\"A custom class to apply your own css.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Click to use\"\n field:\"var.click-to-use\"\n default:\"false\"\n descr:\"A click is needed to enable the graph.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show buttons\"\n field:\"var.show-buttons\"\n default:\"true\"\n descr:\"Show or hide the graph's navigation buttons.\">>\n </table>\n</fieldset>"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/close": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/close",
"text": "\\rules except wikilink\n\n<$button class=\"tmap-dialog-button tmap-close-button\" tooltip=\"Close this dialog\">Close\n\n <!-- trigger dialog callback -->\n <$action-setfield $tiddler=<<result>> text=\"1\" />\n \n</$button>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok",
"text": "\\rules except wikilink\n\n<$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm dialog\">OK\n\n <!-- trigger dialog callback -->\n <$action-setfield $tiddler=<<result>> text=\"1\" />\n \n</$button>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel",
"text": "\\rules except wikilink\n\n<$transclude tiddler=\"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok\" mode=\"inline\" />\n<$button class=\"tmap-dialog-button tmap-cancel-button\" tooltip=\"Close dialog without saving\">Cancel\n <!-- trigger dialog callback -->\n <$action-setfield $tiddler=<<result>> text=\"\" />\n</$button>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress",
"text": "\\rules except wikilink\n\n<$set name=\"currentTiddler\" value=<<title>> >\n\n<$checkbox field=\"suppress\" checked=\"1\" unchecked=\"0\" default=\"0\"> Do not show this dialog again</$checkbox>\n<$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm this dialog\">OK\n\n <!-- trigger dialog callback -->\n <$action-setfield $tiddler=<<result>> text=\"1\" />\n \n <!-- suppress dialog in the future -->\n <$action-sendmessage $message=\"tmap:tm-suppress-dialog\"\n dialog=<<templateId>>\n suppress={{!!suppress}} />\n \n</$button>\n\n</$set>"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter",
"text": "\\rules except wikilink\n\n\\define footer() $:/plugins/felixhayashi/tiddlymap/dialogFooter/$(buttons)$\n\n<$transclude tiddler=<<footer>> />\n\n<!-- we need this button to be able to close a tiddler from outside programmatically -->\n<$button class=\"tmap-hidden-close-button\" message=\"tm-close-tiddler\" />"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager",
"text": "\\rules except wikilink\n\n<$button\n class=\"tmap-dialog-button tmap-save-button\"\n tooltip=\"Save the current changes\">Save\n <$action-sendmessage\n $message=\"tmap:tm-save-type-form\"\n mode=<<mode>>\n output=<<output>> />\n</$button>\n<$button\n class=\"tmap-dialog-button tmap-cancel-button\"\n tooltip=\"Cancel the most resent changes and exit\">Quit\n <$action-setfield $tiddler=<<result>> text=\"1\" />\n</$button>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType",
"caption": "Removal",
"text": "\\rules except wikilink\n\n\\define manage-edge-types()\n <$macrocall $name=\"tmap-row\"\n type=\"input-checkbox\"\n title=\"Delete type\"\n field=\"temp.deleteType\"\n default={{!id}}\n readonly={{!!temp.idImmutable}}\n descr=\"If you want to delete this type, set this to true\n and click the save button afterwards. Predefined system\n types cannot be deleted.\" note=\"Consequently, all edges\n of this type will be deleted.\" />\n\\end\n\n\\define manage-node-types()\n <$macrocall $name=\"tmap-row\"\n type=\"input-checkbox\"\n title=\"Delete type\"\n field=\"temp.deleteType\"\n default={{!id}}\n readonly={{!!temp.idImmutable}}\n descr=\"If you want to delete this type, set this to true and\n click the save button afterwards. Predefined system\n types cannot be deleted.\" />\n\\end\n\n<table class=\"tmap-config-table\"><$macrocall $name=<<mode>> /></table>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description",
"caption": "Description",
"text": "\\rules except wikilink\n\n\\define manage-edge-types()\n <<tmap-row type:\"input-textarea\"\n title:\"Description\"\n field:\"description\"\n descr:\"An optional description for this type. The\n description will be displayed as tooltip when\n moving the mouse over an edge of this type.\">>\n\\end\n\n\\define manage-node-types()\n <<tmap-row type:\"input-textarea\"\n title:\"Description\"\n field:\"description\" \n descr:\"An optional description for this type.\">>\n\\end\n\n<table class=\"tmap-config-table\">\n <$macrocall $name=<<mode>> />\n</table>\n\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings",
"caption": "General",
"text": "\\rules except wikilink\n\n\\define manage-edge-types()\n <<tmap-row type:\"input-text\"\n title:\"Label\"\n field:\"label\"\n descr:\"An optional alias used as edge-label.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show label\"\n field:\"show-label\"\n default:\"true\"\n descr:\"If unchecked, no edge label will be displayed.\">>\n\\end\n\\define manage-node-types()\n <$list filter=\"[<currentTiddler>!regexp:id[tmap:]]\">\n <<tmap-row type:\"input-textarea\"\n title:\"Scope\"\n field:\"scope\"\n descr:\"A filter expression that defines, which nodes inherit\n this node-type and its style.\">>\n </$list>\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Priority\"\n field=\"priority\"\n selectFilter=<<tmap \"scale\" \"100\">>\n descr=\"When a type has a a higher priority than another type,\n its style will override the other style\" />\n\\end\n\n<table class=\"tmap-config-table\">\n <$macrocall\n $name=\"tmap-row\"\n title=\"Identifier\"\n field=\"temp.newId\"\n type=\"input-text\"\n default={{!!id}}\n readonly={{!!temp.idImmutable}}\n descr=\"A unique identifier\"\n />\n <$macrocall $name=<<mode>> />\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview",
"caption": "Overview",
"text": "\\rules except wikilink\n\n\\define date(f) <$view field=$f$ format=\"date\" template=\"DDth mmm hh:mm:ss\"/>\n\n! <$link to={{!!typeTRef}}><$view field=\"id\" /></$link>\n\n<table class=\"tmap-key-value-table\">\n <tr>\n <th align=\"left\">Created on</th>\n <td>\n <<date \"created\">>\n </td>\n </tr>\n <tr>\n <th align=\"left\">Modified on</th>\n <td><<date \"modified\">></td>\n </tr>\n <tr>\n <th align=\"left\">Usage count</th>\n <td>\n <span class=\"tmap-edge-type-specific\">\n <$view field=\"temp.usageCount\" />\n </span>\n <span class=\"tmap-node-type-specific\">\n <$count filter={{!!scope}}>0</$count>\n </span>\n </td>\n </tr>\n</table>\n\n<$view field=\"description\">//No description available//</$view>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling",
"caption": "Styling",
"text": "\\rules except wikilink\n\n\\define url()\n <$set\n filter=\"[<mode>prefix[manage-edge-types]]\"\n name=\"module\"\n value=\"edges\"\n emptyValue=\"nodes\">\n [[visjs.org|http://visjs.org/docs/network/$(module)$]]\n </$set>\n\\end\n\n<fieldset class=\"tmap-node-type-specific\">\n <legend>Icon Settings</legend>\n <table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"TW-icon\"\n field:\"tw-icon\"\n descr:\"A tiddlywiki image reference.\n For example '$:/core/icon' for Movotun Jack.\">>\n <<tmap-row type:\"input-text\"\n title:\"FA-icon\"\n field:\"fa-icon\"\n descr:\"A Font Awesome icon code.\n For example 'f206' for the bicycle symbol.\">>\n </table>\n</fieldset>\n\n<fieldset><legend>Visjs styles</legend>\n <div class=\"tmap-flash-message tmap-info\">\n All visjs options below are documented at <<url>>.\n </div>\n <div class=\"tmap-flash-message tmap-info\">\n Only config items that you actually changed have an effect on\n the graph. Other options are visible, yet, inactive.\n </div>\n <$tmap-config\n mode=<<mode>>\n inherited=\"inherited-style\"\n extension=\"style\" />\n</fieldset>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager",
"subtitle": "{{$:/core/images/tag-button}} <<topic>>",
"buttons": "element_type_manager",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n\\define defaultTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview\n\\end\n\n\\define settingsTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings\n\\end\n\n\\define tabsFilter()\n[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/]]\n\\end\n\n\\define searchFilter()\n$(searchSelector)$\n+[sort[title]nsort[priority]]\n+[removeprefix<typeRootPath>removeprefix[/]]\n+[search:title{$:/temp/tmap/MapElementTypeSearch}]\n\\end\n\n\\define managerClass() tmap-$(mode)$\n\n\\define typePath() $(typeRootPath)$/$(id)$\n\n<div id=\"tmap-element-type-manager\" class=<<managerClass>>>\n <div>\n <div class=\"tmap-searchbar\">\n <$edit-text\n focus=\"true\"\n tiddler=\"$:/temp/tmap/MapElementTypeSearch\"\n type=\"text\"\n tag=\"input\"\n default=\"\" />\n <$list filter=\"[{$:/temp/tmap/MapElementTypeSearch}regexp[.+]]\n +[addprefix[/]]\n +[addprefix<typeRootPath>]\n +[!is[tiddler]!is[shadow]]\">\n <$button tooltip=\"Create a new type of this name\">\n {{$:/core/images/new-button}}\n <$action-sendmessage\n $message=\"tmap:tm-create-type\"\n mode=<<mode>>\n id={{$:/temp/tmap/MapElementTypeSearch}}\n output=<<output>> />\n <$action-setfield $tiddler=\"$:/temp/tmap/MapElementTypeSearch\" text=\"\" />\n </$button>\n </$list>\n\n </div>\n <ul>\n <$list\n filter=<<searchFilter>>\n emptyMessage=<<noTypeFound>>\n variable=\"id\">\n <li>\n <span class=\"tmap-ranking tmap-node-type-specific\">\n # <$view tiddler=<<typePath>> field=\"priority\">1</$view>\n </span>\n <$button class=\"tc-btn-invisible tmap-link\"><<id>>\n <$action-setfield\n $tiddler=<<qualify \"$:/state/tabs/MapElementTypeManager\">>\n text=<<defaultTab>> />\n <$action-sendmessage\n $message=\"tmap:tm-load-type-form\"\n id=<<id>>\n mode=<<mode>>\n output=<<output>> />\n </$button>\n </li>\n </$list>\n </ul>\n </div>\n <div>\n <$reveal type=\"nomatch\" text=\"\" default={{!!id}} >\n <$macrocall\n $name=\"tabs\"\n default=<<defaultTab>>\n state=\"$:/state/tabs/MapElementTypeManager\"\n tabsList=<<tabsFilter>> />\n </$reveal>\n <$reveal type=\"match\" text=\"\" default={{!!id}} >\n <div class=\"tmap-flash-message tmap-info\">\n Please select a type from the list or create a new one by\n entering the type name in the search field on the left.\n </div>\n <div class=\"tmap-flash-message tmap-info tmap-node-type-specific\">\n The number next to the node-type label represents it's priority.\n </div>\n </$reveal>\n </div>\n</div>\n"
},
"$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node": {
"title": "$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node",
"text": "\\define single()\n <$list filter=\"\n [[tmap:tm-toggle-central-topic, $:/core/images/star-filled, Toggle central topic]]\n [[tmap:tm-delete-element, $:/core/images/delete-button, Delete node]]\">\n <$button class=\"tc-btn-invisible\">\n <$action-sendmessage $message=<<tmap \"splitAndSelect\" \", \" \"0\">> />\n <$transclude tiddler=<<tmap \"splitAndSelect\" \", \" \"1\">> />\n <<tmap \"splitAndSelect\" \", \" \"2\">>\n </$button>\n </$list>\n\\end\n\n\\define multi()\n <$list filter=\"\n [[tmap:tm-delete-element, $:/core/images/delete-button, Delete selected nodes]]\">\n <$button class=\"tc-btn-invisible\">\n <$action-sendmessage $message=<<tmap \"splitAndSelect\" \", \" \"0\">> />\n <$transclude tiddler=<<tmap \"splitAndSelect\" \", \" \"1\">> />\n <<tmap \"splitAndSelect\" \", \" \"2\">>\n </$button>\n </$list>\n\\end\n\n<div class=\"tc-drop-down\">\n <$macrocall $name=<<mode>> />\n</div>\n"
},
"$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar",
"text": "\\rules except wikilink\n\\define showEdgeField() show-$(curEdgeId)$\n\n<!-- === View Switcher ========================================== -->\n\n<div class=\"tmap-menu-bar\">\n View:\n <$reveal type=\"match\" text=\"false\" default=<<isViewBound>> >\n <$select\n tiddler=<<viewHolder>>\n field=\"text\"\n default=<<viewLabel>> >\n <$list filter=<<tmap \"option\" \"selector.allViewsByLabel\">> >\n <option value={{!!title}}>\n <$view tiddler={{!!title}} field=\"title\" />\n </option>\n </$list>\n </$select>\n </$reveal>\n <$reveal type=\"match\" text=\"true\" default=<<isViewBound>> >\n <b><<viewLabel>></b>\n </$reveal>\n\n<!-- === Menu =================================================== -->\n\n <$button\n popup=<<qualify \"$:/temp/menu\">>\n class=\"tmap-unicode-button\"\n tooltip=\"Open the Menu\">{{$:/core/images/menu-button}}\n </$button>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/menu\">> >\n <div class=\"tc-drop-down\">\n <a href=\"http://tiddlymap.org#Documentation\" target=\"_blank\">\n {{$:/core/images/info-button}} Open online help\n </a>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-create-view\">\n {{$:/core/images/new-button}} Create new view\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-generate-widget\">\n {{$:/core/images/permalink-button}} Grab widget code\n </$button>\n <div class=\"tmap-list-separator\">Global configurations:</div>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-configure-system\">\n {{$:/core/images/options-button}} Configure TiddlyMap\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-edge-types\">\n <span class=\"tmap-unicode-icon\">◭</span> Manage edge-types\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-node-types\">\n <span class=\"tmap-unicode-icon\">▢</span> Manage node-types\n </$button>\n <div class=\"tmap-view-actions\">\n <div class=\"tmap-list-separator\">Actions for this view:</div>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-edit-view\">\n {{$:/core/images/options-button}} Configure view\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-rename-view\">\n {{$:/core/images/tag-button}} Rename view\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-delete-view\">\n {{$:/core/images/delete-button}} Delete view\n </$button>\n </div>\n </div>\n </$reveal>\n\n<!-- === Neighbourhood menu ===================================== -->\n\n <$reveal\n type=\"match\"\n text=\"true\"\n default=<<tmap \"option\"\n \"config.sys.editorMenuBar.showNeighScopeButton\">>>\n <$button\n class=<<neighScopeBtnClass>>\n tooltip=\"Change the neighbourhood scope\"\n popup=<<qualify \"$:/temp/neighScope\">>>\n {{$:/core/images/preview-open}}\n </$button>\n </$reveal>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/neighScope\">> >\n <div class=\"tc-drop-down\">\n <div class=\"tmap-list-separator\">Neighbourhood scope</div>\n <$button class=\"tc-btn-invisible\">None\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.neighbourhood_scope=\"\" />\n </$button>\n <$list filter=\"[[1|1 step distance]]\n [[2|2 step distance]]\n [[3|3 step distance]]\n [[4|4 step distance]]\n [[5|5 step distance]]\">\n <$button class=\"tc-btn-invisible\">\n <<tmap \"splitAndSelect\" \"|\" \"1\">>\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.neighbourhood_scope=<<tmap \"splitAndSelect\" \"|\" \"0\">> />\n </$button>\n </$list>\n <$button class=\"tc-btn-invisible\">No limit\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.neighbourhood_scope=\"100\" />\n </$button>\n\n <div class=\"tmap-list-separator\">Neighbourhood traversal</div>\n\n <$radio field=\"config.neighbourhood_directions\" value=\"in\"> Incoming</$radio><br />\n <$radio field=\"config.neighbourhood_directions\" value=\"out\"> Outgoing</$radio><br />\n <$radio field=\"config.neighbourhood_directions\" value=\"\"> Both</$radio>\n\n <div class=\"tmap-list-separator\">Other</div>\n\n <$checkbox field=\"config.show_inter_neighbour_edges\"\n checked=\"true\" unchecked=\"false\"> Inter-neighbour edges</$checkbox>\n\n </div>\n </$reveal>\n\n<!-- === Tracing ===================================== -->\n\n <$reveal\n type=\"match\"\n text=\"true\"\n default=<<isShowNeighbourhood>>>\n <$button\n class=<<tracingBtnClass>>\n tooltip=\"Trace your clicks on neighbouring nodes.\"\n popup=<<qualify \"$:/temp/tmap-tracing\">>>\n {{$:/core/images/timestamp-on}}\n </$button>\n </$reveal>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/tmap-tracing\">> >\n <div class=\"tc-drop-down\">\n <$button message=\"tmap:tm-neighbourhood-reset-trace\">\n {{$:/core/images/erase}} Restart\n </$button>\n <span\n title=\"\n Enable this option to trace your clicks on neighbouring nodes.\n Traced neighbours are temporarily added to the map (until the map is closed)\n as if they where regular nodes of the map\"\n >\n <$checkbox\n field=\"config.neighbourhood_trace_clicks\"\n checked=\"true\"\n unchecked=\"false\"\n >\n Trace clicked nodes\n </$checkbox>\n </span>\n <br />\n <span title=\"Will focus an zoom on the latest traced node\">\n <$checkbox\n field=\"config.neighbourhood_focus_newly_traced_node\"\n checked=\"true\"\n unchecked=\"false\"\n >\n Focus traced nodes\n </$checkbox>\n </span>\n <br />\n <span title=\"Per default, only neighbours of nodes matching the node filter are displayed. Enable this option to also show neighbours of traced nodes.\">\n <$checkbox field=\"config.neighbourhood_include_traced_node_neighbours\"\n checked=\"true\" unchecked=\"false\"> Show neighbours of all traced nodes</$checkbox>\n </span>\n </div>\n </$reveal>\n\n<!-- === Export menu ============================================ -->\n\n <$reveal\n type=\"match\"\n text=\"true\"\n default=<<tmap \"option\" \"config.sys.editorMenuBar.showScreenshotButton\">>>\n <$button class=\"tmap-unicode-button\" tooltip=\"Open the map-export menu\" popup=<<qualify \"$:/temp/mapExport\">>>\n {{$:/core/images/download-button}}\n </$button>\n </$reveal>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/mapExport\">>>\n <div class=\"tc-drop-down\">\n <$button\n class=\"tc-btn-invisible\"\n tooltip=\"Export the graph and all its elements\n in form of a JSON file\">\n {{$:/core/images/permalink-button}} Save as JSON file\n <$action-sendmessage\n $message=\"tmap:tm-download-graph\"\n view=<<viewLabel>> />\n </$button>\n <$button\n class=\"tc-btn-invisible\"\n tooltip=\"Create a png image to download or save it\n as image or view-placeholder in your wiki\">\n {{$:/core/images/palette}} Save as png image\n <$action-sendmessage $message=\"tmap:tm-save-canvas\" />\n </$button>\n </div>\n </$reveal>\n\n<!-- === Raster menu ============================================ -->\n\n <$reveal\n type=\"match\"\n text=\"true\"\n default=<<tmap \"option\" \"config.sys.editorMenuBar.showRasterMenuButton\">>>\n <$button\n tooltip=\"Change the raster of your map\"\n class=\"tmap-unicode-button\"\n popup=<<qualify \"$:/temp/rasterMenu\">>>\n {{$:/core/images/line-width}}\n </$button>\n </$reveal>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/rasterMenu\">>>\n <div class=\"tc-drop-down\">\n <$button class=\"tc-btn-invisible\">Disable raster\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.raster=\"\" />\n </$button>\n <div class=\"tmap-list-separator\">Raster sizes</div>\n <$list filter=\"[[50|50px]]\n [[75|75px]]\n [[100|100px]]\n [[150|150px]]\">\n <$button class=\"tc-btn-invisible\">\n <<tmap \"splitAndSelect\" \"|\" \"1\">>\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.raster=<<tmap \"splitAndSelect\" \"|\" \"0\">> />\n </$button>\n </$list>\n </div>\n </$reveal>\n\n</div>\n"
},
"$:/plugins/felixhayashi/tiddlymap/misc/focusButton": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/focusButton",
"text": "\\define filter() [list[$:/temp/tmap/nodes/$(viewLabel)$]search:title{$:/temp/tmap/bar/search}]\n\\define concat(str) $str$\n\n\\define state() $(widgetPopupsPath)$/focus\n\n<div class=\"tmap-focus-button\">\n <$reveal type=\"match\" state=<<state>> text=\"\">\n <$button\n tooltip=\"Zoom on a specific node\"\n class=<<tv-config-toolbar-class>>>{{$:/core/images/advanced-search-button}}\n <$action-setfield $tiddler=\"$:/temp/tmap/bar/search\" text=\"\" />\n <$action-setfield $tiddler=<<state>> text=\"1\" />\n </$button>\n </$reveal>\n <$reveal type=\"nomatch\" state=<<state>> text=\"\">\n <$button\n tooltip=\"Close zoom popup\"\n class=<<tv-config-toolbar-class>>>{{$:/core/images/advanced-search-button}}\n <$action-setfield $tiddler=<<state>> text=\"\" />\n </$button>\n <div class=\"tmap-search-dropdown\">\n <div class=\"tc-drop-down\">\n <$edit-text\n focus=\"true\"\n tiddler=\"$:/temp/tmap/bar/search\"\n field=\"text\"\n type=\"text\"\n tag=\"input\"\n default=\"\" />\n <small><$count filter=<<filter>> /> results</small>\n <hr />\n <div class=\"tmap-very-small-list\">\n <$list filter=<<filter>>\n variable=\"item\"\n emptyMessage=\"//No results//\">\n <$button\n class=\"tc-btn-invisible\"\n message=\"tmap:tm-focus-node\"\n param=<<item>>>\n <$view tiddler=<<item>> field=\"title\" />\n </$button>\n </$list>\n </div>\n </div>\n </div>\n </$reveal>\n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/hook/editor": {
"title": "$:/plugins/felixhayashi/tiddlymap/hook/editor",
"caption": "Map",
"tags": "$:/tags/SideBar",
"text": "\\define width() calc(100% - 15px)\n\n<div class=\"tmap-mobile-editor\">\n <div class=\"tmap-flash-message tmap-warning\">\n The editor is not displayed in mobile mode.\n </div>\n</div>\n<div class=\"tmap-desktop-editor\">\n <$tiddlymap\n class=\"tmap-sidebar-map-editor\"\n editor=\"advanced\"\n object-id=\"main_editor\"\n click-to-use=\"false\">\n </$tiddlymap>\n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/hook/liveTab": {
"title": "$:/plugins/felixhayashi/tiddlymap/hook/liveTab",
"caption": "Live",
"text": "\\define width() calc(100% - 15px)\n\n<div class=\"tmap-mobile-editor\">\n <div class=\"tmap-flash-message tmap-warning\">\n The live tab is not displayed in mobile mode.\n </div>\n</div>\n<div class=\"tmap-desktop-editor\">\n <$set name=\"view\"\n filter=\"[{$:/temp/tmap/currentTiddler}get[tmap.open-view]]\"\n emptyValue=<<tmap \"option\" \"config.sys.liveTab.fallbackView\">>>\n <div>\n <$tiddlymap\n view=<<view>>\n click-to-use=\"false\"\n refresh-triggers=\"$:/temp/tmap/currentTiddler\"\n object-id=\"live_tab\">\n </$tiddlymap>\n </div>\n </$set> \n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton",
"tags": "$:/tags/ViewToolbar",
"description": "{{$:/language/Buttons/TiddlyMap/Hint}}",
"caption": "{{$:/plugins/felixhayashi/tiddlymap/icon}} {{$:/language/Buttons/TiddlyMap/Caption}}",
"text": "\\define buttonClass() $(tv-config-toolbar-class)$ $(additional-classes)$\n\n\\define nonExistentItem()\n<<item>> <span style=\"color: #9E9E9E\">(will be created)</span>\n\\end\n\n\\define noConnectionsMsg()\n<tr><td colspan=\"4\">//No connections found!//</td></tr>\n\\end\n\n\\define normalSearchFilter()\n[!is[system]!has[draft.of]search:title{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define regexSearchFilter()\n[!is[system]!has[draft.of]regexp{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define showButton(state)\n<$button set=\"$:/temp/tmap/state/popup/quickConnect\"\n setTo=\"$state$\" tooltip={{$:/language/Buttons/TiddlyMap/Hint}} \n aria-label={{$:/language/Buttons/TiddlyMap/Caption}}\n class=<<buttonClass>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">{{$:/plugins/felixhayashi/tiddlymap/icon}}</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/TiddlyMap/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n\\define searchResults()\n<td>\n <$button tooltip=\"Create incoming edge\">\n <<tmap \"option\" \"misc.arrows.in\">>\n <$action-sendmessage $message=\"tmap:tm-create-edge\"\n from=<<item>>\n to=<<currentTiddler>>\n force=\"true\"\n label={{$:/temp/quickConnectSearch/type}}\n view={{$:/temp/quickConnectSearch/view}} />\n </$button>\n</td>\n<td>\n <$button tooltip=\"Create outgoing edge\">\n <<tmap \"option\" \"misc.arrows.out\">>\n <$action-sendmessage $message=\"tmap:tm-create-edge\"\n from=<<currentTiddler>>\n to=<<item>>\n force=\"true\"\n label={{$:/temp/quickConnectSearch/type}}\n view={{$:/temp/quickConnectSearch/view}} />\n </$button>\n</td>\n<td>\n <$list\n filter=\"[<item>is[tiddler]]\"\n emptyMessage=<<nonExistentItem>>>\n <$view tiddler=<<item>> field=\"title\" />\n </$list>\n</td>\n\\end\n\n\\define hidePopup()\n<$macrocall $name=\"showButton\" state=<<qualify>> />\n\\end\n\n\\define showPopup()\n<$set name=\"additional-classes\" value=\"tmap-active-button\">\n <$macrocall $name=\"showButton\" state=\"\" />\n</$set>\n<$set\n name=\"searchFilter\"\n filter=\"[field:title[$:/state/tmap/tid-toolbar]has[re-filter]]\"\n value=<<regexSearchFilter>>\n emptyValue=<<normalSearchFilter>>>\n<div class=\"tmap-quick-connect tc-reveal tc-popup\">\n <div class=\"tc-drop-down\">\n <div class=\"title\">Create connection</div>\n <table class=\"tmap-quick-connect-search-bar\">\n <tr>\n <td>Type:</td>\n <td>\n <$edit-text\n tiddler=\"$:/temp/quickConnectSearch/type\"\n field=\"text\"\n type=\"text\"\n tag=\"input\"\n default=\"\" />\n <$select tiddler=\"$:/temp/quickConnectSearch/type\" default=\"\">\n <option></option>\n <$list filter=<<tmap \"option\" \"selector.allEdgeTypesById\">>>\n <option>{{!!title}}</option>\n </$list>\n </$select>\n </td>\n </tr>\n <tr>\n <td>Search:</td>\n <td>\n <$edit-text tiddler=\"$:/temp/quickConnectSearch\" type=\"text\" tag=\"input\" default=\"\"></$edit-text>\n <$checkbox\n tiddler=\"$:/state/tmap/tid-toolbar\"\n field=\"re-filter\"\n checked=\"1\"\n unchecked=\"\"\n default=\"\"> regexp\n </$checkbox>\n<!--\n <small>(<$count filter=<<searchFilter>> /> results)</small>\n-->\n </td>\n </tr>\n </table>\n <table class=\"tmap-create-connection-table\">\n <tr>\n <td colspan=\"2\">\n <table class=\"tmap-very-small-list\">\n <$list\n filter=<<searchFilter>>\n variable=\"item\">\n <tr><<searchResults>></tr>\n </$list>\n <tr>\n <$list filter=\"[{$:/temp/quickConnectSearch}regexp[.+]] -[is[tiddler]]\" variable=\"item\">\n <<searchResults>>\n </$list>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n <div class=\"title\">Existing Connections</div>\n <div class=\"tmap-quick-connect-existing-bar\">\n <$select\n tiddler=\"$:/state/tmap/tid-toolbar\"\n field=\"direction\"\n default=\"both\">\n <option value=\"both\">both</option>\n <option value=\"in\">incoming</option>\n <option value=\"out\">outgoing</option>\n </$select>\n <$checkbox\n tiddler=\"$:/state/tmap/tid-toolbar\"\n field=\"filter.links\"\n checked=\"-[[tw-body:link]]\"\n unchecked=\"\"\n default=\"\"> hide links\n </$checkbox>\n </div>\n <table class=\"tmap-connection-table\">\n<!--\n <tr>\n <th></th>\n <th>Tiddler</th>\n <th>Type</th>\n <th></th>\n </tr>\n-->\n \n <$tmap-connections\n filter=<<tmap mergeFields \"$:/state/tmap/tid-toolbar\" \"filter.\">>\n direction={{$:/state/tmap/tid-toolbar!!direction}}\n emptyMessage=<<noConnectionsMsg>>>\n <tr>\n <td title=<<direction>>><<directionSymbol>></td>\n <td><$link to=<<neighbour>>><$view field=\"title\" /></$link></td>\n <td><<edge.type>></td>\n <td>\n <$button\n tooltip=\"Delete this connection\"\n class=\"tc-btn-invisible\">{{$:/core/images/close-button}}\n <$action-sendmessage $message=\"tmap:tm-remove-edge\"\n id=<<edge.id>>\n from=<<edge.from>>\n to=<<edge.to>>\n type=<<edge.type>> />\n </$button>\n </td>\n </tr>\n </$tmap-connections>\n </table> \n </div>\n</div>\n</$set>\n\\end\n\n<$list filter=\"[all[current]is[tiddler]]\"><$list filter=\"[{$:/temp/tmap/state/popup/quickConnect}prefix<qualify>]\" variable=\"item\" emptyMessage=<<hidePopup>>><<showPopup>></$list></$list>"
},
"$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png": {
"title": "$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png": {
"title": "$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/tiddlymap/icon": {
"title": "$:/plugins/felixhayashi/tiddlymap/icon",
"tags": "$:/tags/Image",
"text": "<svg\n xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\n xmlns:cc=\"http://creativecommons.org/ns#\"\n xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n xmlns:svg=\"http://www.w3.org/2000/svg\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:inkscape=\"http://www.inkscape.org/namespaces/inkscape\"\n class=\"tc-image-tiddlymap-button tc-image-button\"\n version=\"1.1\"\n width=\"22pt\"\n height=\"22pt\"\n viewBox=\"0 0 128 128\">\n <defs\n id=\"defs4\">\n <marker\n refX=\"0\"\n refY=\"0\"\n orient=\"auto\"\n id=\"Arrow1Lend\"\n style=\"overflow:visible\">\n <path\n d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n transform=\"matrix(-0.8,0,0,-0.8,-10,0)\"\n id=\"path3850\"\n style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" />\n </marker>\n <marker\n refX=\"0\"\n refY=\"0\"\n orient=\"auto\"\n id=\"Arrow1Lstart\"\n style=\"overflow:visible\">\n <path\n d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n transform=\"matrix(0.8,0,0,0.8,10,0)\"\n id=\"path3847\"\n style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" />\n </marker>\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4329\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4321\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4315\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4307\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4299\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4293\" />\n </defs>\n <g\n transform=\"translate(0,-1024.5289)\"\n id=\"layer1\">\n <path\n d=\"m 17.867073,4.5821643 a 3.7249374,3.7249374 0 1 1 -7.449875,0 3.7249374,3.7249374 0 1 1 7.449875,0 z\"\n transform=\"matrix(-6.3328802,0,0,6.2775831,193.9581,1100.3667)\"\n id=\"path4139-1-14\"\n style=\"fill-opacity:1;fill-rule:nonzero\" />\n <path\n d=\"M 77.450496,1064.5069 C 58.849552,1025.9634 15.704158,1023.3858 2.8821873e-7,1034.558 L 0.02388589,1035.2674 C 24.502636,1022.2072 44.810725,1042.1507 60.163934,1074.112 z\"\n id=\"path4337\"\n style=\"fill-opacity:1;stroke-width:0.58181816;stroke-miterlimit:4;stroke-dasharray:none;marker-start:none;marker-end:none\" />\n <path\n d=\"m 12.878637,11.280739 4.75937,-2.7478243 4.759371,-2.7478236 0,5.4956479 0,5.495648 -4.759371,-2.747824 z\"\n transform=\"matrix(4.6545455,0,0,4.6545455,-13.580429,1027.7638)\"\n id=\"path3004\"\n style=\"fill-opacity:1;fill-rule:nonzero\" />\n </g>\n <metadata\n id=\"metadata3772\">\n <rdf:RDF>\n <cc:Work\n rdf:about=\"\">\n <dc:title></dc:title>\n <dc:format>image/svg+xml</dc:format>\n <dc:type\n rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\" />\n </cc:Work>\n </rdf:RDF>\n </metadata>\n</svg>\n"
},
"$:/plugins/felixhayashi/tiddlymap/media/surface.png": {
"title": "$:/plugins/felixhayashi/tiddlymap/media/surface.png",
"type": "image/png",
"text": "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"
},
"$:/config/EditTemplateFields/Visibility/tmap.id": {
"title": "$:/config/EditTemplateFields/Visibility/tmap.id",
"text": "hide"
},
"$:/language/Buttons/TiddlyMap/Caption": {
"title": "$:/language/Buttons/TiddlyMap/Caption",
"text": "tiddlymap"
},
"$:/language/Buttons/TiddlyMap/Hint": {
"title": "$:/language/Buttons/TiddlyMap/Hint",
"text": "Toggle TiddlyMap actions"
},
"$:/plugins/felixhayashi/tiddlymap/misc/macros": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/macros",
"text": "\\define concat(str) $str$\n\n\\define input-text(field, index, default, readonly, class, focus)\n <$reveal type=\"match\" text=\"\" default=\"$readonly$\">\n <$edit-text\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n type=\"text\"\n tag=\"input\"\n default=\"$default$\"\n focus=\"$focus$\"\n class=\"$class$\" />\n </$reveal>\n <$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\">\n <input type=\"text\" value=\"$default$\" readonly=\"true\" disabled=\"true\" />\n </$reveal>\n\\end\n\n\\define input-button(field, index, default, default, label:\"Proceed\")\n <div class=\"tmap-button-wrapper\">\n <$button>$label$\n <$action-setfield $tiddler=<<output>> $field=\"$field$\" index=\"$index$\" $value=\"$default$\" />\n </$button>\n </div>\n\\end\n\n\\define input-textarea(field, index, default, default, class, focus)\n <$edit-text\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n autoHeight=\"no\"\n type=\"text\"\n tag=\"textarea\"\n default=\"$default$\"\n class=\"$class$\"\n focus=\"$focus$\" />\n\\end\n\n\\define input-checkbox(field, index, readonly, default)\n <$reveal type=\"match\" text=\"\" default=\"$readonly$\">\n <$checkbox\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n checked=\"true\"\n unchecked=\"false\"\n default=\"$default$\" />\n </$reveal>\n <$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\">\n <input type=\"checkbox\" value=\"$default$\" readonly=\"true\" disabled=\"true\" />\n </$reveal>\n\\end\n\n\\define input-multi-checkbox(selectFilter, invert:\"no\", default)\n <div class=\"tmap-no-stretch\">\n <$list\n filter=\"$selectFilter$\"\n emptyMessage=\"– This list contains no items –\">\n <$checkbox\n tiddler=<<output>>\n tag=<<tmap \"splitAndSelect\" \"|\" \"0\">>>\n <$view\n tiddler=<<tmap \"splitAndSelect\" \"|\" \"1\">>\n field=\"title\" />\n </$checkbox><br />\n </$list>\n </div>\n\\end\n\n\\define input-select(field, index, selectFilter, default, nochoice)\n <$select\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n default=\"$default$\">\n <$set name=\"nochoice\" value=\"$nochoice$\">\n <$list filter=\"[<nochoice>regexp[.+]]\">\n <option value=\"\"><b><<nochoice>></b></option>\n </$list>\n </$set>\n <$list filter=\"$selectFilter$\">\n <option value=<<tmap \"splitAndSelect\" \"|\" \"0\">> >\n <$view tiddler=<<tmap \"splitAndSelect\" \"|\" \"1\">> field=\"title\" />\n </option>\n </$list>\n </$select>\n\\end\n\n\\define input-radio(field, index, selectFilter, default)\n <$list filter=\"$selectFilter$\">\n <$radio\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n value=<<tmap \"splitAndSelect\" \"|\" \"0\">>>\n <<tmap \"splitAndSelect\" \"|\" \"1\">>\n </$radio><br />\n </$list>\n\\end\n\n\\define tmap-row(title, field, index, type, descr, note, label, default, readonly, reset, selectFilter, nochoice, invert, class, focus)\n <tr>\n <td class=\"tmap-title\">$title$:</td>\n <td>\n <<$type$\n field:\"$field$\"\n index:\"$index$\"\n readonly:\"$readonly$\"\n default:\"$default$\"\n label:\"$label$\"\n invert:\"$invert$\"\n selectFilter:\"$selectFilter$\"\n nochoice:\"$nochoice$\"\n focus:\"$focus$\"\n class:\"$class$\">>\n <$reveal type=\"match\" text=\"true\" default=\"$reset$\">\n <$button>reset\n <$action-setfield $tiddler=<<output>> $field=\"$field$\" $index=\"$index$\" $value=\"$default$\" />\n </$button>\n </$reveal>\n </td>\n <td>\n <span class=\"tmap-description\">$descr$</span>\n <$reveal type=\"nomatch\" text=\"\" default=\"$note$\">\n <div class=\"tmap-note\">''Note:'' $note$</div>\n </$reveal>\n </td>\n </tr>\n\\end\n\n\\define visConfiguration(inheritedList, extensionField, styleName:\"style\")\n <fieldset><legend>Visjs configurations ($styleName$)</legend>\n <div class=\"tmap-flash-message tmap-info\">\n Only config items that you actually changed have an effect on\n the graph. Other options are visible, yet, inactive.\n </div>\n <$tmap-config\n mode=\"manage-node-types\"\n inherited=\"$inheritedList$\"\n extension=\"$extensionField$\" />\n </fieldset>\n\\end\n"
},
"$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder",
"text": "Default"
},
"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic",
"description": "The style is applied to the node that you marked as central topic in a map.",
"style": "{\"font\":{\"size\":22,\"color\":\"rgba(0,0,0,1)\"},\"shape\":\"star\"}"
},
"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour",
"description": "Neighbours are all nodes that are not part of the original set of nodes (\"matches\") but are connected (either outgoing or incoming) to a node of the original set.",
"style": "{\"color\":\"#565656\"}"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Default": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default",
"config.physics_mode": "false",
"isview": "true"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges",
"filter": "[prefix[$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes]]",
"text": "\n\n"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes",
"filter": "[field:title{$:/temp/tmap/currentTiddler}]"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Live View": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View",
"config.refresh-triggers": "$:/temp/tmap/currentTiddler",
"config.physics_mode": "true",
"config.vis": "{\"physics\":{\"forceAtlas2Based\":{\"springConstant\":0.09}}}",
"config.neighbourhood_scope": "1",
"created": "20150331114808577",
"modified": "20200509212547688",
"type": "text/vnd.tiddlywiki",
"isview": "true"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes",
"filter": "[!is[system]search{$:/temp/search}] [!is[system]search:tags{$:/temp/search}] [!is[system]search:text{$:/temp/search}limit[10]]"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search",
"config.refresh-triggers": "$:/temp/search",
"config.neighbourhood_scope": "1",
"config.physics_mode": "true"
}
}
}
{
"field.nodeLabel": "caption",
"field.nodeIcon": "icon",
"field.nodeInfo": "description",
"field.viewMarker": "isview",
"liveTab.fallbackView": "Live View",
"edgeClickBehaviour": "manager",
"debug": "false",
"notifications": "true",
"popups.enabled": "true",
"popups.delay": "600",
"popups.width": "240px",
"popups.height": "140px",
"jsonIndentation": "1",
"alwaysAddNodeIdToViewFilter": "true",
"editNodeOnCreate": "false",
"singleClickMode": "false",
"nodeFilterNeighbours": "false",
"editorMenuBar.showNeighScopeButton": "true",
"editorMenuBar.showRasterMenuButton": "true",
"editorMenuBar.showScreenshotButton": "true"
}
{
"a7c78ca0-a1fa-4cd1-ae79-433e3640283a": {
"x": -8.5,
"y": 10.02081298828125
}
}
{
"bb9f520b-ee43-49a7-bda8-83d0ad8dea97": {
"x": -54,
"y": 0
},
"defb3e86-9ef3-44c4-bed1-86cb61000c45": {
"x": 126,
"y": 106
},
"f05022b5-4e51-4f47-b089-416970c8d152": {
"x": 45,
"y": 271
},
"33ac33e2-c3d4-4da9-a49d-c66b68b8f7cb": {
"x": 214,
"y": 245
},
"370260b8-d13f-4a10-bb31-cab33a082469": {
"x": -54,
"y": 137
},
"b26aa3af-2be7-4198-89ce-88ab9e66041d": {
"x": -197,
"y": 139
},
"cb26d8df-f60a-48fb-810f-75623d5ef8a0": {
"x": 169,
"y": -109
},
"1929d0de-2e8f-4bc6-9e68-1d0800d1f023": {
"x": 517,
"y": -313
},
"6fac7d36-0eb6-43b8-8e0b-9e9bb7fc9024": {
"x": 669,
"y": -521
},
"f27fd910-143c-48a5-9738-b787a060f192": {
"x": 768,
"y": -354
},
"c9281666-82ce-4aa0-9470-cacaea6e8ede": {
"x": 18,
"y": 90
},
"85e58f95-a6a6-49e6-9178-4345468ad713": {
"x": 6,
"y": 268
},
"b5698471-87b3-4591-ab98-9e47dddbc8ae": {
"x": -162,
"y": 141
},
"f217b608-0bb0-408b-b908-31b9324b550d": {
"x": 309,
"y": 144
},
"9830b85b-44a0-4ad2-88aa-b812c3809ff1": {
"x": 299,
"y": 383
},
"50165d75-8f55-4b76-a219-20a4fca65ec9": {
"x": 474,
"y": 347
},
"44dacb7b-e3b7-4114-9764-696542a84a21": {
"x": 440,
"y": -83
},
"cec157b4-0962-4b8c-9580-bc368a4e6f8f": {
"x": 647,
"y": -162
},
"fbea7408-da20-4518-8bc5-15f016f096ad": {
"x": 591,
"y": 59
},
"bc493720-dd58-46a2-b3c4-11c423f52615": {
"x": -181,
"y": -18
},
"9d6a8465-1b22-43c4-9bfe-d5b194b1ab2e": {
"color": {
"background": "rgba(85,74,252,1)"
},
"x": 13,
"y": -368
},
"3f2de792-d2b6-4ccc-b87d-db9399a0f52e": {
"x": 254,
"y": -370
},
"743d9cfc-8b9f-433e-99a3-291a88afd345": {
"x": -80,
"y": -179
},
"3755251e-27f2-4f19-b2ac-d5dbecb8be25": {
"x": -252,
"y": -562
},
"d44b6675-e76f-4fcc-923e-8567ead586f1": {
"x": -18,
"y": -638
},
"d34ec41f-4b9c-46a0-8ef5-fc585b1c17e8": {
"x": 1149,
"y": -377
},
"4d9eb109-4834-430f-9e95-5489f2858d72": {
"x": 1144,
"y": -305
},
"656a7eca-f3d2-4143-a1ff-9572647bdf89": {
"x": 1012,
"y": -643
},
"c7205b43-b342-409e-97fb-711f6d3fd1e6": {
"x": 1145,
"y": -488
},
"32803af6-11be-4fe5-82c6-5bbd5d668a60": {
"x": -210,
"y": 390
},
"81289c39-aa80-406b-ab91-3b06794b7928": {
"x": -79,
"y": 433
},
"3b965cc1-5478-485c-930e-af5e4a3fce1e": {
"x": 1094,
"y": -590
},
"643d5757-4eca-4a58-9b4d-28414082491e": {
"x": 784,
"y": -894
},
"37db582f-e257-4011-a244-81b3a177ea27": {
"x": 877,
"y": -851
},
"3735d5eb-47d6-4e0a-b22c-ef54989c3bff": {
"x": 961,
"y": -755
},
"c8edf4f3-f22f-4bab-a700-b7cd52321ff6": {
"x": 1014,
"y": -704
},
"ef7554ec-9c82-41ec-8dc2-ba1260ec8371": {
"x": 943,
"y": -807
},
"db750d1c-48c1-4e13-95b6-781a9d5fcdac": {
"x": -423,
"y": 91
},
"5e80bc30-b480-4875-85e4-bb7af34e41b2": {
"x": -550,
"y": 144
},
"1f759f73-f522-4f04-8f51-47209b351907": {
"x": -474,
"y": 234
},
"f7ffdfdc-2b4a-4780-90b8-934576a4e2be": {
"x": -447,
"y": 297
},
"047a88ad-b24e-4e17-b546-f2a24d0378ae": {
"x": -313,
"y": 327
},
"06517298-8304-4065-a75d-b922c20b5ef5": {
"x": 187,
"y": -646
},
"44a32ff8-95d3-40fd-a989-578a31f6c422": {
"x": 943,
"y": -222
},
"3b5a7cf4-ac63-4271-8e4b-e86a9922542e": {
"x": 967,
"y": -181
},
"2d87861e-c333-416b-8f98-5de2bfb70a9a": {
"x": 896,
"y": 19
},
"b1e4702a-8096-477b-abfd-26ec2296a9d8": {
"x": 293,
"y": -678
},
"6fa7a8e9-fe2b-4118-9ad1-c333e42f6266": {
"x": 406,
"y": -681
},
"0422848c-2012-4726-a2bc-f208c874ba0d": {
"x": 508,
"y": -677
},
"10628e26-5459-425e-b905-533f252ab94a": {
"x": 550,
"y": -582
},
"3a52bbdf-49c0-4cf4-8e91-ade442f123d6": {
"x": -303,
"y": -248
},
"26c4920a-1667-4ac5-932d-93dafcbb4890": {
"x": -365,
"y": -100
},
"780dc969-44b9-47ce-9489-cd26f0604a79": {
"x": -898,
"y": -165
},
"44934644-24db-429b-bad2-359d14c25cac": {
"x": -768,
"y": -232
},
"270cbffe-9eb4-4b1c-a633-64f1c202e2d3": {
"x": -948,
"y": -83
},
"5baf4c09-3c85-4e6c-a78a-0782f8c31d76": {
"x": -808,
"y": 72
},
"e159175a-723e-47f3-856c-9f0dde44f8e1": {
"x": -963,
"y": 28
},
"b5adb2f8-3b0f-4f31-9e2a-15f192f4b68b": {
"x": -617,
"y": -637
},
"a95b34db-39a2-4772-b95a-22a3aa519f91": {
"x": 835.2877059742221,
"y": -587.3706631974908
},
"6f498596-cc9b-4e2b-afde-7c783efd8ee8": {
"x": 850,
"y": -676
},
"e01d8831-67b5-4715-bc7f-2ce08f141822": {
"x": -830,
"y": -570
},
"99b49700-aee6-4cb1-9f5e-6b82036d8ece": {
"x": -833,
"y": -503
},
"40b13683-e39a-47a6-b065-45250138bc91": {
"x": -722,
"y": -599
},
"97fc1836-4229-44b0-9d5f-908c487b660e": {
"x": -857,
"y": -411
},
"b7db8b22-203f-4b08-b2b3-a802a83be00a": {
"x": 710,
"y": 194
},
"af58f120-cf53-48cf-9c77-94eeda27daac": {
"x": 171,
"y": 609
},
"841125f4-51b8-4b89-9d74-3fe4c79c9925": {
"x": 144,
"y": 556
},
"c981c071-cb3c-46b8-8d99-26649bda30f1": {
"x": 219,
"y": 607
},
"24a9ea2f-b25c-4fad-80de-aaec406d05e2": {
"x": 343,
"y": 640
},
"19423577-dff8-4873-8c85-1c468a2b5914": {
"x": 276,
"y": 626
},
"723837f3-ef1f-4213-b4e9-5fe5c9bceffe": {
"x": 403,
"y": 635
},
"566d78fe-9d3e-40bc-a952-0ce3a75b2278": {
"x": 475,
"y": 609
},
"01b4d8e2-c758-468a-bb5b-1c706b6b0b9f": {
"x": 476,
"y": 541
},
"589a2abe-2ffb-4fc2-829d-71f483f1fd91": {
"x": 561,
"y": 615
},
"74876f91-7749-4fb8-82bb-ed19c3f81084": {
"x": 655,
"y": 599
},
"ba72b88c-a7a6-4604-84d6-0e8ec07b1f31": {
"x": -152,
"y": 319
},
"dc5afc40-a2f0-4e8c-b3a5-7ece1a6d7493": {
"x": 186,
"y": -802
},
"d71090c4-ec9c-43da-ac60-9b92d7132318": {
"x": 42,
"y": -844
},
"8389c49a-f872-42eb-a953-be96df761462": {
"x": 122,
"y": -833
},
"6ff7cf23-6fde-479c-a792-8c335ee257bb": {
"x": -48,
"y": -846
},
"74387ce7-d4c4-4c2c-94cb-22a25c6095b5": {
"x": -162,
"y": -827
},
"94941b83-b792-4a78-95dc-4814df0121df": {
"x": -218,
"y": -793
},
"b18e8849-a3f2-4e15-89b0-83c7f27eb950": {
"x": -264,
"y": -755
},
"9f7ddc28-817f-4ce8-9d3b-1cb131cf62b0": {
"x": -259,
"y": -709
},
"0c62c43c-e48f-465c-b4eb-1742b9a22498": {
"x": -369,
"y": -732
},
"e71e3fa5-ff52-41ad-a475-f416a4cc78d7": {
"x": -504,
"y": -700
},
"0954e209-97d9-4802-bf9b-5ca9d5cc4df0": {
"x": -476,
"y": -625
},
"89276d7f-23e1-4baa-b068-ad9102bf044f": {
"x": -495,
"y": -575
},
"ee24aefe-121d-4e10-b407-800b2c4b8722": {
"x": -461,
"y": -515
},
"11702588-c093-4ed0-8c72-d2a95cfc9b64": {
"x": -413,
"y": -444
},
"12d22eb5-1b41-41af-9174-694979e286c7": {
"x": 974,
"y": -146
},
"a0c00f30-fb04-4994-b552-c07f2911c3ea": {
"x": 969,
"y": -60
},
"f4cc3614-6ac1-4bf9-95b0-bdd2b1212bf5": {
"x": 940,
"y": -28
},
"b73b699d-fedc-4a2c-b040-0a0cd2c48cbb": {
"x": 925,
"y": 11
},
"7220dfb8-1341-4563-9350-62c02e308504": {
"x": 916,
"y": 48
},
"36e12601-fdc8-48d7-b683-1f44acc22b52": {
"x": 877,
"y": 82
},
"70c74950-128d-4b81-b097-baa5fe72c911": {
"x": 982,
"y": -102
},
"ae08415f-8645-4897-9b72-9c556f7f77a6": {
"x": 876,
"y": -260
},
"b16a7c2b-6e79-48e9-9c07-0ee8277bd985": {
"x": 865,
"y": -304
},
"b2b885fd-967b-4b8a-b363-1e4e26438b58": {
"x": 443,
"y": 252
},
"24fa7c02-7ae6-4f8d-b604-8b770d52e6e2": {
"x": 643,
"y": 288
},
"181a5673-5094-4ed9-a92e-b00f7a1e5d67": {
"x": 860,
"y": 212
},
"378535e2-4152-4846-bf1b-64939b60ce57": {
"x": 766,
"y": 258
},
"92f5e9e8-113e-46df-8d50-377b97c2202e": {
"x": 534,
"y": 250
},
"e8089492-a696-4fe3-a08f-28ef0546481a": {
"x": 910,
"y": 163
},
"1e8f06f9-7ca4-403c-b02a-2e9d44b5b742": {
"x": 1204,
"y": -228
},
"7ed7520c-a919-4491-a3f7-e938b720dee0": {
"x": 1261,
"y": -191
},
"87635a54-47c4-4545-a046-748607e0c9e9": {
"x": 1287,
"y": -152
},
"1e8924bb-6643-41ba-b984-432df4ae7666": {
"x": 1281,
"y": -93
},
"8bd70820-3000-4e4b-87c0-526defe0b9be": {
"x": 1268,
"y": -54
},
"655da9af-5443-4474-98b9-dc6a24a6409b": {
"x": 1244,
"y": -1
},
"dbab0099-8783-446e-8d63-38c38f182d41": {
"x": 353,
"y": -893
},
"5fab1d6f-3c6f-4dd4-84bc-32ad6584c460": {
"x": 435,
"y": -889
},
"f23190f0-47db-4d5d-886f-70811d49b8e0": {
"x": 496,
"y": -842
},
"396a8336-712a-4161-a278-6241b892a5fb": {
"x": 600,
"y": -859
},
"1d752dfe-2f16-41cf-aa1f-b1d7c4096aad": {
"x": 655,
"y": -828
},
"b21049bd-2d46-43e4-9063-dfb7f005548d": {
"x": 118,
"y": -929
},
"275bfb0b-9c1e-4db1-9cdb-00fc8a56106a": {
"x": 213,
"y": -945
},
"f104a410-2e9f-4d0b-870e-b86acdf6d125": {
"x": 324,
"y": -931
},
"e07d7f22-415c-41ab-b9a3-03699d0858ad": {
"x": 67,
"y": -902
},
"fdbf2d53-f643-47e7-a8eb-65ea22c79981": {
"x": -22,
"y": -903
},
"26ef241e-5d2f-4058-80d0-71841c0435db": {
"x": -238,
"y": -961
},
"c5bb7c2f-4cda-49ae-bfae-34db5abb77c2": {
"x": -201,
"y": -1019
},
"ec381dbe-91b0-4434-81ea-8bd3bb524090": {
"x": -144,
"y": -1065
},
"0d36f8f7-b095-41eb-886e-fe861f3246b4": {
"x": -75,
"y": -1090
},
"2dce3361-d80f-4bda-ba0d-6d9b2289d512": {
"x": -3,
"y": -1089
},
"a9cac01e-f7f9-4bc8-9473-2ff776db3222": {
"x": 76,
"y": -1049
},
"30d9d9e9-2d3f-4f66-8486-cbd77021a28b": {
"x": -267,
"y": 443
},
"966ee677-e0a0-490c-af78-0c6d85138903": {
"x": 91,
"y": 342
},
"02ba8202-7faf-4777-9932-edb597745f10": {
"x": -74,
"y": 464
},
"c895cf4b-e76a-48f2-9b3b-9c3a6c1aeb06": {
"x": 85,
"y": 501
},
"08ac742b-c633-41ef-85d9-b4865a942084": {
"x": 22,
"y": 533
},
"f629f334-f97d-4e54-95d4-00527e99b2f6": {
"x": 171,
"y": 432
},
"dca9dc88-681c-4b21-adb1-74289955f5c4": {
"x": -528,
"y": 509
},
"aef55690-d2e4-4115-9180-1a64a4566b46": {
"x": -496,
"y": 596
},
"d2becda5-0a79-4b07-859a-a3a13448539e": {
"x": -318,
"y": 652
},
"ac1df4ab-416b-471a-8c54-3f96dcb8e7e9": {
"x": -188,
"y": 661
},
"21524813-0014-4997-9a48-09de7ce21f3e": {
"x": -81,
"y": 630
},
"82bbde7e-87c5-4059-99e9-e29f597af548": {
"x": -583,
"y": 405
},
"039fb843-7559-4d53-aace-afd61e4beaeb": {
"x": -507,
"y": 730
},
"9df58011-60ae-4b6c-ae4c-a535c06d5ec0": {
"x": -469,
"y": 770
},
"d8ac697b-03d0-4551-a94d-9713eb369e1c": {
"x": -312,
"y": 781
},
"d3a27a4d-7968-4a17-9771-00cc638bcdd9": {
"x": -233,
"y": 844
},
"0c5d7458-1b12-4216-984d-1091c57b487a": {
"x": 42,
"y": 820
},
"1cd00c61-fdc3-4b45-9448-a93bcf1c4f33": {
"x": -77,
"y": 866
},
"9adbe235-a390-48cb-a519-46918f39c724": {
"x": 22,
"y": 760
},
"ea279b5d-3559-4163-9484-e44b76ae7bce": {
"x": 91,
"y": 647
},
"77ef674a-2bc3-4fe2-a7fe-ae3bd3da58c0": {
"x": 72,
"y": 608
},
"5fa0ee1c-59c3-4739-b31e-814f6a28eb5a": {
"x": 759,
"y": 381
},
"e3806867-477d-4f43-b4bb-1ef4a97da7b3": {
"x": 772,
"y": 420
},
"3d8d4c89-4b55-4a73-b7b0-9063a37a36c1": {
"x": 724,
"y": 492
},
"cc15c76f-0e24-48a1-8647-be4eb02aa190": {
"x": 741,
"y": 331
},
"d879b567-6bac-459d-b34f-ac5d011d978b": {
"x": 682,
"y": 538
},
"883d0f50-72d5-47de-bf4e-284326562948": {
"x": 799,
"y": 601
},
"54d48d90-5a7d-4074-8b45-1dfd22ccf315": {
"x": 846,
"y": 464
},
"dcf0677d-09bc-4438-8ecc-1a1019f4c178": {
"x": 689,
"y": 700
},
"efeaba4c-b56e-4ca8-a831-e3566f3024a6": {
"x": 900,
"y": 329
},
"3f930d45-923d-48f0-8378-27d3b7684903": {
"x": 235,
"y": -86
},
"3ca19ffc-4f2e-435e-b4dd-1be6d57be8bf": {
"x": 8,
"y": 110
},
"d749c637-4282-440b-8b55-8841b221f49c": {
"x": -659,
"y": 41
},
"15071999-9875-486f-a499-dcd70c0690f7": {
"x": -745,
"y": 137
},
"e997b106-422b-430c-9e0a-2a56d58a783d": {
"x": -693,
"y": 173
}
}
{
"originalVersion": "0.17.8+10010",
"dataStructureState": "0.11.0",
"showWelcomeMessage": false
}
{
"tiddlers": {
"$:/plugins/felixhayashi/topstoryview/config.js": {
"title": "$:/plugins/felixhayashi/topstoryview/config.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/topstoryview/config.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.config={classNames:{storyRiver:\"tc-story-river\",backDrop:\"story-backdrop\",tiddlerFrame:\"tc-tiddler-frame\",tiddlerTitle:\"tc-title\"},references:{userConfig:\"$:/config/topStoryView\",focussedTiddlerStore:\"$:/temp/focussedTiddler\",refreshTrigger:\"$:/temp/focussedTiddler/refresh\"},checkbackTime:$tw.utils.getAnimationDuration()}})();",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/topstoryview/layout": {
"text": "html .tc-story-river:after {\n content: \"\";\n display: block; }\n",
"title": "$:/plugins/felixhayashi/topstoryview/layout",
"type": "text/vnd.tiddlywiki",
"tags": [
"$:/tags/Stylesheet"
]
},
"$:/plugins/felixhayashi/topstoryview/Configuration": {
"title": "$:/plugins/felixhayashi/topstoryview/Configuration",
"text": "Please see the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information on the options.\n\nSave and reload the wiki to activate changes.\n\n<table>\n <tr>\n <th align=\"left\">Scroll offset:</th>\n <td><$edit-text tiddler=\"$:/config/topStoryView\" field=\"scroll-offset\" tag=\"input\" default=\"150px\" /></td>\n </tr>\n</table>"
},
"$:/plugins/felixhayashi/topstoryview/License": {
"title": "$:/plugins/felixhayashi/topstoryview/License",
"text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-TopStoryView/blob/master/LICENSE"
},
"$:/plugins/felixhayashi/topstoryview/Readme": {
"title": "$:/plugins/felixhayashi/topstoryview/Readme",
"text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information."
},
"$:/plugins/felixhayashi/topstoryview/top.js": {
"title": "$:/plugins/felixhayashi/topstoryview/top.js",
"text": "/*\\\ntitle: $:/plugins/felixhayashi/topstoryview/top.js\ntype: application/javascript\nmodule-type: storyview\n\nViews the story as a linear sequence\n\n@preserve\n\n\\*/\n(function(){\"use strict\";var t=require(\"$:/plugins/felixhayashi/topstoryview/config.js\").config;var e=\"cubic-bezier(0.645, 0.045, 0.355, 1)\";var i=function(e){this.listWidget=e;this.pageScroller=new $tw.utils.PageScroller;this.pageScroller.scrollIntoView=this.scrollIntoView;this.pageScroller.storyRiverDomNode=document.getElementsByClassName(t.classNames.storyRiver)[0];var i=$tw.wiki.getTiddler(t.references.userConfig);var o=i?i.fields:{};$tw.hooks.addHook(\"th-opening-default-tiddlers-list\",this.hookOpenDefaultTiddlers);var r=parseInt(o[\"scroll-offset\"]);this.pageScroller.scrollOffset=isNaN(r)?71:r;this.recalculateBottomSpace()};i.prototype.refreshStart=function(t,e){};i.prototype.refreshEnd=function(t,e){};i.prototype.hookOpenDefaultTiddlers=function(t){return t};i.prototype.navigateTo=function(t){var e=this.listWidget.findListItem(0,t.title);if(e===undefined)return;var i=this.listWidget.children[e];var o=i.findFirstDomNode();if(!(o instanceof Element))return;this.pageScroller.scrollIntoView(o)};i.prototype.insert=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element))return;this.startInsertAnimation(e,function(){this.recalculateBottomSpace()}.bind(this))};i.prototype.remove=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element)){t.removeChildDomNodes();return}var i=this.getLastFrame()===e;this.startRemoveAnimation(t,e,function(){t.removeChildDomNodes();this.recalculateBottomSpace();if(i){this.pageScroller.scrollIntoView(this.getLastFrame())}}.bind(this))};i.prototype.getLastFrame=function(){var t=this.listWidget.children[this.listWidget.children.length-1];return t?t.findFirstDomNode():null};i.prototype.recalculateBottomSpace=function(){var t=this.pageScroller.storyRiverDomNode;if(this.getLastFrame()){var e=this.getLastFrame().getBoundingClientRect();var i=window.innerHeight;if(e.height<i){t.style[\"paddingBottom\"]=i-e.height+\"px\";return}}t.style[\"paddingBottom\"]=\"\"};i.prototype.scrollIntoView=function(t){if(this.preventNextScrollAttempt){this.preventNextScrollAttempt=false}if(!t)return;var e=$tw.utils.getAnimationDuration();this.cancelScroll();this.startTime=Date.now();var i=$tw.utils.getScrollPosition();var o=t.getBoundingClientRect(),r={left:o.left+i.x,top:o.top+i.y,width:o.width,height:o.height};var n=function(t,e,i,o){if(t<=i){return t}else if(e<o&&i<t+e-o){return t+e-o}else if(i<t){return t}else{return i}},s=n(r.left,r.width,i.x,window.innerWidth),a=r.top-this.scrollOffset;if(s!==i.x||a!==i.y){var l=this,c;c=function(){var t;if(e<=0){t=1}else{t=(Date.now()-l.startTime)/e}if(t>=1){l.cancelScroll();t=1}t=$tw.utils.slowInSlowOut(t);window.scrollTo(i.x+(s-i.x)*t,i.y+(a-i.y)*t);if(t<1){l.idRequestFrame=l.requestAnimationFrame.call(window,c)}};c()}};i.prototype.startInsertAnimation=function(t,i){var o=$tw.utils.getAnimationDuration();var r=window.getComputedStyle(t),n=parseInt(r.marginBottom,10),s=parseInt(r.marginTop,10),a=t.offsetHeight+s;setTimeout((function(){$tw.utils.setStyle(t,[{transition:\"none\"},{marginBottom:\"\"}]);i()}),o);$tw.utils.setStyle(t,[{transition:\"none\"},{marginBottom:-a+\"px\"},{opacity:\"0.0\"}]);$tw.utils.forceLayout(t);$tw.utils.setStyle(t,[{transition:\"opacity \"+o+\"ms \"+e+\", \"+\"margin-bottom \"+o+\"ms \"+e},{marginBottom:n+\"px\"},{opacity:\"1.0\"}])};i.prototype.startRemoveAnimation=function(t,i,o){var r=$tw.utils.getAnimationDuration();var n=i.offsetWidth,s=window.getComputedStyle(i),a=parseInt(s.marginBottom,10),l=parseInt(s.marginTop,10),c=i.offsetHeight+l;setTimeout(o,r);$tw.utils.setStyle(i,[{transition:\"none\"},{transform:\"translateX(0px)\"},{marginBottom:a+\"px\"},{opacity:\"1.0\"}]);$tw.utils.forceLayout(i);$tw.utils.setStyle(i,[{transition:$tw.utils.roundTripPropertyName(\"transform\")+\" \"+r+\"ms \"+e+\", \"+\"opacity \"+r+\"ms \"+e+\", \"+\"margin-bottom \"+r+\"ms \"+e},{transform:\"translateX(-\"+n+\"px)\"},{marginBottom:-c+\"px\"},{opacity:\"0.0\"}])};exports.top=i})();",
"type": "application/javascript",
"module-type": "storyview"
}
}
}
{
"tiddlers": {
"$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNjo0NTowOCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTY6NDU6MDgrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjBmYzFjNjhhLTcwZTYtMGY0Ni05ZDk4LWFhNDVjNjYxYThjODwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpiYzZmYmUxNi1mOTBkLWI1NDQtODUzOC05MjFkNjBiZjU0ZWI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTY6NDU6MDgrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjBmYzFjNjhhLTcwZTYtMGY0Ni05ZDk4LWFhNDVjNjYxYThjODwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNjo0NTowOCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmJjNmZiZTE2LWY5MGQtYjU0NC04NTM4LTkyMWQ2MGJmNTRlYjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz450LuoAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAATUSURBVHjajJZtTJVlGMd/13U/z+F4sBQOCiovZiMt8YiKZrMtypdh09StbLOtzA1RUmuTkppzIilJOB0Oa21tbaV+6UP5Mlnm5heVkfhyQJ1ONITAkAMqcTDonNOHA6g9qF3b/eF5/vf18r/u676uWwoLC3G73QCoKiICgIhQeGejVw3LMOTIP0xGdRQAFi1E9DyGSkLsKxtWEmAQuXfvHrJlyxZiYmIQkQHjeac/jjfKBsJ8YlnRzQKIgBoIh8ByaRSICAilRCjdk1UeAIhEIogIPT09SFFRER6PZ4DByqr1+WpRoYAquKYuqCPz9SZeeCVA4vggAC2XPVw54eXi0WTOH8yIslIIs+bryTsq+hl0d3cjxcXFuN1uVJVVp9dvEigSwP3iYj9vfV7L6IldPE5uXvZwcKuPsz/7+qLc/I1vexFAMBjEzJ49G9u2WV1TsEaVUhOBmJxVVeR9X8NTI3t5kgxN6GXakia67/bSeC4ZkexprccCZxLnVodCIRRgdU1BgsBuBVzz8qt49yv/oMb2f5TJd7kzBsXeLPHzal4VaiAmZnfupY0JIoKqKqoUGAHX9MV+llf4HxmtMaDyaDZLtvqZushPWEHsAlVFP/3rswSNsEEt4O0v/E9MCebx8PxCP5YNlr3hg7+/TFBEl6mClflGHUl9VdIvGycuJdDgvm/bAtu6j3c0uSmZufQhnRHPBsnIqcOyQGSZAjlEgCkLGh3RDHk6yJWTCQCUZi+gav8Mzh3KpGzeQgCuV3sZEhd06D2f3QgCas9XIuozCjw3q92xMXF8O8218QDM/fAMGLAsmLO2Jnof6rwkpjv10rLaURtEJimWJomtMDLdGUlyRhuBei8AU5Y0M2ZCMyPSW8hc2AxAW4OXUeOdbcKbFsQ2YKwkizCg1uAH9kxWOzU/+ga+X8s/Q/iBKur4w8tL79c69ESiTFXFQvQmyhhu1XsYNeHhW5s2o4OuwDB6ug2uISF8fZED9HQbgh1PM3Zah8PB7UYPGBBalDB+MFB/Kt6x0e0JMSzpDr9XxzmwprNxDB95F9eQkANrrI3HssFQq4hWAnDxaMqgaUoYF6DJ73X8b74Qz/C0Qds016tSUANqVypG92EMnD+SwZ9XPc5KSg/QWu900HotgRHjnA5uN3m4diojmiKzV3cNL25DdTvGwJESn0NhzMR2Ohqc6etoiidpgrNET3zrix6yKf3Bld8WLZ8IZcAG6ip9/LQpyOIt91vG2BltHCwezbbpKzEKYoFodKVO+fUh48f3+Lh20oexIBQqExFk586dxMbGkntp41rELscozFpRxaLN/6Mv/cf4hcMzCYdAzboDKXm7Ozs7MTk5ObhcLs4lzqmeeus4GCublgvJtF61Sc1qxR0beqzh7g4Xx3ZN5/KxaagCsvlASl4pQG9vb5TB0KFDibZtZfmlonxcVgVhAcuGjJxa0l9uImVKO3GpXahA4EYsjbXx3PgtmYbTk1CiKYM1h1LzKvrncmdnJ1JeXo7b7cYYQ9+A4L2r21IJR9ZhXOuxXGAZBvKv/Uui8wELVHYgUn44bdWNfmKRSIRgMIiUlJQQGxs78Krof7oYY8jt2TUCy3oH0XmI+MAejW0gYpoxxg/mF4zu3a8rbvXrPuigq6uLfwcA6IKAIsDf9kIAAAAASUVORK5CYII="
},
"$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0YjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo2OWVmYWE1NS01ZTI5LTIzNGUtYTUzMy0xNDkxYjM1NDNmYmE8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0Yjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjY5ZWZhYTU1LTVlMjktMjM0ZS1hNTMzLTE0OTFiMzU0M2ZiYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5WKqp9AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYXSURBVHjafFZtUFTXGX7e9z27sveuMCwYV8ElrA7YSFYHtJUPkaaI0aRqG8wP00zUzljDINNSA/2ROtpO24SxnahlxjYd7SSjmUkymcxYlDhQPzHGisEVp8HwYWCVVVgEsrsuLnL74+5uqTF9Z+7cO/d8PO95zvO851BlZSV0XQcAMDOYGQBARDhX3JRmMDYZwLPMWAzGHACYIgwS46oBNBNwtOL8CwE8EkSEUCgE2rJlC2w2G4go8Zwo/bMDgnoG6gxLfAAAYvPDMCCszKTAMIAGAhrWnf15AAAMwwARIRKJgDZv3gy73Q4iAjPjxIr9VVOMRhbAYKB8zvrO0llrfEsdKwLZek6YAPSFvtSu3GtLawu0ZJ6625SHGBQB1T88t6MxvopgMAjaunUrdF0HM+P4yv27DMYeJmB1RqW3Jnf3tQX2p0L4P9EXuqEd7PmDp+XuMU9sRbvXnnt1TxxACgoKYLVacbzsQDUJGkSATe6qi28uPtzusM6Kxie6NHLGUX3lxVUNX9StPHnn4wy3njuUYcu6n2pNi66avcEXnByP/nv8aiaIyrqz2gO5A9+9FI1GIfn5+WhZdTAdjFMkwMvZOy7uWnTAOz3L4Yk71m3t69fdfTDoUGTBeHTUfiHQ6lo7Z2OXJvpDAChKe+aOCdKRKWxZ2+1qb3yyd3GYmRkQ7GQBVs99wfv6on3eR2k4PdTkDEbH7IuS8/svld/561PJS/pDk1/bzwx94pze7xc5v/H+YPY6r5BAkdrJzODTK46lE6PeYEJt7u+8j+OZwCBiEAgAoNgKJoEQf6PvNvdrXgtZoNhSf7q0KZ3B2AQmVMze0Jmt54S/DcDCVig2NcvEUGxJAE4Pl+YOr0iv6BRSIPAmBeBZAmHlE2sH4p1uhrq1s0MnnEQMBsf8wRASAICQQCCITN1X7/sOuc0kgOVp3/fPs2WHv+coG7gQOJUnLGsUCTxEjPzUohEA+NfIWUdtx0+efzA1kSSkIGyBAQNCKgHAEBAJ3u79U7kiAcWoem/gb5Fd33nrH3kp+SMWtuAB+GllMJxMjCx9QRgA3uiqL5kwHiTlpxb3smlfMDGYGPP1hcMAkJvs8ScpfdJspdj+MK6Pf+5+u29vyb4lR4+BGEziVESAkEpw6Av1OhUpHCz4qOXbzFWz4Ncdj/v/o08Lt92ODDgZDCEFJYoUGH4mzugP92puPTf0pD3H7wvfdFZdqSxnMtWjoGAAmG9fOLxjwesdjT2/XzIQ7ks3sycYMSEwGHNtWf5bkX5NkYCJBxUBXiGV0XHvosOt54Zey33j/K+8P33++vjnbiGJbbLE+J9SANAb6nJ2B79wcUwETAwQQ7fMjPzMvfP8ja87HUIKMOiaAqMZhrGmLdAy78eZrwwsTS0eObTs+IdtgVanxBUExqGbb5VzrIISGIoUXsmqbgEhJldCQWqRf27SvPAn/o8XmgLhZsUkR4ll37mhk3n94Z4OlzY/7NLcYZfm7o1z2zT4vsvUNSXqprBCkmiTFbPX90/fh8GIT2sf+zTPdDMf4dVnNg4z+E0ixsGeBs9jd5ViSgLHjCb/peaR+MD3d4/ZJg2llyuG2Vwy7QWAs8PNnn1f7vkGSGxAzE6mk+kxkx/p/4unffSCR0hAoL1EBCYiPNdWNcwkNQTCR7feWX6g+7f/A7I8rcw/U6UEe0Ndrhc/W7mtL9ztmqlSgstSS/zTJ28dalpOpkRryrwbhwBACgsLMWPGDOT4ll3qyeqAkJTdCF7P/CrUY/GkLL1rE+2hTbSH8+0Lb/WEuhzhyaA905blf9Vd/895WnZwLHrPevir/cvOB1oLYpTtLrm6oYGIMDExAaqtrUVKSgqYGSKCk0WHq5ikkWEWtNL0imv5qUW+RclLRjJsrhBAuH1/QL8R7HR4xy5nescuP23E6hOA6mLv+sb4uTw6Ogqqq6uDpmkQkcStorX4XRcM1FjZ+kvFFjCJKU1WpkNJJUqIMtX1RyLeX3JtQ0JRhmGYZ/L27duRnJycuFGISOJ9pqh5lrB6iYgqGOxRrOaa54DcZmKvkJxk8JHC9rKh+KVhOsD4+Dj+MwADIf8n5m4xGwAAAABJRU5ErkJggg=="
},
"$:/plugins/felixhayashi/vis/img/network/backIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/backIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpmOWQ3OGY4ZC1lNzY0LTc1NDgtODZiNy1iNmQ1OGMzZDg2OTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmY5ZDc4ZjhkLWU3NjQtNzU0OC04NmI3LWI2ZDU4YzNkODY5Nzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4jq1U/AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAVTSURBVHjanFVfTFNnFP+d77ve8qeVFbBrpcVgRrCRFikFByLxwSAaE32oRCHD6JMxxhhn8G2RxxH3MsOTbyYsmCAxPMmMMYtkIUYmK60OO0qAK23BFlNob0uh3x7WS5jLZPpLbm6+k/P9zrm5v9855PF4UFhYCABgjIExBgAgIqRSqRIi6gDQRkQ1RGTB3wgR0e8AHgH4Sa/XR/EBiAiJRAJ04cIF5Ofng4g2n0gkUkxENwF0c843LzHGQEQQQkCLExEA9ALotVgsUQAQQmgNQhJCbF5kjCEUCl0moj4t5na7fTU1NUpVVVXUYrEkASAcDhe8efOmxOfzWScmJqoBdBNR99LS0hWz2dynNSSEAF28eBGFhYVgjCEcDn9HRD1EhIMHD3o9Hs9kWVlZAh9BKBQqGB4edr58+dKZ+6JbJpOpBwBWV1fB6+rqIMsyIpHIFcZYL2MMra2tY5cuXRrfuXNnBtvAYDBk3G63oqpqZm5uzgrgSDKZjBoMhueZTAbc5XIhFouVEtFTxhiOHTs2dv78eS8+Efv374+oqpqZnZ21cs5PJJPJPlmWkyynnBuMMTQ0NHi7uro+mVyDx+Pxulwu71ZOlkqlSonoJhGhvb39s8k1nDx50ss5hyRJN9PpdKlERB2aWjSVaEilUvzBgwcORVEs5eXloXPnzk1sV8BkMiUdDofP7/dXZ7PZDilnIhw4cGBeS1pbW2P37t1zBwKBikQiUUREWFhYsHHO0d7evm0Ru90+/+rVq2rO+XGJiJxEhMrKyhgAjI6OWoeHh5tWVla+4JzDZrO9bW5unhwcHGzz+/32np4e+xaDbfoHAMxmc6ijo2O0oqIiJkkSNjY2HBIRmRljMJvNyWfPnln7+/tPMMZQXl6+0NbW9qK2tjYcj8floaEhqKpq+HCkbD3PzMwYBgYG0NXV9UuusFna2kEgELAQEQ4dOvSis7PzN41Ar9dnrl27NqCNkv/C3bt3zy4tLVmICJxzEBFJRBQmorLFxcWCqqqq0Pj4eO3Y2JhbUZTdra2tL2pra8OJRGLHnTt3zkqS9K+huHU4EhHMZnMoGo0W5OIh7nK5jjLGKq1W69vDhw8rRqMxMjc3t2t5eXnX5ORklc/nM+fl5SWnpqa+0uv1K/n5+Ws6nW5NluXNd15e3ppOp1uz2WyzZ86cGQ0Gg6ZAIFCZzWZ/lYjokRDiuN/vt7W0tMw3NTUpbrd78P79++5gMFgRiUTKHj58WMYYQ3V19etTp05tq6Lp6Wkb5xxCiEfc7XZPM8a6FxcXTfX19a/1en2Gcy5qamreNjY2/qGq6joRZe12+9Tp06e3JY/FYgWPHz8+mhvr3/CWlpbk+vp6PmOseWVlBS6XS9GSJUkSdrs93NDQ8Oe+ffvC/8fJIyMjddFo9Esi6pVleVjT2m0A8Hq9zqGhIefnjoknT544A4GAM/eDbxMReFNTE0pKSpKqqsaI6Pj8/LxVVdWM3W6PfCr5xMTE1zllXS0uLn6aSqXAGxsbodPpoNfrn6uqCs75EUVRrJFIZMfevXsXdTrdxseIE4mEPDIyUu/3++tynd8yGo29RIR0Og26fv06ioqKwBgD5xzv3r27zBjrIyJIkgSHwzFZWVmp7NmzJ1ZaWpoAgGg0WqgoSvHMzIw1GAw6tvjhitFo7NPW5fv370Hd3d0oKCgA53zTQMvLy+VCiKuSJH0rSdLmztZytIWv5RPRD0T0Y3Fx8dzWfby6ugopHo//w4mcc8iyPMc5v5FOp7/PZrOdQohWInIC2C2EgBBigYi8Qoifs9lsv06nWyIiaFxagXg8jr8GAGxuIe7LBeWhAAAAAElFTkSuQmCC"
},
"$:/plugins/felixhayashi/vis/img/network/connectIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/connectIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3ZWRhMjI0MC0yYTQxLTNlNDQtYWM2My1iNzNiYTE5OWI3Y2E8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjdlZGEyMjQwLTJhNDEtM2U0NC1hYzYzLWI3M2JhMTk5YjdjYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ubxs+AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAUtSURBVHjajJZ/bNT1Gcdfz/P53PV6B4W7VltLqdAaplIOiMOoyxxJCSs/Gv/yB4gzJroAosmmDklwkYWR0bQsdmkykoojTpcsWYLxD/lRZdMQkTHRtkLZRqG0tIVe7662vTu43n32x/VKZ/jh89cn38/zvN7P5/l88zwf2blzJz6fDwARQUSm1n8s31CM0/VAnbNmsUPuAsDpgEO+Bg4C7//iyv5hvmMiQiqVQpqamvB6vVNwEeG1JZtCBrYi/MrkAwDNgjhwAlbzICBLA0rDb0+/839C6XQaaWxspLCw8Dp86cbNmqVFJQddE6KzdjZ9D89g+B6fSyCOcyn1nxil+O9xKg5HqWFSHGXLjrP7W/ICqVQK2bNnDz6fDxFh65KNvxbHDhF4rJj2bXPo+IGfcW5h5xL4f99P+FCEMIAob75x9t0dAMlkElNXV4e1lteXbNqiQoMaeOFOjrdU868SD2luYyEP6dUh+sYmSHeOU6GO5Z8VLx5+NNZxIpPJ5AS2L3upROCoCvz8Lo7vnkf77cAHhpiz/zIL9vWz8L8p/NvupmM0Q7pjnAoLqz8tDrc8MnQqYVUVhVdF4LEg7b+rvDn8wDDlH0WoPpukLJImSBaMwjcJqmwWts2jPZLG/8kwYVFeVdXXZcFf4yVDc2cNKfBFmD9X+0ncCP58F48eG+Feo2CAUkvs4dl0V/uJvdXLiiV+ut++n7YLSfxPfMMG54ChzB3WIesVWB2i82bw1AR6fJR7C4VsfYiv6u/k3A9nEgP4zXke8DiYHyAOMK+QxPIgnZ9GqSHr1itQJ8DK2fTerDQ+S/bHRXQJaHSCwNIZ2Xh+7+S3VAmwNMBA/tuPZtErgKquUmdMWIFlRURvdamRNEXGwIWrlP47pTMzLiunxghGMwTLvcTWlHAp77s4QNSrYMQtss6ZMgWqCm5cHoDHO1nbk6K8zEN8+3zatv2Hn1b59EqJZdxmYUERg9P9KwpIiAOTdWUWBXuLzB/vZG3P1Un4PNp2d1MbmyD45TWCxuCsQm0x56bHGHFYEZwxok7toAA9Sfw3hCcoL/NOwi9QO5wmWO1j4JEgZxTkodmcWRGkf3pcX0r8xoAaBixKu4U5/xwndM+0tpAvS6mP+PZK2nb1UBvPEKwKMLDvPj4ESGc55lGy303sdJKQdZB2rkMdctAB/4gzN+/Q2ENNd4LyUi/xN+bTtquX2thk5nk4wI3gAF+OMNcA1nFQDfK+BY5GqbkwWabTY5QZhXWlnNx1ntrY1Rz87fuvw29m/Sn8J+PUGAFj5T19baA1IspuBZp7cx1x4SwG1cEf+lgRSROs8jGwb+Ht4QB/GSSsAhYano39LWIBxNEIbP14hPDuiyS2VtJuHXQlKKvxM/jiXDq/D/xPlwifGMkJZB2NIoKpr69nxeiZxLHicFSFVWfGqBidIP3LSjrWltD94CyufF/4kQgPuVz2Lz93+dDRa9eu5QQ8Hg8/iXee+Dy4CKMs7xqn4nwKz9IirhQqmVuB42m8ey+x7LMoD6iAON782eChhqmRuXfvXgKBAKqKqtI0/8nNKrQI4BVYXkzHgzPpC88gWuHL/caXrhLoGiN0apSKr0ZZRBZM7q2w5ZnLR1oAnHOMjY0hra2tFBQUYIyZmstvVT1Z6eDlAuEVq7merxmwueNPDXy9PvybjKP5mctHLk4/XTKZRJqbm/H7/VNw1VyEMYbW4FN3WNWnnchKoy5sHeVGBRX6VWi3ymFx7r11Ix8MTX/y5C2RSPC/AQB61erowbpqSwAAAABJRU5ErkJggg=="
},
"$:/plugins/felixhayashi/vis/img/network/cross.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/cross.png",
"type": "image/png",
"text": "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/GMzLdsAADvGaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0wMi0xNFQxMjowNToxNyswMTowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo5ODJjNjBiMC1lM2YzLTA5NDAtODI1NC0xYmU5YjVhNGUxODM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjIxODYxNmM2LTM1MWMtNDI0OS04YWFkLWJkZDQ2ZTczNWE0NDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0xNFQxMTo1NTozNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjc8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+NzwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSJ3Ij8+cZUZMwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAA2ElEQVR42gDLADT/AS0tLUQFBQUVFxcXtPHx8fPl5eUNCAgITCkpKesEHx8fGgYGBjH+/v4a+Pj4qgQEBFU6OjodMTExzwQUFBSvEBAQEfX19SD19fVqNDQ0CElJSd/9/f2vAwEBAfrn5+fkBwcHLRYWFgsXFxfz29vbo9LS0uwDDQ0NDfPz81orKysXIyMj+ODg4Avh4eEa/f391gMkJCRYPz8/KUhISOMCAgKh8fHxHRsbGx4UFBQQBDk5OeY7Ozv7CAgItPb29vMEBASaJSUlTQ0NDesDAEwpT0Ko8Ri2AAAAAElFTkSuQmCC"
},
"$:/plugins/felixhayashi/vis/img/network/cross2.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/cross2.png",
"type": "image/png",
"text": "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/GMzLdsAADoRaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTQtMDItMTRUMTE6NTY6MTUrMDE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTAyLTE0VDExOjU2OjE1KzAxOjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0wMi0xNFQxMTo1NjoxNSswMTowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6OWIwNjRhODctYWNlZi1jMjQ5LTg5MWUtNDAxOTVmMWJjMTNkPC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjlmYTI2M2QyLTljOWMtNWY0OC1iYjNiLThmYmQ5NmI5ZTBhMjwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjlmYTI2M2QyLTljOWMtNWY0OC1iYjNiLThmYmQ5NmI5ZTBhMjwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo5ZmEyNjNkMi05YzljLTVmNDgtYmIzYi04ZmJkOTZiOWUwYTI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMTRUMTE6NTY6MTUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjliMDY0YTg3LWFjZWYtYzI0OS04OTFlLTQwMTk1ZjFiYzEzZDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0xNFQxMTo1NjoxNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8cGhvdG9zaG9wOklDQ1Byb2ZpbGU+c1JHQiBJRUM2MTk2Ni0yLjE8L3Bob3Rvc2hvcDpJQ0NQcm9maWxlPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj41PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjU8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PvQ0yV0AAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAHZJREFUeNoAaQCW/wE1NTWrERER3+3t7Xbp6emKOTk5IgQtLS3kBAQEdfLy8ipOTk5LQ0NDkAE0NDQAEhISxiEhITkTExPH9PT0OgMGBgaPMzMzVS8vL7XU1NRC7+/vEQNfX19lUFBQtfPz82EEBAQMNTU1HwMAMI4nIAoe9RQAAAAASUVORK5CYII="
},
"$:/plugins/felixhayashi/vis/img/network/deleteIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/deleteIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDowNmE3NWYwMy04MDdhLWUzNGYtYjk1Zi1jZGU2MjM0Mzg4OGY8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjA2YTc1ZjAzLTgwN2EtZTM0Zi1iOTVmLWNkZTYyMzQzODg4Zjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4aYJzYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYGSURBVHjalJZ7UJTnFcZ/73m/72PdJY1RbhoQp6lkXRAvmIYxdCUadLVOozPNtGObap1JsKipjiShbdoRbeKEiQHpQK3xj0xa03aamTbaTGyAYV1QGeqFi+JyiZFLAlmESBkWRmS3fyzslGkmnZ5/v/M873Oe75zzvqqoqAibzQaAiKCUAkApRdHIK/NFsx2NR91nOSILADDoJyzNaM4xxbtvPHh0iC+JiYkJ1OHDh4mJiUEpFSXPv/ziPC28TIiXDCOSrAClQDSEpsCwJPIhrEBRQpiSytXlQwDhcBilFPfu3UMVFxdjt9ujFTzfcLBADCoEEAFr1ZbrrNjch2vtEImPBgHob7fTcWE+bVXJNJ/NiFQlEGLvieXHKmYqGB8fRx05cgSbzYaIsPvywV8pKFaA7fGtLTzz61YWpo/xVTHQbufsq5lcez9zWuWhk5mvFwMEg0H0+vXrMU2Tn1wp3CtCiQ5DjGd3A/m/v8IDCZP8r4iNmyRrWx/j/5qktykZpXKzAjVDVxPzGqemptDr1q1jX3NRnIJarcDKK2hgR2ULXRfncv7UYv7xpovhnhiW5Mz+kefeSKO6LJ1A1xzEuk/Ojm4mRibpuZaMZW3OCtRUND60NmiICCIUShisx7a2sLMiQn4s77uEQgIabnqdfHIlgT1/qQeg8vs5dHhdCNB1wYn3RIiC995j26stjAbsNH+YiZJCESnS1Y/XxIXu8r4YIPv/VkVs3CTnTy2ms34xro1+sp9po6sxlTu34ultmsPVvy6is86FCHgO+DDs49zpjufBpCG+seYOC9OHaTidieicb9ouVAhKtouAseI710ma7pLuqwmgYfHqAFt+6WdLoQ/LBl11Lm7VudAa8vb72PCin9TlAWIsGGhLACD+kSAZnusYBii1XQAPYWDllt6ov2lrBkDBR2+6Ofuak2//3M+G/T4wAAPW7fPhKfRTVeqk9qQbFKRmDUTxS3N7QYGYmwzCkqklBGlPDEcTNv+sg9tNCbTXuvBWujE0bHrZj9JE1B/wU1Pm5PwJN6YBS9a2kVvQEcWnrh5GTFD3lxkYkqRMgYQlwVldUvDnen73LHTUuqitdKM0eAr9AFQfd1J/yo2aJn+2sn4Wdn5qEFODJskgBIjx5T0uCrQA08pnIjS9PERDjPnfOKXAMEBECUoGEIHBj+2zkt76UQ6dXheGAev3+cg74Kf6uJPqcicbfuond7cPy4SOiy7+tD9nFvZurx00KOk3CNEC+mE+vjSPBc7IWqgqTaPT60IMcO/xsXGa3HfKjRgRdbl7/KDg0jtubje6aHj7c7J3dgLQ2zoPwwQ91SooOQdAW1VKVMHty0kA5Bb48BycJn/LjWFGbLv4thvvb53kFvjJ+XEdWkPfjQVR/CcNKYgGMc8JWt5Fa2j+MIPPuyI2pa4IoHSkt6vLIuRaQ9q32khzt4GCxtNu6k46GeiIR2lIfDQQsafPzq1LGRGL9Gk9d+vrwewvfHPQOoexQVjxdB/auk/zmaUMdsfz6bVUtIalT7bxveP1ZHh6GPDPYeSzeD69kcpIfxymFWLNrka+ljhBTWkWwz2JiJT84YHnz2iPx0P20PkmRF5i6HYiwZFJsn/YzdezbzE3cQibY5xV266z6RfXohakb+xB9CjanCD9qTbW7Grk4WV38VZm0l6dhQiEw9taHSuDqrS0FIfDwXM3X9mHMsvRAk/sauDpQy38P+GtzOTGB9mEpkD0C2dS8n8zOjqK9ng8WJZFU+JTjasGvaCNXPpvJBPoMlm0OoDNMfWVxONfWNSUPUZ7TUQ56tCZlPwSgMnJSVRpaSmxsbFE1raw82ZxAZZRQUiBYUKGp5UlOX2krBzmoUVjiIKhHge9rfPo+Wcy3ZeXIYASgL1/X5RfMXMvj46OosrLy7HZbGitUUohIuzoem0RofALaOsghgWGjky0MiJTL8b0lOvI8hN1DKXKP0jd3TNTWDgcJhgMoo4ePYrD4Yi+KmaeLlprnrtXFo9h/AAlG1AqE8yFmBrC+jO0bgH9EVpO/1F2Dc5g//OAsbEx/j0Af+USsQynL1UAAAAASUVORK5CYII="
},
"$:/plugins/felixhayashi/vis/img/network/downArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/downArrow.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/editIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/editIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDozOWNhNzE5ZC03YzNlLTUyNGEtYmY1NS03NGVmMmM1MzE0YTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjM5Y2E3MTlkLTdjM2UtNTI0YS1iZjU1LTc0ZWYyYzUzMTRhNzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ykninAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYpSURBVHjafFZtTFvnFX7Oea+NudiY2Hwam4CBlgQwXdKREDKUoYg0jbRJ29RJ2VZ1mjRFUxSpA3VTfkzJfkQbS7spU6rtx5Z2UtppScjaHxvLuiatWi2jLEoMIUDCh23g2gbj7+tPuPvhOurawPl1dc99n+c55z33fV46ceIEZFkGADAziAgAQERoe/9ZK4GPM/AcgbsIXAcABCgMvkfAqAa89eDoJyF8LogIqqqChoaGYDAYHr8kItS8uc8iIH6iAa9IkAo5EAQX8pqmgUVBCBggYFgDhv0/GAsBgKZpICJkMhnQ4OAgZFkGEYGZUXmp+0cS+CKBwWA0DVRPOg5Zl2q6zaHyJlnVAMQXVTkwHrUqH0Xsvn+tdQAAMQDgpPLS2MViFY8rkGUZzIzaS/t/xqCzGggtz9e697zsnKhoLUtim4jOq/LE6x7X0nsh16dEZ5a/O3a2SCAOHjwInU6Hujd6ThJ4mCDQ+b2G232v7v6vwarPbQn8MGlMr+X0kpE3Wr5Zt5hL5HPhqYSdQIfKJ+yhxDPKWC6Xg+jt7UXD5b5KBt1kCHS85Ljd8/On3NupfnhFaZj4rWff1B98B1R/hnUmKd36bdtCNl4g0en4edNE/cXwLq8qMTMIPAQwmo/WuHvObA8+9c58k/dKtD0TyZWXN5YGA7ej7epKxspM//7SoNOdWc/Jyq2wiwhDzPxT8cP0jys3VMM7OmL0/77zn4Ydui3b8uiK0jD7RrA77c9Wd57cefPpF+2T6bWsFPWkaiPTCWvTsZpHFU+XrS+8G3AR08F6X+1FJvBxQQzHQOWk2SmrW4FPX/U2LVwPuDZj+fJKl2khPpeyAqA9rzR/YqwuiWXX8taN/CabGkrVuq9YJlkQQDjOAJ5jAhz9Vt9W4N5/rNp8I+vtMV/aZm4zLnUNNt0urdYnF68HWoJj4Wo1mLGUNRr8LEgDgNqeCh8xQIKOsgC7iAjVe83rT9zQa8uNM28u70kspessu8q8zq/V3NcZpVzb9+0zmVhOvvvrhaMVzrJg0zeq7xMVCCwdpnWSGBqjUyJwLTFgbvxie3w31uoWR1Y74r60rdxZqrR8q85t2W2MGCp12bm/KC3hyaSTiMhxuGrKcahqpbjOaDOoEhOEoFqJQCCJvqA85I6bfTdDjQlf2lbxVNlS6wt19yy7jRHZZlDnrinNj/6sHMhnNw2Ogco7O79e5fm/xQywRBBCEAuwn4gQ96bkYj4Vyuq9N1Z3Bj4Od5bs0MXt/dZZ21ctiqFan174q985P+Lfp+U1g7XDON/1ctP458WlVjLyJhOISZE0wM0S1QfuRC3lTjkJAKKEtNC9eIOhSh9xHLZOJRZTFuXDsEoStLkR/768ummsaJG9Pb9oe+9J+xaeSVokiQDSJphAo5uaBuWjiKP4QTqS1cUWU7ayesN66wu22frD1vmVW6GW6T8u9eVjGyZzs+w78Nqu0a2mbvVu1KEJQAgeZRL0liQYyx+GOmKeQpu0rMYsAJPNEFGD2dLodLIy6c9Ys7G8yeSUl3tf2/X3rcBVJSOv34l3sCBogi7z1LH/rBHjl4IJ93/ncQFAnjeImJD0Z8zuCwu9q3djDXqTlAKID5xv+9t2R8n8VcUFBljQ8Gyfe40BYBM4DwDLt8Kue79ZcFkbzfEdbUbv+oN4c9KTtsfm1MbYQqqh+2zrVZYKs/7Ef+byimt1POYiJhDhPBFBIiIEXhxfs7/dfYoIF+auBfYTE/pebx/V8hqBP2ODvD34yvuh/WCAmU75Bx6sIgaI/v5+6PV6JLqUsYr7dpDAoehs0h73pHTWrvKgThYbRSt9UmSjef3MpaUvBz4O72UmADgTOPJguGiZor+/HyUlJWBmJFz+D8xTtlUiOpbwpmrmrweeSXrT+g11k4SBN3RGKUcAVCVdFhyP1nreDbY//NPyEXUlU/Pp4XYycGT6V0Ux2WwWdO7cOZSWlkII8diX7SPPNgDaKdbxoNAxwATBAEkEEgSWCEQAqPAMwqvMdCEwMO0tVqZpWsGTT58+DaPR+PhGIYQAAAgh0P7B3ioW/B0iGiCGiwXbCuOHFSJys6AbYFye2T+xWhT3WYJEIoH/DQBMw3kes8OJPgAAAABJRU5ErkJggg=="
},
"$:/plugins/felixhayashi/vis/img/network/leftArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/leftArrow.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/minus.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/minus.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/plus.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/plus.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/rightArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/rightArrow.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/upArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/upArrow.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/zoomExtends.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/zoomExtends.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/timeline/delete.png": {
"title": "$:/plugins/felixhayashi/vis/img/timeline/delete.png",
"type": "image/png",
"text": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAl2cEFnAAAAEAAAABAAXMatwwAAAVRJREFUOMt108FKG1EUBuBvYtxbRGwxiGBXeYCW0mVpDSKVvIJ0F/syJsFdn6GCkaZ9gro3G1u0ILQgheJKRUwXPQNnxvTAcGf+c/7/nPvfO8UEKLCFJg5w31aNqGtgG3c4xLSZyP0QgI8Tpu0quQhyPwTgsBnkAVYD3MM9DibVId5GbiW+B+VIt7hJha1IdhPWDayVsBvcFtHlDYZ4mgou8D7e+zXyN/TwuUhjbkSXLHIZ61KNvItxaYyayBDrZsf36DyGdilQE+ngA57UyD+xg08luTSxHvP/wRuRewDm7uV9WJ4hsBy5rczJJm7G/tcS6VesjxN2Hj4c5S10Qj2Tz/AunrOEr0VtB+Z6vMJ+zfkfcVQjnMbRvcRC5B/hBU4auMbVjBFHCRsFdp6wK1yXHjz37xItRuejfFQ1nwb4HXVfs4nPYsQv0p+oKlLgNf7gGP4Cw4ZUK7kMJVEAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDExLTA1LTE2VDExOjM1OjIxKzAyOjAw9uVF5gAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxMS0wNS0xNlQxMTozNToyMSswMjowMIe4/VoAAAAASUVORK5CYII="
},
"$:/plugins/felixhayashi/vis/readme": {
"title": "$:/plugins/felixhayashi/vis/readme",
"text": "! TW5-Vis.js\n\nA tiddlywiki plugin for the vis.js library.\n\n---\n\n! Notes on Copyright\n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n1. BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n2. Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! The **vis.js** library\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n1. Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n2. MIT License (MIT)\n"
},
"$:/plugins/felixhayashi/vis/vis.css": {
"title": "$:/plugins/felixhayashi/vis/vis.css",
"type": "text/vnd.tiddlywiki",
"tags": "$:/tags/Stylesheet",
"text": "\\rules except list\n\n\\define datauri(title)\n<$macrocall $name=\"makedatauri\" type={{$title$!!type}} text={{$title$}}/>\n\\end\n\n.vis .overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-active{box-shadow:0 0 10px #86d5f8}.vis [class*=\"span\"]{min-height:0;width:auto}div.vis-configuration{position:relative;display:block;float:left;font-size:12px}div.vis-configuration-wrapper{display:block;width:700px}div.vis-configuration-wrapper::after{clear:both;content:\"\";display:block}div.vis-configuration.vis-config-option-container{display:block;width:495px;background-color:#fff;border:2px solid #f7f8fa;border-radius:4px;margin-top:20px;left:10px;padding-left:5px}div.vis-configuration.vis-config-button{display:block;width:495px;height:25px;vertical-align:middle;line-height:25px;background-color:#f7f8fa;border:2px solid #ceced0;border-radius:4px;margin-top:20px;left:10px;padding-left:5px;cursor:pointer;margin-bottom:30px}div.vis-configuration.vis-config-button.hover{background-color:#4588e6;border:2px solid #214373;color:#fff}div.vis-configuration.vis-config-item{display:block;float:left;width:495px;height:25px;vertical-align:middle;line-height:25px}div.vis-configuration.vis-config-item.vis-config-s2{left:10px;background-color:#f7f8fa;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s3{left:20px;background-color:#e4e9f0;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s4{left:30px;background-color:#cfd8e6;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-header{font-size:18px;font-weight:bold}div.vis-configuration.vis-config-label{width:120px;height:25px;line-height:25px}div.vis-configuration.vis-config-label.vis-config-s3{width:110px}div.vis-configuration.vis-config-label.vis-config-s4{width:100px}div.vis-configuration.vis-config-colorBlock{top:1px;width:30px;height:19px;border:1px solid #444;border-radius:2px;padding:0;margin:0;cursor:pointer}input.vis-configuration.vis-config-checkbox{left:-5px}input.vis-configuration.vis-config-rangeinput{position:relative;top:-5px;width:60px;padding:1px;margin:0;pointer-events:none}input.vis-configuration.vis-config-range{-webkit-appearance:none;border:0 solid white;background-color:rgba(0,0,0,0);width:300px;height:20px}input.vis-configuration.vis-config-range::-webkit-slider-runnable-track{width:300px;height:5px;background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(to bottom,#dedede 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dedede',endColorstr='#c8c8c8',GradientType=0);border:1px solid #999;box-shadow:#aaa 0 0 3px 0;border-radius:3px}input.vis-configuration.vis-config-range::-webkit-slider-thumb{-webkit-appearance:none;border:1px solid #14334b;height:17px;width:17px;border-radius:50%;background:#3876c2;background:-moz-linear-gradient(top,#3876c2 0,#385380 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#3876c2),color-stop(100%,#385380));background:-webkit-linear-gradient(top,#3876c2 0,#385380 100%);background:-o-linear-gradient(top,#3876c2 0,#385380 100%);background:-ms-linear-gradient(top,#3876c2 0,#385380 100%);background:linear-gradient(to bottom,#3876c2 0,#385380 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3876c2',endColorstr='#385380',GradientType=0);box-shadow:#111927 0 0 1px 0;margin-top:-7px}input.vis-configuration.vis-config-range:focus{outline:0}input.vis-configuration.vis-config-range:focus::-webkit-slider-runnable-track{background:#9d9d9d;background:-moz-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#9d9d9d),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-o-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:linear-gradient(to bottom,#9d9d9d 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#9d9d9d',endColorstr='#c8c8c8',GradientType=0)}input.vis-configuration.vis-config-range::-moz-range-track{width:300px;height:10px;background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(to bottom,#dedede 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dedede',endColorstr='#c8c8c8',GradientType=0);border:1px solid #999;box-shadow:#aaa 0 0 3px 0;border-radius:3px}input.vis-configuration.vis-config-range::-moz-range-thumb{border:0;height:16px;width:16px;border-radius:50%;background:#385380}input.vis-configuration.vis-config-range:-moz-focusring{outline:1px solid white;outline-offset:-1px}input.vis-configuration.vis-config-range::-ms-track{width:300px;height:5px;background:transparent;border-color:transparent;border-width:6px 0;color:transparent}input.vis-configuration.vis-config-range::-ms-fill-lower{background:#777;border-radius:10px}input.vis-configuration.vis-config-range::-ms-fill-upper{background:#ddd;border-radius:10px}input.vis-configuration.vis-config-range::-ms-thumb{border:0;height:16px;width:16px;border-radius:50%;background:#385380}input.vis-configuration.vis-config-range:focus::-ms-fill-lower{background:#888}input.vis-configuration.vis-config-range:focus::-ms-fill-upper{background:#ccc}.vis-configuration-popup{position:absolute;background:rgba(57,76,89,0.85);border:2px solid #f2faff;line-height:30px;height:30px;width:150px;text-align:center;color:#fff;font-size:14px;border-radius:4px;-webkit-transition:opacity .3s ease-in-out;-moz-transition:opacity .3s ease-in-out;transition:opacity .3s ease-in-out}.vis-configuration-popup:after,.vis-configuration-popup:before{left:100%;top:50%;border:solid transparent;content:\" \";height:0;width:0;position:absolute;pointer-events:none}.vis-configuration-popup:after{border-color:rgba(136,183,213,0);border-left-color:rgba(57,76,89,0.85);border-width:8px;margin-top:-8px}.vis-configuration-popup:before{border-color:rgba(194,225,245,0);border-left-color:#f2faff;border-width:12px;margin-top:-12px}div.vis-tooltip{position:absolute;visibility:hidden;padding:5px;white-space:nowrap;font-family:verdana;font-size:14px;color:#000;background-color:#f5f4ed;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #808074;box-shadow:3px 3px 10px rgba(0,0,0,0.2);pointer-events:none;z-index:5}div.vis-color-picker{position:absolute;top:0;left:30px;margin-top:-140px;margin-left:30px;width:310px;height:444px;z-index:1;padding:10px;border-radius:15px;background-color:#fff;display:none;box-shadow:rgba(0,0,0,0.5) 0 0 10px 0}div.vis-color-picker div.vis-arrow{position:absolute;top:147px;left:5px}div.vis-color-picker div.vis-arrow::after,div.vis-color-picker div.vis-arrow::before{right:100%;top:50%;border:solid transparent;content:\" \";height:0;width:0;position:absolute;pointer-events:none}div.vis-color-picker div.vis-arrow:after{border-color:rgba(255,255,255,0);border-right-color:#fff;border-width:30px;margin-top:-30px}div.vis-color-picker div.vis-color{position:absolute;width:289px;height:289px;cursor:pointer}div.vis-color-picker div.vis-brightness{position:absolute;top:313px}div.vis-color-picker div.vis-opacity{position:absolute;top:350px}div.vis-color-picker div.vis-selector{position:absolute;top:137px;left:137px;width:15px;height:15px;border-radius:15px;border:1px solid #fff;background:#4c4c4c;background:-moz-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#4c4c4c),color-stop(12%,#595959),color-stop(25%,#666),color-stop(39%,#474747),color-stop(50%,#2c2c2c),color-stop(51%,#000),color-stop(60%,#111),color-stop(76%,#2b2b2b),color-stop(91%,#1c1c1c),color-stop(100%,#131313));background:-webkit-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-o-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-ms-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:linear-gradient(to bottom,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#4c4c4c',endColorstr='#131313',GradientType=0)}div.vis-color-picker div.vis-new-color{position:absolute;width:140px;height:20px;border:1px solid rgba(0,0,0,0.1);border-radius:5px;top:380px;left:159px;text-align:right;padding-right:2px;font-size:10px;color:rgba(0,0,0,0.4);vertical-align:middle;line-height:20px}div.vis-color-picker div.vis-initial-color{position:absolute;width:140px;height:20px;border:1px solid rgba(0,0,0,0.1);border-radius:5px;top:380px;left:10px;text-align:left;padding-left:2px;font-size:10px;color:rgba(0,0,0,0.4);vertical-align:middle;line-height:20px}div.vis-color-picker div.vis-label{position:absolute;width:300px;left:10px}div.vis-color-picker div.vis-label.vis-brightness{top:300px}div.vis-color-picker div.vis-label.vis-opacity{top:338px}div.vis-color-picker div.vis-button{position:absolute;width:68px;height:25px;border-radius:10px;vertical-align:middle;text-align:center;line-height:25px;top:410px;border:2px solid #d9d9d9;background-color:#f7f7f7;cursor:pointer}div.vis-color-picker div.vis-button.vis-cancel{left:5px}div.vis-color-picker div.vis-button.vis-load{left:82px}div.vis-color-picker div.vis-button.vis-apply{left:159px}div.vis-color-picker div.vis-button.vis-save{left:236px}div.vis-color-picker input.vis-range{width:290px;height:20px}div.vis-network div.vis-manipulation{box-sizing:content-box;border-width:0;border-bottom:1px;border-style:solid;border-color:#d6d9d8;background:#fff;background:-moz-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(48%,#fcfcfc),color-stop(50%,#fafafa),color-stop(100%,#fcfcfc));background:-webkit-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-o-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-ms-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:linear-gradient(to bottom,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#fcfcfc',GradientType=0);padding-top:4px;position:absolute;left:0;top:0;width:100%;height:28px}div.vis-network div.vis-edit-mode{position:absolute;left:0;top:5px;height:30px}div.vis-network div.vis-close{position:absolute;right:0;top:0;width:30px;height:30px;background-position:20px 3px;background-repeat:no-repeat;background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/cross.png\">>);cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-close:hover{opacity:.6}div.vis-network div.vis-manipulation div.vis-button,div.vis-network div.vis-edit-mode div.vis-button{float:left;font-family:verdana;font-size:12px;-moz-border-radius:15px;border-radius:15px;display:inline-block;background-position:0 0;background-repeat:no-repeat;height:24px;margin-left:10px;cursor:pointer;padding:0 8px 0 8px;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-manipulation div.vis-button:hover{box-shadow:1px 1px 8px rgba(0,0,0,0.20)}div.vis-network div.vis-manipulation div.vis-button:active{box-shadow:1px 1px 8px rgba(0,0,0,0.50)}div.vis-network div.vis-manipulation div.vis-button.vis-back{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/backIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-none:hover{box-shadow:1px 1px 8px rgba(0,0,0,0.0);cursor:default}div.vis-network div.vis-manipulation div.vis-button.vis-none:active{box-shadow:1px 1px 8px rgba(0,0,0,0.0)}div.vis-network div.vis-manipulation div.vis-button.vis-none{padding:0}div.vis-network div.vis-manipulation div.notification{margin:2px;font-weight:bold}div.vis-network div.vis-manipulation div.vis-button.vis-add{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-edit,div.vis-network div.vis-edit-mode div.vis-button.vis-edit{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/editIcon.png\">>)}div.vis-network div.vis-edit-mode div.vis-button.vis-edit.vis-edit-mode{background-color:#fcfcfc;border:1px solid #ccc}div.vis-network div.vis-manipulation div.vis-button.vis-connect{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/connectIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-delete{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/deleteIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-label,div.vis-network div.vis-edit-mode div.vis-label{margin:0 0 0 23px;line-height:25px}div.vis-network div.vis-manipulation div.vis-separator-line{float:left;display:inline-block;width:1px;height:21px;background-color:#bdbdbd;margin:0 7px 0 15px}div.vis-network div.vis-navigation div.vis-button{width:34px;height:34px;-moz-border-radius:17px;border-radius:17px;position:absolute;display:inline-block;background-position:2px 2px;background-repeat:no-repeat;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-navigation div.vis-button:hover{box-shadow:0 0 3px 3px rgba(56,207,21,0.30)}div.vis-network div.vis-navigation div.vis-button:active{box-shadow:0 0 1px 3px rgba(56,207,21,0.95)}div.vis-network div.vis-navigation div.vis-button.vis-up{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/upArrow.png\">>);bottom:50px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-down{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/downArrow.png\">>);bottom:10px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-left{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/leftArrow.png\">>);bottom:10px;left:15px}div.vis-network div.vis-navigation div.vis-button.vis-right{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/rightArrow.png\">>);bottom:10px;left:95px}div.vis-network div.vis-navigation div.vis-button.vis-zoomIn{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/plus.png\">>);bottom:10px;right:15px}div.vis-network div.vis-navigation div.vis-button.vis-zoomOut{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/minus.png\">>);bottom:10px;right:55px}div.vis-network div.vis-navigation div.vis-button.vis-zoomExtends{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/zoomExtends.png\">>);bottom:50px;right:15px}.vis-current-time{background-color:#ff7f6e;width:2px;z-index:1;pointer-events:none}.vis-rolling-mode-btn{height:40px;width:40px;position:absolute;top:7px;right:20px;border-radius:50%;font-size:28px;cursor:pointer;opacity:.8;color:white;font-weight:bold;text-align:center;background:#3876c2}.vis-rolling-mode-btn:before{content:\"\\26F6\"}.vis-rolling-mode-btn:hover{opacity:1}.vis-custom-time{background-color:#6e94ff;width:2px;cursor:move;z-index:1}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-horizontal{position:absolute;width:100%;height:0;border-bottom:1px solid}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-minor{border-color:#e5e5e5}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-major{border-color:#bfbfbf}.vis-data-axis .vis-y-axis.vis-major{width:100%;position:absolute;color:#4d4d4d;white-space:nowrap}.vis-data-axis .vis-y-axis.vis-major.vis-measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-minor{position:absolute;width:100%;color:#bebebe;white-space:nowrap}.vis-data-axis .vis-y-axis.vis-minor.vis-measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-title{position:absolute;color:#4d4d4d;white-space:nowrap;bottom:20px;text-align:center}.vis-data-axis .vis-y-axis.vis-title.vis-measure{padding:0;margin:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-title.vis-left{bottom:0;-webkit-transform-origin:left top;-moz-transform-origin:left top;-ms-transform-origin:left top;-o-transform-origin:left top;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.vis-data-axis .vis-y-axis.vis-title.vis-right{bottom:0;-webkit-transform-origin:right bottom;-moz-transform-origin:right bottom;-ms-transform-origin:right bottom;-o-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.vis-legend{background-color:rgba(247,252,255,0.65);padding:5px;border:1px solid #b3b3b3;box-shadow:2px 2px 10px rgba(154,154,154,0.55)}.vis-legend-text{white-space:nowrap;display:inline-block}.vis-item{position:absolute;color:#1a1a1a;border-color:#97b0f8;border-width:1px;background-color:#d5ddf6;display:inline-block;z-index:1}.vis-item.vis-selected{border-color:#ffc200;background-color:#fff785;z-index:2}.vis-editable.vis-selected{cursor:move}.vis-item.vis-point.vis-selected{background-color:#fff785}.vis-item.vis-box{text-align:center;border-style:solid;border-radius:2px}.vis-item.vis-point{background:0}.vis-item.vis-dot{position:absolute;padding:0;border-width:4px;border-style:solid;border-radius:4px}.vis-item.vis-range{border-style:solid;border-radius:2px;box-sizing:border-box}.vis-item.vis-background{border:0;background-color:rgba(213,221,246,0.4);box-sizing:border-box;padding:0;margin:0}.vis-item .vis-item-overflow{position:relative;width:100%;height:100%;padding:0;margin:0;overflow:hidden}.vis-item-visible-frame{white-space:nowrap}.vis-item.vis-range .vis-item-content{position:relative;display:inline-block}.vis-item.vis-background .vis-item-content{position:absolute;display:inline-block}.vis-item.vis-line{padding:0;position:absolute;width:0;border-left-width:1px;border-left-style:solid}.vis-item .vis-item-content{white-space:nowrap;box-sizing:border-box;padding:5px}.vis-item .vis-onUpdateTime-tooltip{position:absolute;background:#4f81bd;color:white;width:200px;text-align:center;white-space:nowrap;padding:5px;border-radius:1px;transition:.4s;-o-transition:.4s;-moz-transition:.4s;-webkit-transition:.4s}.vis-item .vis-delete,.vis-item .vis-delete-rtl{position:absolute;top:0;width:24px;height:24px;box-sizing:border-box;padding:0 5px;cursor:pointer;-webkit-transition:background .2s linear;-moz-transition:background .2s linear;-ms-transition:background .2s linear;-o-transition:background .2s linear;transition:background .2s linear}.vis-item .vis-delete{right:-24px}.vis-item .vis-delete-rtl{left:-24px}.vis-item .vis-delete:after,.vis-item .vis-delete-rtl:after{content:\"\\00D7\";color:red;font-family:arial,sans-serif;font-size:22px;font-weight:bold;-webkit-transition:color .2s linear;-moz-transition:color .2s linear;-ms-transition:color .2s linear;-o-transition:color .2s linear;transition:color .2s linear}.vis-item .vis-delete:hover,.vis-item .vis-delete-rtl:hover{background:red}.vis-item .vis-delete:hover:after,.vis-item .vis-delete-rtl:hover:after{color:white}.vis-item .vis-drag-center{position:absolute;width:100%;height:100%;top:0;left:0;cursor:move}.vis-item.vis-range .vis-drag-left{position:absolute;width:24px;max-width:20%;min-width:2px;height:100%;top:0;left:-4px;cursor:w-resize}.vis-item.vis-range .vis-drag-right{position:absolute;width:24px;max-width:20%;min-width:2px;height:100%;top:0;right:-4px;cursor:e-resize}.vis-range.vis-item.vis-readonly .vis-drag-left,.vis-range.vis-item.vis-readonly .vis-drag-right{cursor:auto}.vis-itemset{position:relative;padding:0;margin:0;box-sizing:border-box}.vis-itemset .vis-background,.vis-itemset .vis-foreground{position:absolute;width:100%;height:100%;overflow:visible}.vis-axis{position:absolute;width:100%;height:0;left:0;z-index:1}.vis-foreground .vis-group{position:relative;box-sizing:border-box;border-bottom:1px solid #bfbfbf}.vis-foreground .vis-group:last-child{border-bottom:0}.vis-nesting-group{cursor:pointer}.vis-nested-group{background:#f5f5f5}.vis-label.vis-nesting-group.expanded:before{content:\"\\25BC\"}.vis-label.vis-nesting-group.collapsed-rtl:before{content:\"\\25C0\"}.vis-label.vis-nesting-group.collapsed:before{content:\"\\25B6\"}.vis-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-labelset{position:relative;overflow:hidden;box-sizing:border-box}.vis-labelset .vis-label{position:relative;left:0;top:0;width:100%;color:#4d4d4d;box-sizing:border-box}.vis-labelset .vis-label{border-bottom:1px solid #bfbfbf}.vis-labelset .vis-label.draggable{cursor:pointer}.vis-labelset .vis-label:last-child{border-bottom:0}.vis-labelset .vis-label .vis-inner{display:inline-block;padding:5px}.vis-labelset .vis-label .vis-inner.vis-hidden{padding:0}.vis-panel{position:absolute;padding:0;margin:0;box-sizing:border-box}.vis-panel.vis-center,.vis-panel.vis-left,.vis-panel.vis-right,.vis-panel.vis-top,.vis-panel.vis-bottom{border:1px #bfbfbf}.vis-panel.vis-center,.vis-panel.vis-left,.vis-panel.vis-right{border-top-style:solid;border-bottom-style:solid;overflow:hidden}.vis-left.vis-panel.vis-vertical-scroll,.vis-right.vis-panel.vis-vertical-scroll{height:100%;overflow-x:hidden;overflow-y:scroll}.vis-left.vis-panel.vis-vertical-scroll{direction:rtl}.vis-left.vis-panel.vis-vertical-scroll .vis-content{direction:ltr}.vis-right.vis-panel.vis-vertical-scroll{direction:ltr}.vis-right.vis-panel.vis-vertical-scroll .vis-content{direction:rtl}.vis-panel.vis-center,.vis-panel.vis-top,.vis-panel.vis-bottom{border-left-style:solid;border-right-style:solid}.vis-background{overflow:hidden}.vis-panel>.vis-content{position:relative}.vis-panel .vis-shadow{position:absolute;width:100%;height:1px;box-shadow:0 0 10px rgba(0,0,0,0.8)}.vis-panel .vis-shadow.vis-top{top:-1px;left:0}.vis-panel .vis-shadow.vis-bottom{bottom:-1px;left:0}.vis-graph-group0{fill:#4f81bd;fill-opacity:0;stroke-width:2px;stroke:#4f81bd}.vis-graph-group1{fill:#f79646;fill-opacity:0;stroke-width:2px;stroke:#f79646}.vis-graph-group2{fill:#8c51cf;fill-opacity:0;stroke-width:2px;stroke:#8c51cf}.vis-graph-group3{fill:#75c841;fill-opacity:0;stroke-width:2px;stroke:#75c841}.vis-graph-group4{fill:#ff0100;fill-opacity:0;stroke-width:2px;stroke:#ff0100}.vis-graph-group5{fill:#37d8e6;fill-opacity:0;stroke-width:2px;stroke:#37d8e6}.vis-graph-group6{fill:#042662;fill-opacity:0;stroke-width:2px;stroke:#042662}.vis-graph-group7{fill:#00ff26;fill-opacity:0;stroke-width:2px;stroke:#00ff26}.vis-graph-group8{fill:#f0f;fill-opacity:0;stroke-width:2px;stroke:#f0f}.vis-graph-group9{fill:#8f3938;fill-opacity:0;stroke-width:2px;stroke:#8f3938}.vis-timeline .vis-fill{fill-opacity:.1;stroke:none}.vis-timeline .vis-bar{fill-opacity:.5;stroke-width:1px}.vis-timeline .vis-point{stroke-width:2px;fill-opacity:1.0}.vis-timeline .vis-legend-background{stroke-width:1px;fill-opacity:.9;fill:#fff;stroke:#c2c2c2}.vis-timeline .vis-outline{stroke-width:1px;fill-opacity:1;fill:#fff;stroke:#e5e5e5}.vis-timeline .vis-icon-fill{fill-opacity:.3;stroke:none}.vis-time-axis{position:relative;overflow:hidden}.vis-time-axis.vis-foreground{top:0;left:0;width:100%}.vis-time-axis.vis-background{position:absolute;top:0;left:0;width:100%;height:100%}.vis-time-axis .vis-text{position:absolute;color:#4d4d4d;padding:3px;overflow:hidden;box-sizing:border-box;white-space:nowrap}.vis-time-axis .vis-text.vis-measure{position:absolute;padding-left:0;padding-right:0;margin-left:0;margin-right:0;visibility:hidden}.vis-time-axis .vis-grid.vis-vertical{position:absolute;border-left:1px solid}.vis-time-axis .vis-grid.vis-vertical-rtl{position:absolute;border-right:1px solid}.vis-time-axis .vis-grid.vis-minor{border-color:#e5e5e5}.vis-time-axis .vis-grid.vis-major{border-color:#bfbfbf}.vis-timeline{position:relative;border:1px solid #bfbfbf;overflow:hidden;padding:0;margin:0;box-sizing:border-box}"
},
"$:/plugins/felixhayashi/vis/vis.js": {
"title": "$:/plugins/felixhayashi/vis/vis.js",
"text": "/*\\\ntitle: $:/plugins/felixhayashi/vis/vis.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\\*/\n\n/*** TO AVOID STRANGE LIB ERRORS FROM BUBBLING UP *****************/\n\nif($tw.boot.tasks.trapErrors) {\n\n var defaultHandler = window.onerror;\n window.onerror = function(errorMsg, url, lineNumber) {\n \n if(errorMsg.indexOf(\"NS_ERROR_NOT_AVAILABLE\") !== -1\n && url == \"$:/plugins/felixhayashi/vis/vis.js\") {\n \n var text = \"Strange firefox related vis.js error (see #125)\";\n console.error(text, arguments);\n \n } else if(errorMsg.indexOf(\"Permission denied to access property\") !== -1) {\n \n var text = \"Strange firefox related vis.js error (see #163)\";\n console.error(text, arguments);\n \n } else if(defaultHandler) {\n \n defaultHandler.apply(this, arguments);\n \n }\n \n }\n \n}\n\n/******************************************************************/\n\n/**\n * vis.js\n * https://github.com/almende/vis\n *\n * A dynamic, browser-based visualization library.\n *\n * @version 4.21.0\n * @date 2017-10-12\n *\n * @license\n * Copyright (C) 2011-2017 Almende B.V, http://almende.com\n *\n * Vis.js is dual licensed under both\n *\n * * The Apache 2.0 License\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * and\n *\n * * The MIT License\n * http://opensource.org/licenses/MIT\n *\n * Vis.js may be distributed under either license.\n */\n\"use strict\";(function webpackUniversalModuleDefinition(root,factory){if(typeof exports===\"object\"&&typeof module===\"object\")module.exports=factory();else if(typeof define===\"function\"&&define.amd)define([],factory);else if(typeof exports===\"object\")exports[\"vis\"]=factory();else root[\"vis\"]=factory()})(this,function(){return function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{configurable:false,enumerable:true,get:getter})}};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module[\"default\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\"a\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\"\";return __webpack_require__(__webpack_require__.s=123)}([function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;exports.default=function(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\")}}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _defineProperty=__webpack_require__(169);var _defineProperty2=_interopRequireDefault(_defineProperty);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if(\"value\"in descriptor)descriptor.writable=true;(0,_defineProperty2.default)(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){if(protoProps)defineProperties(Constructor.prototype,protoProps);if(staticProps)defineProperties(Constructor,staticProps);return Constructor}}()},function(module,exports,__webpack_require__){\"use strict\";var _getIterator2=__webpack_require__(77);var _getIterator3=_interopRequireDefault(_getIterator2);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var moment=__webpack_require__(9);var uuid=__webpack_require__(157);exports.isNumber=function(object){return object instanceof Number||typeof object==\"number\"};exports.recursiveDOMDelete=function(DOMobject){if(DOMobject){while(DOMobject.hasChildNodes()===true){exports.recursiveDOMDelete(DOMobject.firstChild);DOMobject.removeChild(DOMobject.firstChild)}}};exports.giveRange=function(min,max,total,value){if(max==min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}};exports.isString=function(object){return object instanceof String||typeof object==\"string\"};exports.isDate=function(object){if(object instanceof Date){return true}else if(exports.isString(object)){var match=ASPDateRegex.exec(object);if(match){return true}else if(!isNaN(Date.parse(object))){return true}}return false};exports.randomUUID=function(){return uuid.v4()};exports.assignAllKeys=function(obj,value){for(var prop in obj){if(obj.hasOwnProperty(prop)){if((0,_typeof3[\"default\"])(obj[prop])!==\"object\"){obj[prop]=value}}}};function copyOrDelete(a,b,prop,allowDeletion){var doDeletion=false;if(allowDeletion===true){doDeletion=b[prop]===null&&a[prop]!==undefined}if(doDeletion){delete a[prop]}else{a[prop]=b[prop]}}exports.fillIfDefined=function(a,b){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;for(var prop in a){if(b[prop]!==undefined){if(b[prop]===null||(0,_typeof3[\"default\"])(b[prop])!==\"object\"){copyOrDelete(a,b,prop,allowDeletion)}else{if((0,_typeof3[\"default\"])(a[prop])===\"object\"){exports.fillIfDefined(a[prop],b[prop],allowDeletion)}}}}};exports.extend=function(a,b){for(var i=1;i<arguments.length;i++){var other=arguments[i];for(var prop in other){if(other.hasOwnProperty(prop)){a[prop]=other[prop]}}}return a};exports.selectiveExtend=function(props,a,b){if(!Array.isArray(props)){throw new Error(\"Array with property names expected as first argument\")}for(var i=2;i<arguments.length;i++){var other=arguments[i];for(var p=0;p<props.length;p++){var prop=props[p];if(other&&other.hasOwnProperty(prop)){a[prop]=other[prop]}}}return a};exports.selectiveDeepExtend=function(props,a,b){var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;if(Array.isArray(b)){throw new TypeError(\"Arrays are not supported by deepExtend\")}for(var p=0;p<props.length;p++){var prop=props[p];if(b.hasOwnProperty(prop)){if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop],false,allowDeletion)}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){throw new TypeError(\"Arrays are not supported by deepExtend\")}else{copyOrDelete(a,b,prop,allowDeletion)}}}return a};exports.selectiveNotDeepExtend=function(propsToExclude,a,b){var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;if(Array.isArray(b)){throw new TypeError(\"Arrays are not supported by deepExtend\")}for(var prop in b){if(!b.hasOwnProperty(prop))continue;if(propsToExclude.indexOf(prop)!==-1)continue;if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop])}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){a[prop]=[];for(var i=0;i<b[prop].length;i++){a[prop].push(b[prop][i])}}else{copyOrDelete(a,b,prop,allowDeletion)}}return a};exports.deepExtend=function(a,b){var protoExtend=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;for(var prop in b){if(b.hasOwnProperty(prop)||protoExtend===true){if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop],protoExtend)}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){a[prop]=[];for(var i=0;i<b[prop].length;i++){a[prop].push(b[prop][i])}}else{copyOrDelete(a,b,prop,allowDeletion)}}}return a};exports.equalArray=function(a,b){if(a.length!=b.length)return false;for(var i=0,len=a.length;i<len;i++){if(a[i]!=b[i])return false}return true};exports.convert=function(object,type){var match;if(object===undefined){return undefined}if(object===null){return null}if(!type){return object}if(!(typeof type===\"string\")&&!(type instanceof String)){throw new Error(\"Type must be a string\")}switch(type){case\"boolean\":case\"Boolean\":return Boolean(object);case\"number\":case\"Number\":if(exports.isString(object)&&!isNaN(Date.parse(object))){return moment(object).valueOf()}else{return Number(object.valueOf())}case\"string\":case\"String\":return String(object);case\"Date\":if(exports.isNumber(object)){return new Date(object)}if(object instanceof Date){return new Date(object.valueOf())}else if(moment.isMoment(object)){return new Date(object.valueOf())}if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return new Date(Number(match[1]))}else{return moment(new Date(object)).toDate()}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type Date\")}case\"Moment\":if(exports.isNumber(object)){return moment(object)}if(object instanceof Date){return moment(object.valueOf())}else if(moment.isMoment(object)){return moment(object)}if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return moment(Number(match[1]))}else{return moment(object)}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type Date\")}case\"ISODate\":if(exports.isNumber(object)){return new Date(object)}else if(object instanceof Date){return object.toISOString()}else if(moment.isMoment(object)){return object.toDate().toISOString()}else if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return new Date(Number(match[1])).toISOString()}else{return moment(object).format()}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type ISODate\")}case\"ASPDate\":if(exports.isNumber(object)){return\"/Date(\"+object+\")/\"}else if(object instanceof Date){return\"/Date(\"+object.valueOf()+\")/\"}else if(exports.isString(object)){match=ASPDateRegex.exec(object);var value;if(match){value=new Date(Number(match[1])).valueOf()}else{value=new Date(object).valueOf()}return\"/Date(\"+value+\")/\"}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type ASPDate\")}default:throw new Error('Unknown type \"'+type+'\"')}};var ASPDateRegex=/^\\/?Date\\((\\-?\\d+)/i;exports.getType=function(object){var type=typeof object===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(object);if(type==\"object\"){if(object===null){return\"null\"}if(object instanceof Boolean){return\"Boolean\"}if(object instanceof Number){return\"Number\"}if(object instanceof String){return\"String\"}if(Array.isArray(object)){return\"Array\"}if(object instanceof Date){return\"Date\"}return\"Object\"}else if(type==\"number\"){return\"Number\"}else if(type==\"boolean\"){return\"Boolean\"}else if(type==\"string\"){return\"String\"}else if(type===undefined){return\"undefined\"}return type};exports.copyAndExtendArray=function(arr,newValue){var newArr=[];for(var i=0;i<arr.length;i++){newArr.push(arr[i])}newArr.push(newValue);return newArr};exports.copyArray=function(arr){var newArr=[];for(var i=0;i<arr.length;i++){newArr.push(arr[i])}return newArr};exports.getAbsoluteLeft=function(elem){return elem.getBoundingClientRect().left};exports.getAbsoluteRight=function(elem){return elem.getBoundingClientRect().right};exports.getAbsoluteTop=function(elem){return elem.getBoundingClientRect().top};exports.addClassName=function(elem,classNames){var classes=elem.className.split(\" \");var newClasses=classNames.split(\" \");classes=classes.concat(newClasses.filter(function(className){return classes.indexOf(className)<0}));elem.className=classes.join(\" \")};exports.removeClassName=function(elem,classNames){var classes=elem.className.split(\" \");var oldClasses=classNames.split(\" \");classes=classes.filter(function(className){return oldClasses.indexOf(className)<0});elem.className=classes.join(\" \")};exports.forEach=function(object,callback){var i,len;if(Array.isArray(object)){for(i=0,len=object.length;i<len;i++){callback(object[i],i,object)}}else{for(i in object){if(object.hasOwnProperty(i)){callback(object[i],i,object)}}}};exports.toArray=function(object){var array=[];for(var prop in object){if(object.hasOwnProperty(prop))array.push(object[prop])}return array};exports.updateProperty=function(object,key,value){if(object[key]!==value){object[key]=value;return true}else{return false}};exports.throttle=function(fn){var scheduled=false;return function throttled(){if(!scheduled){scheduled=true;requestAnimationFrame(function(){scheduled=false;fn()})}}};exports.addEventListener=function(element,action,listener,useCapture){if(element.addEventListener){if(useCapture===undefined)useCapture=false;if(action===\"mousewheel\"&&navigator.userAgent.indexOf(\"Firefox\")>=0){action=\"DOMMouseScroll\"}element.addEventListener(action,listener,useCapture)}else{element.attachEvent(\"on\"+action,listener)}};exports.removeEventListener=function(element,action,listener,useCapture){if(element.removeEventListener){if(useCapture===undefined)useCapture=false;if(action===\"mousewheel\"&&navigator.userAgent.indexOf(\"Firefox\")>=0){action=\"DOMMouseScroll\"}element.removeEventListener(action,listener,useCapture)}else{element.detachEvent(\"on\"+action,listener)}};exports.preventDefault=function(event){if(!event)event=window.event;if(event.preventDefault){event.preventDefault()}else{event.returnValue=false}};exports.getTarget=function(event){if(!event){event=window.event}var target;if(event.target){target=event.target}else if(event.srcElement){target=event.srcElement}if(target.nodeType!=undefined&&target.nodeType==3){target=target.parentNode}return target};exports.hasParent=function(element,parent){var e=element;while(e){if(e===parent){return true}e=e.parentNode}return false};exports.option={};exports.option.asBoolean=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return value!=false}return defaultValue||null};exports.option.asNumber=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return Number(value)||defaultValue||null}return defaultValue||null};exports.option.asString=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return String(value)}return defaultValue||null};exports.option.asSize=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(exports.isString(value)){return value}else if(exports.isNumber(value)){return value+\"px\"}else{return defaultValue||null}};exports.option.asElement=function(value,defaultValue){if(typeof value==\"function\"){value=value()}return value||defaultValue||null};exports.hexToRGB=function(hex){var shorthandRegex=/^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;hex=hex.replace(shorthandRegex,function(m,r,g,b){return r+r+g+g+b+b});var result=/^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);return result?{r:parseInt(result[1],16),g:parseInt(result[2],16),b:parseInt(result[3],16)}:null};exports.overrideOpacity=function(color,opacity){var rgb;if(color.indexOf(\"rgba\")!=-1){return color}else if(color.indexOf(\"rgb\")!=-1){rgb=color.substr(color.indexOf(\"(\")+1).replace(\")\",\"\").split(\",\");return\"rgba(\"+rgb[0]+\",\"+rgb[1]+\",\"+rgb[2]+\",\"+opacity+\")\"}else{rgb=exports.hexToRGB(color);if(rgb==null){return color}else{return\"rgba(\"+rgb.r+\",\"+rgb.g+\",\"+rgb.b+\",\"+opacity+\")\"}}};exports.RGBToHex=function(red,green,blue){return\"#\"+((1<<24)+(red<<16)+(green<<8)+blue).toString(16).slice(1)};exports.parseColor=function(color){var c;if(exports.isString(color)===true){if(exports.isValidRGB(color)===true){var rgb=color.substr(4).substr(0,color.length-5).split(\",\").map(function(value){return parseInt(value)});color=exports.RGBToHex(rgb[0],rgb[1],rgb[2])}if(exports.isValidHex(color)===true){var hsv=exports.hexToHSV(color);var lighterColorHSV={h:hsv.h,s:hsv.s*.8,v:Math.min(1,hsv.v*1.02)};var darkerColorHSV={h:hsv.h,s:Math.min(1,hsv.s*1.25),v:hsv.v*.8};var darkerColorHex=exports.HSVToHex(darkerColorHSV.h,darkerColorHSV.s,darkerColorHSV.v);var lighterColorHex=exports.HSVToHex(lighterColorHSV.h,lighterColorHSV.s,lighterColorHSV.v);c={background:color,border:darkerColorHex,highlight:{background:lighterColorHex,border:darkerColorHex},hover:{background:lighterColorHex,border:darkerColorHex}}}else{c={background:color,border:color,highlight:{background:color,border:color},hover:{background:color,border:color}}}}else{c={};c.background=color.background||undefined;c.border=color.border||undefined;if(exports.isString(color.highlight)){c.highlight={border:color.highlight,background:color.highlight}}else{c.highlight={};c.highlight.background=color.highlight&&color.highlight.background||undefined;c.highlight.border=color.highlight&&color.highlight.border||undefined}if(exports.isString(color.hover)){c.hover={border:color.hover,background:color.hover}}else{c.hover={};c.hover.background=color.hover&&color.hover.background||undefined;c.hover.border=color.hover&&color.hover.border||undefined}}return c};exports.RGBToHSV=function(red,green,blue){red=red/255;green=green/255;blue=blue/255;var minRGB=Math.min(red,Math.min(green,blue));var maxRGB=Math.max(red,Math.max(green,blue));if(minRGB==maxRGB){return{h:0,s:0,v:minRGB}}var d=red==minRGB?green-blue:blue==minRGB?red-green:blue-red;var h=red==minRGB?3:blue==minRGB?1:5;var hue=60*(h-d/(maxRGB-minRGB))/360;var saturation=(maxRGB-minRGB)/maxRGB;var value=maxRGB;return{h:hue,s:saturation,v:value}};var cssUtil={split:function split(cssText){var styles={};cssText.split(\";\").forEach(function(style){if(style.trim()!=\"\"){var parts=style.split(\":\");var key=parts[0].trim();var value=parts[1].trim();styles[key]=value}});return styles},join:function join(styles){return(0,_keys2[\"default\"])(styles).map(function(key){return key+\": \"+styles[key]}).join(\"; \")}};exports.addCssText=function(element,cssText){var currentStyles=cssUtil.split(element.style.cssText);var newStyles=cssUtil.split(cssText);var styles=exports.extend(currentStyles,newStyles);element.style.cssText=cssUtil.join(styles)};exports.removeCssText=function(element,cssText){var styles=cssUtil.split(element.style.cssText);var removeStyles=cssUtil.split(cssText);for(var key in removeStyles){if(removeStyles.hasOwnProperty(key)){delete styles[key]}}element.style.cssText=cssUtil.join(styles)};exports.HSVToRGB=function(h,s,v){var r,g,b;var i=Math.floor(h*6);var f=h*6-i;var p=v*(1-s);var q=v*(1-f*s);var t=v*(1-(1-f)*s);switch(i%6){case 0:r=v,g=t,b=p;break;case 1:r=q,g=v,b=p;break;case 2:r=p,g=v,b=t;break;case 3:r=p,g=q,b=v;break;case 4:r=t,g=p,b=v;break;case 5:r=v,g=p,b=q;break}return{r:Math.floor(r*255),g:Math.floor(g*255),b:Math.floor(b*255)}};exports.HSVToHex=function(h,s,v){var rgb=exports.HSVToRGB(h,s,v);return exports.RGBToHex(rgb.r,rgb.g,rgb.b)};exports.hexToHSV=function(hex){var rgb=exports.hexToRGB(hex);return exports.RGBToHSV(rgb.r,rgb.g,rgb.b)};exports.isValidHex=function(hex){var isOk=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(hex);return isOk};exports.isValidRGB=function(rgb){rgb=rgb.replace(\" \",\"\");var isOk=/rgb\\((\\d{1,3}),(\\d{1,3}),(\\d{1,3})\\)/i.test(rgb);return isOk};exports.isValidRGBA=function(rgba){rgba=rgba.replace(\" \",\"\");var isOk=/rgba\\((\\d{1,3}),(\\d{1,3}),(\\d{1,3}),(.{1,3})\\)/i.test(rgba);return isOk};exports.selectiveBridgeObject=function(fields,referenceObject){if(referenceObject!==null&&(typeof referenceObject===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(referenceObject))===\"object\"){var objectTo=(0,_create2[\"default\"])(referenceObject);for(var i=0;i<fields.length;i++){if(referenceObject.hasOwnProperty(fields[i])){if((0,_typeof3[\"default\"])(referenceObject[fields[i]])==\"object\"){objectTo[fields[i]]=exports.bridgeObject(referenceObject[fields[i]])}}}return objectTo}else{return null}};exports.bridgeObject=function(referenceObject){if(referenceObject!==null&&(typeof referenceObject===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(referenceObject))===\"object\"){var objectTo=(0,_create2[\"default\"])(referenceObject);if(referenceObject instanceof Element){objectTo=referenceObject}else{objectTo=(0,_create2[\"default\"])(referenceObject);for(var i in referenceObject){if(referenceObject.hasOwnProperty(i)){if((0,_typeof3[\"default\"])(referenceObject[i])==\"object\"){objectTo[i]=exports.bridgeObject(referenceObject[i])}}}}return objectTo}else{return null}};exports.insertSort=function(a,compare){for(var i=0;i<a.length;i++){var k=a[i];for(var j=i;j>0&&compare(k,a[j-1])<0;j--){a[j]=a[j-1]}a[j]=k}return a};exports.mergeOptions=function(mergeTarget,options,option){var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var isPresent=function isPresent(obj){return obj!==null&&obj!==undefined};var isObject=function isObject(obj){return obj!==null&&(typeof obj===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(obj))===\"object\"};var isEmpty=function isEmpty(obj){for(var x in obj){if(obj.hasOwnProperty(x))return false}return true};if(!isObject(mergeTarget)){throw new Error(\"Parameter mergeTarget must be an object\")}if(!isObject(options)){throw new Error(\"Parameter options must be an object\")}if(!isPresent(option)){throw new Error(\"Parameter option must have a value\")}if(!isObject(globalOptions)){throw new Error(\"Parameter globalOptions must be an object\")}var doMerge=function doMerge(target,options,option){if(!isObject(target[option])){target[option]={}}var src=options[option];var dst=target[option];for(var prop in src){if(src.hasOwnProperty(prop)){dst[prop]=src[prop]}}};var srcOption=options[option];var globalPassed=isObject(globalOptions)&&!isEmpty(globalOptions);var globalOption=globalPassed?globalOptions[option]:undefined;var globalEnabled=globalOption?globalOption.enabled:undefined;if(srcOption===undefined){return}if(typeof srcOption===\"boolean\"){if(!isObject(mergeTarget[option])){mergeTarget[option]={}}mergeTarget[option].enabled=srcOption;return}if(srcOption===null&&!isObject(mergeTarget[option])){if(isPresent(globalOption)){mergeTarget[option]=(0,_create2[\"default\"])(globalOption)}else{return}}if(!isObject(srcOption)){return}var enabled=true;if(srcOption.enabled!==undefined){enabled=srcOption.enabled}else{if(globalEnabled!==undefined){enabled=globalOption.enabled}}doMerge(mergeTarget,options,option);mergeTarget[option].enabled=enabled};exports.binarySearchCustom=function(orderedItems,comparator,field,field2){var maxIterations=1e4;var iteration=0;var low=0;var high=orderedItems.length-1;while(low<=high&&iteration<maxIterations){var middle=Math.floor((low+high)/2);var item=orderedItems[middle];var value=field2===undefined?item[field]:item[field][field2];var searchResult=comparator(value);if(searchResult==0){return middle}else if(searchResult==-1){low=middle+1}else{high=middle-1}iteration++}return-1};exports.binarySearchValue=function(orderedItems,target,field,sidePreference,comparator){var maxIterations=1e4;var iteration=0;var low=0;var high=orderedItems.length-1;var prevValue,value,nextValue,middle;comparator=comparator!=undefined?comparator:function(a,b){return a==b?0:a<b?-1:1};while(low<=high&&iteration<maxIterations){middle=Math.floor(.5*(high+low));prevValue=orderedItems[Math.max(0,middle-1)][field];value=orderedItems[middle][field];nextValue=orderedItems[Math.min(orderedItems.length-1,middle+1)][field];if(comparator(value,target)==0){return middle}else if(comparator(prevValue,target)<0&&comparator(value,target)>0){return sidePreference==\"before\"?Math.max(0,middle-1):middle}else if(comparator(value,target)<0&&comparator(nextValue,target)>0){return sidePreference==\"before\"?middle:Math.min(orderedItems.length-1,middle+1)}else{if(comparator(value,target)<0){low=middle+1}else{high=middle-1}}iteration++}return-1};exports.easingFunctions={linear:function linear(t){return t},easeInQuad:function easeInQuad(t){return t*t},easeOutQuad:function easeOutQuad(t){return t*(2-t)},easeInOutQuad:function easeInOutQuad(t){return t<.5?2*t*t:-1+(4-2*t)*t},easeInCubic:function easeInCubic(t){return t*t*t},easeOutCubic:function easeOutCubic(t){return--t*t*t+1},easeInOutCubic:function easeInOutCubic(t){return t<.5?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function easeInQuart(t){return t*t*t*t},easeOutQuart:function easeOutQuart(t){return 1- --t*t*t*t},easeInOutQuart:function easeInOutQuart(t){return t<.5?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function easeInQuint(t){return t*t*t*t*t},easeOutQuint:function easeOutQuint(t){return 1+--t*t*t*t*t},easeInOutQuint:function easeInOutQuint(t){return t<.5?16*t*t*t*t*t:1+16*--t*t*t*t*t}};exports.getScrollBarWidth=function(){var inner=document.createElement(\"p\");inner.style.width=\"100%\";inner.style.height=\"200px\";var outer=document.createElement(\"div\");outer.style.position=\"absolute\";outer.style.top=\"0px\";outer.style.left=\"0px\";outer.style.visibility=\"hidden\";outer.style.width=\"200px\";outer.style.height=\"150px\";outer.style.overflow=\"hidden\";outer.appendChild(inner);document.body.appendChild(outer);var w1=inner.offsetWidth;outer.style.overflow=\"scroll\";var w2=inner.offsetWidth;if(w1==w2)w2=outer.clientWidth;document.body.removeChild(outer);return w1-w2};exports.topMost=function(pile,accessors){var candidate=void 0;if(!Array.isArray(accessors)){accessors=[accessors]}var _iteratorNormalCompletion=true;var _didIteratorError=false;var _iteratorError=undefined;try{for(var _iterator=(0,_getIterator3[\"default\"])(pile),_step;!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=true){var member=_step.value;if(member){candidate=member[accessors[0]];for(var i=1;i<accessors.length;i++){if(candidate){candidate=candidate[accessors[i]]}else{continue}}if(typeof candidate!=\"undefined\"){break}}}}catch(err){_didIteratorError=true;_iteratorError=err}finally{try{if(!_iteratorNormalCompletion&&_iterator[\"return\"]){_iterator[\"return\"]()}}finally{if(_didIteratorError){throw _iteratorError}}}return candidate}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(194),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(self,call){if(!self){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return call&&((typeof call===\"undefined\"?\"undefined\":(0,_typeof3.default)(call))===\"object\"||typeof call===\"function\")?call:self}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _setPrototypeOf=__webpack_require__(196);var _setPrototypeOf2=_interopRequireDefault(_setPrototypeOf);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(subClass,superClass){if(typeof superClass!==\"function\"&&superClass!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+(typeof superClass===\"undefined\"?\"undefined\":(0,_typeof3.default)(superClass)))}subClass.prototype=(0,_create2.default)(superClass&&superClass.prototype,{constructor:{value:subClass,enumerable:false,writable:true,configurable:true}});if(superClass)_setPrototypeOf2.default?(0,_setPrototypeOf2.default)(subClass,superClass):subClass.__proto__=superClass}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _iterator=__webpack_require__(142);var _iterator2=_interopRequireDefault(_iterator);var _symbol=__webpack_require__(144);var _symbol2=_interopRequireDefault(_symbol);var _typeof=typeof _symbol2.default===\"function\"&&typeof _iterator2.default===\"symbol\"?function(obj){return typeof obj}:function(obj){return obj&&typeof _symbol2.default===\"function\"&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?\"symbol\":typeof obj};function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=typeof _symbol2.default===\"function\"&&_typeof(_iterator2.default)===\"symbol\"?function(obj){return typeof obj===\"undefined\"?\"undefined\":_typeof(obj)}:function(obj){return obj&&typeof _symbol2.default===\"function\"&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?\"symbol\":typeof obj===\"undefined\"?\"undefined\":_typeof(obj)}},function(module,exports){var core=module.exports={version:\"2.5.1\"};if(typeof __e==\"number\")__e=core},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(140),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";module.exports=typeof window!==\"undefined\"&&window[\"moment\"]||__webpack_require__(154)},function(module,exports,__webpack_require__){\"use strict\";function hammerMock(){var noop=function noop(){};return{on:noop,off:noop,destroy:noop,emit:noop,get:function get(m){return{set:noop}}}}if(typeof window!==\"undefined\"){var propagating=__webpack_require__(175);var Hammer=window[\"Hammer\"]||__webpack_require__(176);module.exports=propagating(Hammer,{preventDefault:\"mouse\"})}else{module.exports=function(){return hammerMock()}}},function(module,exports,__webpack_require__){\"use strict\";var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Queue=__webpack_require__(43);function DataSet(data,options){if(data&&!Array.isArray(data)){options=data;data=null}this._options=options||{};this._data={};this.length=0;this._fieldId=this._options.fieldId||\"id\";this._type={};if(this._options.type){var fields=(0,_keys2[\"default\"])(this._options.type);for(var i=0,len=fields.length;i<len;i++){var field=fields[i];var value=this._options.type[field];if(value==\"Date\"||value==\"ISODate\"||value==\"ASPDate\"){this._type[field]=\"Date\"}else{this._type[field]=value}}}this._subscribers={};if(data){this.add(data)}this.setOptions(options)}DataSet.prototype.setOptions=function(options){if(options&&options.queue!==undefined){if(options.queue===false){if(this._queue){this._queue.destroy();delete this._queue}}else{if(!this._queue){this._queue=Queue.extend(this,{replace:[\"add\",\"update\",\"remove\"]})}if((0,_typeof3[\"default\"])(options.queue)===\"object\"){this._queue.setOptions(options.queue)}}}};DataSet.prototype.on=function(event,callback){var subscribers=this._subscribers[event];if(!subscribers){subscribers=[];this._subscribers[event]=subscribers}subscribers.push({callback:callback})};DataSet.prototype.off=function(event,callback){var subscribers=this._subscribers[event];if(subscribers){this._subscribers[event]=subscribers.filter(function(listener){return listener.callback!=callback})}};DataSet.prototype._trigger=function(event,params,senderId){if(event==\"*\"){throw new Error(\"Cannot trigger event *\")}var subscribers=[];if(event in this._subscribers){subscribers=subscribers.concat(this._subscribers[event])}if(\"*\"in this._subscribers){subscribers=subscribers.concat(this._subscribers[\"*\"])}for(var i=0,len=subscribers.length;i<len;i++){var subscriber=subscribers[i];if(subscriber.callback){subscriber.callback(event,params,senderId||null)}}};DataSet.prototype.add=function(data,senderId){var addedIds=[],id,me=this;if(Array.isArray(data)){for(var i=0,len=data.length;i<len;i++){id=me._addItem(data[i]);addedIds.push(id)}}else if(data&&(typeof data===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(data))===\"object\"){id=me._addItem(data);addedIds.push(id)}else{throw new Error(\"Unknown dataType\")}if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}return addedIds};DataSet.prototype.update=function(data,senderId){var addedIds=[];var updatedIds=[];var oldData=[];var updatedData=[];var me=this;var fieldId=me._fieldId;var addOrUpdate=function addOrUpdate(item){var id=item[fieldId];if(me._data[id]){var oldItem=util.extend({},me._data[id]);id=me._updateItem(item);updatedIds.push(id);updatedData.push(item);oldData.push(oldItem)}else{id=me._addItem(item);addedIds.push(id)}};if(Array.isArray(data)){for(var i=0,len=data.length;i<len;i++){if(data[i]&&(0,_typeof3[\"default\"])(data[i])===\"object\"){addOrUpdate(data[i])}else{console.warn(\"Ignoring input item, which is not an object at index \"+i)}}}else if(data&&(typeof data===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(data))===\"object\"){addOrUpdate(data)}else{throw new Error(\"Unknown dataType\")}if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}if(updatedIds.length){var props={items:updatedIds,oldData:oldData,data:updatedData};this._trigger(\"update\",props,senderId)}return addedIds.concat(updatedIds)};DataSet.prototype.get=function(args){var me=this;var id,ids,options;var firstType=util.getType(arguments[0]);if(firstType==\"String\"||firstType==\"Number\"){id=arguments[0];options=arguments[1]}else if(firstType==\"Array\"){\nids=arguments[0];options=arguments[1]}else{options=arguments[0]}var returnType;if(options&&options.returnType){var allowedValues=[\"Array\",\"Object\"];returnType=allowedValues.indexOf(options.returnType)==-1?\"Array\":options.returnType}else{returnType=\"Array\"}var type=options&&options.type||this._options.type;var filter=options&&options.filter;var items=[],item,itemIds,itemId,i,len;if(id!=undefined){item=me._getItem(id,type);if(item&&filter&&!filter(item)){item=null}}else if(ids!=undefined){for(i=0,len=ids.length;i<len;i++){item=me._getItem(ids[i],type);if(!filter||filter(item)){items.push(item)}}}else{itemIds=(0,_keys2[\"default\"])(this._data);for(i=0,len=itemIds.length;i<len;i++){itemId=itemIds[i];item=me._getItem(itemId,type);if(!filter||filter(item)){items.push(item)}}}if(options&&options.order&&id==undefined){this._sort(items,options.order)}if(options&&options.fields){var fields=options.fields;if(id!=undefined){item=this._filterFields(item,fields)}else{for(i=0,len=items.length;i<len;i++){items[i]=this._filterFields(items[i],fields)}}}if(returnType==\"Object\"){var result={},resultant;for(i=0,len=items.length;i<len;i++){resultant=items[i];result[resultant.id]=resultant}return result}else{if(id!=undefined){return item}else{return items}}};DataSet.prototype.getIds=function(options){var data=this._data,filter=options&&options.filter,order=options&&options.order,type=options&&options.type||this._options.type,itemIds=(0,_keys2[\"default\"])(data),i,len,id,item,items,ids=[];if(filter){if(order){items=[];for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(filter(item)){items.push(item)}}this._sort(items,order);for(i=0,len=items.length;i<len;i++){ids.push(items[i][this._fieldId])}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(filter(item)){ids.push(item[this._fieldId])}}}}else{if(order){items=[];for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];items.push(data[id])}this._sort(items,order);for(i=0,len=items.length;i<len;i++){ids.push(items[i][this._fieldId])}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=data[id];ids.push(item[this._fieldId])}}}return ids};DataSet.prototype.getDataSet=function(){return this};DataSet.prototype.forEach=function(callback,options){var filter=options&&options.filter,type=options&&options.type||this._options.type,data=this._data,itemIds=(0,_keys2[\"default\"])(data),i,len,item,id;if(options&&options.order){var items=this.get(options);for(i=0,len=items.length;i<len;i++){item=items[i];id=item[this._fieldId];callback(item,id)}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(!filter||filter(item)){callback(item,id)}}}};DataSet.prototype.map=function(callback,options){var filter=options&&options.filter,type=options&&options.type||this._options.type,mappedItems=[],data=this._data,itemIds=(0,_keys2[\"default\"])(data),i,len,id,item;for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(!filter||filter(item)){mappedItems.push(callback(item,id))}}if(options&&options.order){this._sort(mappedItems,options.order)}return mappedItems};DataSet.prototype._filterFields=function(item,fields){if(!item){return item}var filteredItem={},itemFields=(0,_keys2[\"default\"])(item),len=itemFields.length,i,field;if(Array.isArray(fields)){for(i=0;i<len;i++){field=itemFields[i];if(fields.indexOf(field)!=-1){filteredItem[field]=item[field]}}}else{for(i=0;i<len;i++){field=itemFields[i];if(fields.hasOwnProperty(field)){filteredItem[fields[field]]=item[field]}}}return filteredItem};DataSet.prototype._sort=function(items,order){if(util.isString(order)){var name=order;items.sort(function(a,b){var av=a[name];var bv=b[name];return av>bv?1:av<bv?-1:0})}else if(typeof order===\"function\"){items.sort(order)}else{throw new TypeError(\"Order must be a function or a string\")}};DataSet.prototype.remove=function(id,senderId){var removedIds=[],removedItems=[],ids=[],i,len,itemId,item;ids=Array.isArray(id)?id:[id];for(i=0,len=ids.length;i<len;i++){item=this._remove(ids[i]);if(item){itemId=item[this._fieldId];if(itemId!=undefined){removedIds.push(itemId);removedItems.push(item)}}}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems},senderId)}return removedIds};DataSet.prototype._remove=function(id){var item,ident;if(util.isNumber(id)||util.isString(id)){ident=id}else if(id&&(typeof id===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(id))===\"object\"){ident=id[this._fieldId]}if(ident!==undefined&&this._data[ident]){item=this._data[ident];delete this._data[ident];this.length--;return item}return null};DataSet.prototype.clear=function(senderId){var i,len;var ids=(0,_keys2[\"default\"])(this._data);var items=[];for(i=0,len=ids.length;i<len;i++){items.push(this._data[ids[i]])}this._data={};this.length=0;this._trigger(\"remove\",{items:ids,oldData:items},senderId);return ids};DataSet.prototype.max=function(field){var data=this._data,itemIds=(0,_keys2[\"default\"])(data),max=null,maxField=null,i,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var itemField=item[field];if(itemField!=null&&(!max||itemField>maxField)){max=item;maxField=itemField}}return max};DataSet.prototype.min=function(field){var data=this._data,itemIds=(0,_keys2[\"default\"])(data),min=null,minField=null,i,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var itemField=item[field];if(itemField!=null&&(!min||itemField<minField)){min=item;minField=itemField}}return min};DataSet.prototype.distinct=function(field){var data=this._data;var itemIds=(0,_keys2[\"default\"])(data);var values=[];var fieldType=this._options.type&&this._options.type[field]||null;var count=0;var i,j,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var value=item[field];var exists=false;for(j=0;j<count;j++){if(values[j]==value){exists=true;break}}if(!exists&&value!==undefined){values[count]=value;count++}}if(fieldType){for(i=0,len=values.length;i<len;i++){values[i]=util.convert(values[i],fieldType)}}return values};DataSet.prototype._addItem=function(item){var id=item[this._fieldId];if(id!=undefined){if(this._data[id]){throw new Error(\"Cannot add item: item with id \"+id+\" already exists\")}}else{id=util.randomUUID();item[this._fieldId]=id}var d={},fields=(0,_keys2[\"default\"])(item),i,len;for(i=0,len=fields.length;i<len;i++){var field=fields[i];var fieldType=this._type[field];d[field]=util.convert(item[field],fieldType)}this._data[id]=d;this.length++;return id};DataSet.prototype._getItem=function(id,types){var field,value,i,len;var raw=this._data[id];if(!raw){return null}var converted={},fields=(0,_keys2[\"default\"])(raw);if(types){for(i=0,len=fields.length;i<len;i++){field=fields[i];value=raw[field];converted[field]=util.convert(value,types[field])}}else{for(i=0,len=fields.length;i<len;i++){field=fields[i];value=raw[field];converted[field]=value}}if(!converted[this._fieldId]){converted[this._fieldId]=raw.id}return converted};DataSet.prototype._updateItem=function(item){var id=item[this._fieldId];if(id==undefined){throw new Error(\"Cannot update item: item has no id (item: \"+(0,_stringify2[\"default\"])(item)+\")\")}var d=this._data[id];if(!d){throw new Error(\"Cannot update item: no item with id \"+id+\" found\")}var fields=(0,_keys2[\"default\"])(item);for(var i=0,len=fields.length;i<len;i++){var field=fields[i];var fieldType=this._type[field];d[field]=util.convert(item[field],fieldType)}return id};module.exports=DataSet},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);function DataView(data,options){this._data=null;this._ids={};this.length=0;this._options=options||{};this._fieldId=\"id\";this._subscribers={};var me=this;this.listener=function(){me._onEvent.apply(me,arguments)};this.setData(data)}DataView.prototype.setData=function(data){var ids,id,i,len,items;if(this._data){if(this._data.off){this._data.off(\"*\",this.listener)}ids=this._data.getIds({filter:this._options&&this._options.filter});items=[];for(i=0,len=ids.length;i<len;i++){items.push(this._data._data[ids[i]])}this._ids={};this.length=0;this._trigger(\"remove\",{items:ids,oldData:items})}this._data=data;if(this._data){this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||\"id\";ids=this._data.getIds({filter:this._options&&this._options.filter});for(i=0,len=ids.length;i<len;i++){id=ids[i];this._ids[id]=true}this.length=ids.length;this._trigger(\"add\",{items:ids});if(this._data.on){this._data.on(\"*\",this.listener)}}};DataView.prototype.refresh=function(){var id,i,len;var ids=this._data.getIds({filter:this._options&&this._options.filter}),oldIds=(0,_keys2[\"default\"])(this._ids),newIds={},addedIds=[],removedIds=[],removedItems=[];for(i=0,len=ids.length;i<len;i++){id=ids[i];newIds[id]=true;if(!this._ids[id]){addedIds.push(id);this._ids[id]=true}}for(i=0,len=oldIds.length;i<len;i++){id=oldIds[i];if(!newIds[id]){removedIds.push(id);removedItems.push(this._data._data[id]);delete this._ids[id]}}this.length+=addedIds.length-removedIds.length;if(addedIds.length){this._trigger(\"add\",{items:addedIds})}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems})}};DataView.prototype.get=function(args){var me=this;var ids,options,data;var firstType=util.getType(arguments[0]);if(firstType==\"String\"||firstType==\"Number\"||firstType==\"Array\"){ids=arguments[0];options=arguments[1];data=arguments[2]}else{options=arguments[0];data=arguments[1]}var viewOptions=util.extend({},this._options,options);if(this._options.filter&&options&&options.filter){viewOptions.filter=function(item){return me._options.filter(item)&&options.filter(item)}}var getArguments=[];if(ids!=undefined){getArguments.push(ids)}getArguments.push(viewOptions);getArguments.push(data);return this._data&&this._data.get.apply(this._data,getArguments)};DataView.prototype.getIds=function(options){var ids;if(this._data){var defaultFilter=this._options.filter;var filter;if(options&&options.filter){if(defaultFilter){filter=function filter(item){return defaultFilter(item)&&options.filter(item)}}else{filter=options.filter}}else{filter=defaultFilter}ids=this._data.getIds({filter:filter,order:options&&options.order})}else{ids=[]}return ids};DataView.prototype.map=function(callback,options){var mappedItems=[];if(this._data){var defaultFilter=this._options.filter;var filter;if(options&&options.filter){if(defaultFilter){filter=function filter(item){return defaultFilter(item)&&options.filter(item)}}else{filter=options.filter}}else{filter=defaultFilter}mappedItems=this._data.map(callback,{filter:filter,order:options&&options.order})}else{mappedItems=[]}return mappedItems};DataView.prototype.getDataSet=function(){var dataSet=this;while(dataSet instanceof DataView){dataSet=dataSet._data}return dataSet||null};DataView.prototype._onEvent=function(event,params,senderId){var i,len,id,item;var ids=params&¶ms.items;var addedIds=[],updatedIds=[],removedIds=[],oldItems=[],updatedItems=[],removedItems=[];if(ids&&this._data){switch(event){case\"add\":for(i=0,len=ids.length;i<len;i++){id=ids[i];item=this.get(id);if(item){this._ids[id]=true;addedIds.push(id)}}break;case\"update\":for(i=0,len=ids.length;i<len;i++){id=ids[i];item=this.get(id);if(item){if(this._ids[id]){updatedIds.push(id);updatedItems.push(params.data[i]);oldItems.push(params.oldData[i])}else{this._ids[id]=true;addedIds.push(id)}}else{if(this._ids[id]){delete this._ids[id];removedIds.push(id);removedItems.push(params.oldData[i])}else{}}}break;case\"remove\":for(i=0,len=ids.length;i<len;i++){id=ids[i];if(this._ids[id]){delete this._ids[id];removedIds.push(id);removedItems.push(params.oldData[i])}}break}this.length+=addedIds.length-removedIds.length;if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}if(updatedIds.length){this._trigger(\"update\",{items:updatedIds,oldData:oldItems,data:updatedItems},senderId)}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems},senderId)}}};DataView.prototype.on=DataSet.prototype.on;DataView.prototype.off=DataSet.prototype.off;DataView.prototype._trigger=DataSet.prototype._trigger;DataView.prototype.subscribe=DataView.prototype.on;DataView.prototype.unsubscribe=DataView.prototype.off;module.exports=DataView},function(module,exports,__webpack_require__){var store=__webpack_require__(57)(\"wks\");var uid=__webpack_require__(40);var Symbol=__webpack_require__(18).Symbol;var USE_SYMBOL=typeof Symbol==\"function\";var $exports=module.exports=function(name){return store[name]||(store[name]=USE_SYMBOL&&Symbol[name]||(USE_SYMBOL?Symbol:uid)(\"Symbol.\"+name))};$exports.store=store},function(module,exports,__webpack_require__){\"use strict\";exports.prepareElements=function(JSONcontainer){for(var elementType in JSONcontainer){if(JSONcontainer.hasOwnProperty(elementType)){JSONcontainer[elementType].redundant=JSONcontainer[elementType].used;JSONcontainer[elementType].used=[]}}};exports.cleanupElements=function(JSONcontainer){for(var elementType in JSONcontainer){if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant){for(var i=0;i<JSONcontainer[elementType].redundant.length;i++){JSONcontainer[elementType].redundant[i].parentNode.removeChild(JSONcontainer[elementType].redundant[i])}JSONcontainer[elementType].redundant=[]}}}};exports.resetElements=function(JSONcontainer){exports.prepareElements(JSONcontainer);exports.cleanupElements(JSONcontainer);exports.prepareElements(JSONcontainer)};exports.getSVGElement=function(elementType,JSONcontainer,svgContainer){var element;if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant.length>0){element=JSONcontainer[elementType].redundant[0];JSONcontainer[elementType].redundant.shift()}else{element=document.createElementNS(\"http://www.w3.org/2000/svg\",elementType);svgContainer.appendChild(element)}}else{element=document.createElementNS(\"http://www.w3.org/2000/svg\",elementType);JSONcontainer[elementType]={used:[],redundant:[]};svgContainer.appendChild(element)}JSONcontainer[elementType].used.push(element);return element};exports.getDOMElement=function(elementType,JSONcontainer,DOMContainer,insertBefore){var element;if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant.length>0){element=JSONcontainer[elementType].redundant[0];JSONcontainer[elementType].redundant.shift()}else{element=document.createElement(elementType);if(insertBefore!==undefined){DOMContainer.insertBefore(element,insertBefore)}else{DOMContainer.appendChild(element)}}}else{element=document.createElement(elementType);JSONcontainer[elementType]={used:[],redundant:[]};if(insertBefore!==undefined){DOMContainer.insertBefore(element,insertBefore)}else{DOMContainer.appendChild(element)}}JSONcontainer[elementType].used.push(element);return element};exports.drawPoint=function(x,y,groupTemplate,JSONcontainer,svgContainer,labelObj){var point;if(groupTemplate.style==\"circle\"){point=exports.getSVGElement(\"circle\",JSONcontainer,svgContainer);point.setAttributeNS(null,\"cx\",x);point.setAttributeNS(null,\"cy\",y);point.setAttributeNS(null,\"r\",.5*groupTemplate.size)}else{point=exports.getSVGElement(\"rect\",JSONcontainer,svgContainer);point.setAttributeNS(null,\"x\",x-.5*groupTemplate.size);point.setAttributeNS(null,\"y\",y-.5*groupTemplate.size);point.setAttributeNS(null,\"width\",groupTemplate.size);point.setAttributeNS(null,\"height\",groupTemplate.size)}if(groupTemplate.styles!==undefined){point.setAttributeNS(null,\"style\",groupTemplate.styles)}point.setAttributeNS(null,\"class\",groupTemplate.className+\" vis-point\");if(labelObj){var label=exports.getSVGElement(\"text\",JSONcontainer,svgContainer);if(labelObj.xOffset){x=x+labelObj.xOffset}if(labelObj.yOffset){y=y+labelObj.yOffset}if(labelObj.content){label.textContent=labelObj.content}if(labelObj.className){label.setAttributeNS(null,\"class\",labelObj.className+\" vis-label\")}label.setAttributeNS(null,\"x\",x);label.setAttributeNS(null,\"y\",y)}return point};exports.drawBar=function(x,y,width,height,className,JSONcontainer,svgContainer,style){if(height!=0){if(height<0){height*=-1;y-=height}var rect=exports.getSVGElement(\"rect\",JSONcontainer,svgContainer);rect.setAttributeNS(null,\"x\",x-.5*width);rect.setAttributeNS(null,\"y\",y);rect.setAttributeNS(null,\"width\",width);rect.setAttributeNS(null,\"height\",height);rect.setAttributeNS(null,\"class\",className);if(style){rect.setAttributeNS(null,\"style\",style)}}}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.printStyle=undefined;var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var errorFound=false;var allOptions=void 0;var printStyle=\"background: #FFeeee; color: #dd0000\";var Validator=function(){function Validator(){(0,_classCallCheck3[\"default\"])(this,Validator)}(0,_createClass3[\"default\"])(Validator,null,[{key:\"validate\",value:function validate(options,referenceOptions,subObject){errorFound=false;allOptions=referenceOptions;var usedOptions=referenceOptions;if(subObject!==undefined){usedOptions=referenceOptions[subObject]}Validator.parse(options,usedOptions,[]);return errorFound}},{key:\"parse\",value:function parse(options,referenceOptions,path){for(var option in options){if(options.hasOwnProperty(option)){Validator.check(option,options,referenceOptions,path)}}}},{key:\"check\",value:function check(option,options,referenceOptions,path){if(referenceOptions[option]===undefined&&referenceOptions.__any__===undefined){Validator.getSuggestion(option,referenceOptions,path);return}var referenceOption=option;var is_object=true;if(referenceOptions[option]===undefined&&referenceOptions.__any__!==undefined){referenceOption=\"__any__\";is_object=Validator.getType(options[option])===\"object\"}else{}var refOptionObj=referenceOptions[referenceOption];if(is_object&&refOptionObj.__type__!==undefined){refOptionObj=refOptionObj.__type__}Validator.checkFields(option,options,referenceOptions,referenceOption,refOptionObj,path)}},{key:\"checkFields\",value:function checkFields(option,options,referenceOptions,referenceOption,refOptionObj,path){var log=function log(message){console.log(\"%c\"+message+Validator.printLocation(path,option),printStyle)};var optionType=Validator.getType(options[option]);var refOptionType=refOptionObj[optionType];if(refOptionType!==undefined){if(Validator.getType(refOptionType)===\"array\"&&refOptionType.indexOf(options[option])===-1){log('Invalid option detected in \"'+option+'\".'+\" Allowed values are:\"+Validator.print(refOptionType)+' not \"'+options[option]+'\". ');errorFound=true}else if(optionType===\"object\"&&referenceOption!==\"__any__\"){path=util.copyAndExtendArray(path,option);Validator.parse(options[option],referenceOptions[referenceOption],path)}}else if(refOptionObj[\"any\"]===undefined){log('Invalid type received for \"'+option+'\". Expected: '+Validator.print((0,_keys2[\"default\"])(refOptionObj))+\". Received [\"+optionType+'] \"'+options[option]+'\"');errorFound=true}}},{key:\"getType\",value:function getType(object){var type=typeof object===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(object);if(type===\"object\"){if(object===null){return\"null\"}if(object instanceof Boolean){return\"boolean\"}if(object instanceof Number){return\"number\"}if(object instanceof String){return\"string\"}if(Array.isArray(object)){return\"array\"}if(object instanceof Date){return\"date\"}if(object.nodeType!==undefined){return\"dom\"}if(object._isAMomentObject===true){return\"moment\"}return\"object\"}else if(type===\"number\"){return\"number\"}else if(type===\"boolean\"){return\"boolean\"}else if(type===\"string\"){return\"string\"}else if(type===undefined){return\"undefined\"}return type}},{key:\"getSuggestion\",value:function getSuggestion(option,options,path){var localSearch=Validator.findInOptions(option,options,path,false);var globalSearch=Validator.findInOptions(option,allOptions,[],true);var localSearchThreshold=8;var globalSearchThreshold=4;var msg=void 0;if(localSearch.indexMatch!==undefined){msg=\" in \"+Validator.printLocation(localSearch.path,option,\"\")+'Perhaps it was incomplete? Did you mean: \"'+localSearch.indexMatch+'\"?\\n\\n'}else if(globalSearch.distance<=globalSearchThreshold&&localSearch.distance>globalSearch.distance){msg=\" in \"+Validator.printLocation(localSearch.path,option,\"\")+\"Perhaps it was misplaced? Matching option found at: \"+Validator.printLocation(globalSearch.path,globalSearch.closestMatch,\"\")}else if(localSearch.distance<=localSearchThreshold){msg='. Did you mean \"'+localSearch.closestMatch+'\"?'+Validator.printLocation(localSearch.path,option)}else{msg=\". Did you mean one of these: \"+Validator.print((0,_keys2[\"default\"])(options))+Validator.printLocation(path,option)}console.log('%cUnknown option detected: \"'+option+'\"'+msg,printStyle);errorFound=true}},{key:\"findInOptions\",value:function findInOptions(option,options,path){var recursive=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;var min=1e9;var closestMatch=\"\";var closestMatchPath=[];var lowerCaseOption=option.toLowerCase();var indexMatch=undefined;for(var op in options){var distance=void 0;if(options[op].__type__!==undefined&&recursive===true){var result=Validator.findInOptions(option,options[op],util.copyAndExtendArray(path,op));if(min>result.distance){closestMatch=result.closestMatch;closestMatchPath=result.path;min=result.distance;indexMatch=result.indexMatch}}else{if(op.toLowerCase().indexOf(lowerCaseOption)!==-1){indexMatch=op}distance=Validator.levenshteinDistance(option,op);if(min>distance){closestMatch=op;closestMatchPath=util.copyArray(path);min=distance}}}return{closestMatch:closestMatch,path:closestMatchPath,distance:min,indexMatch:indexMatch}}},{key:\"printLocation\",value:function printLocation(path,option){var prefix=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"Problem value found at: \\n\";var str=\"\\n\\n\"+prefix+\"options = {\\n\";for(var i=0;i<path.length;i++){for(var j=0;j<i+1;j++){str+=\" \"}str+=path[i]+\": {\\n\"}for(var _j=0;_j<path.length+1;_j++){str+=\" \"}str+=option+\"\\n\";for(var _i=0;_i<path.length+1;_i++){for(var _j2=0;_j2<path.length-_i;_j2++){str+=\" \"}str+=\"}\\n\"}return str+\"\\n\\n\"}},{key:\"print\",value:function print(options){return(0,_stringify2[\"default\"])(options).replace(/(\\\")|(\\[)|(\\])|(,\"__type__\")/g,\"\").replace(/(\\,)/g,\", \")}},{key:\"levenshteinDistance\",value:function levenshteinDistance(a,b){if(a.length===0)return b.length;if(b.length===0)return a.length;var matrix=[];var i;for(i=0;i<=b.length;i++){matrix[i]=[i]}var j;for(j=0;j<=a.length;j++){matrix[0][j]=j}for(i=1;i<=b.length;i++){for(j=1;j<=a.length;j++){if(b.charAt(i-1)==a.charAt(j-1)){matrix[i][j]=matrix[i-1][j-1]}else{matrix[i][j]=Math.min(matrix[i-1][j-1]+1,Math.min(matrix[i][j-1]+1,matrix[i-1][j]+1))}}}return matrix[b.length][a.length]}}]);return Validator}();exports[\"default\"]=Validator;exports.printStyle=printStyle},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);function Component(body,options){this.options=null;this.props=null}Component.prototype.setOptions=function(options){if(options){util.extend(this.options,options)}};Component.prototype.redraw=function(){return false};Component.prototype.destroy=function(){};Component.prototype._isResized=function(){var resized=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;this.props._previousWidth=this.props.width;this.props._previousHeight=this.props.height;return resized};module.exports=Component},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var core=__webpack_require__(7);var ctx=__webpack_require__(80);var hide=__webpack_require__(26);var PROTOTYPE=\"prototype\";var $export=function(type,name,source){var IS_FORCED=type&$export.F;var IS_GLOBAL=type&$export.G;var IS_STATIC=type&$export.S;var IS_PROTO=type&$export.P;var IS_BIND=type&$export.B;var IS_WRAP=type&$export.W;var exports=IS_GLOBAL?core:core[name]||(core[name]={});var expProto=exports[PROTOTYPE];var target=IS_GLOBAL?global:IS_STATIC?global[name]:(global[name]||{})[PROTOTYPE];var key,own,out;if(IS_GLOBAL)source=name;for(key in source){own=!IS_FORCED&&target&&target[key]!==undefined;if(own&&key in exports)continue;out=own?target[key]:source[key];exports[key]=IS_GLOBAL&&typeof target[key]!=\"function\"?source[key]:IS_BIND&&own?ctx(out,global):IS_WRAP&&target[key]==out?function(C){var F=function(a,b,c){if(this instanceof C){switch(arguments.length){case 0:return new C;case 1:return new C(a);case 2:return new C(a,b)}return new C(a,b,c)}return C.apply(this,arguments)};F[PROTOTYPE]=C[PROTOTYPE];return F}(out):IS_PROTO&&typeof out==\"function\"?ctx(Function.call,out):out;if(IS_PROTO){(exports.virtual||(exports.virtual={}))[key]=out;if(type&$export.R&&expProto&&!expProto[key])hide(expProto,key,out)}}};$export.F=1;$export.G=2;$export.S=4;$export.P=8;$export.B=16;$export.W=32;$export.U=64;$export.R=128;module.exports=$export},function(module,exports){var global=module.exports=typeof window!=\"undefined\"&&window.Math==Math?window:typeof self!=\"undefined\"&&self.Math==Math?self:Function(\"return this\")();if(typeof __g==\"number\")__g=global},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(160),__esModule:true}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var IE8_DOM_DEFINE=__webpack_require__(81);var toPrimitive=__webpack_require__(53);var dP=Object.defineProperty;exports.f=__webpack_require__(21)?Object.defineProperty:function defineProperty(O,P,Attributes){anObject(O);P=toPrimitive(P,true);anObject(Attributes);if(IE8_DOM_DEFINE)try{return dP(O,P,Attributes)}catch(e){}if(\"get\"in Attributes||\"set\"in Attributes)throw TypeError(\"Accessors not supported!\");if(\"value\"in Attributes)O[P]=Attributes.value;return O}},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(28)(function(){return Object.defineProperty({},\"a\",{get:function(){return 7}}).a!=7})},function(module,exports){var hasOwnProperty={}.hasOwnProperty;module.exports=function(it,key){return hasOwnProperty.call(it,key)}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var NodeBase=function(){function NodeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,NodeBase);this.body=body;this.labelModule=labelModule;this.setOptions(options);this.top=undefined;this.left=undefined;this.height=undefined;this.width=undefined;this.radius=undefined;this.margin=undefined;this.refreshNeeded=true;this.boundingBox={top:0,left:0,right:0,bottom:0}}(0,_createClass3[\"default\"])(NodeBase,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"_setMargins\",value:function _setMargins(labelModule){this.margin={};if(this.options.margin){if((0,_typeof3[\"default\"])(this.options.margin)==\"object\"){this.margin.top=this.options.margin.top;this.margin.right=this.options.margin.right;this.margin.bottom=this.options.margin.bottom;this.margin.left=this.options.margin.left}else{this.margin.top=this.options.margin;this.margin.right=this.options.margin;this.margin.bottom=this.options.margin;this.margin.left=this.options.margin}}labelModule.adjustSizes(this.margin)}},{key:\"_distanceToBorder\",value:function _distanceToBorder(ctx,angle){var borderWidth=this.options.borderWidth;this.resize(ctx);return Math.min(Math.abs(this.width/2/Math.cos(angle)),Math.abs(this.height/2/Math.sin(angle)))+borderWidth}},{key:\"enableShadow\",value:function enableShadow(ctx,values){if(values.shadow){ctx.shadowColor=values.shadowColor;ctx.shadowBlur=values.shadowSize;ctx.shadowOffsetX=values.shadowX;ctx.shadowOffsetY=values.shadowY}}},{key:\"disableShadow\",value:function disableShadow(ctx,values){if(values.shadow){ctx.shadowColor=\"rgba(0,0,0,0)\";ctx.shadowBlur=0;ctx.shadowOffsetX=0;ctx.shadowOffsetY=0}}},{key:\"enableBorderDashes\",value:function enableBorderDashes(ctx,values){if(values.borderDashes!==false){if(ctx.setLineDash!==undefined){var dashes=values.borderDashes;if(dashes===true){dashes=[5,15]}ctx.setLineDash(dashes)}else{console.warn(\"setLineDash is not supported in this browser. The dashed borders cannot be used.\");this.options.shapeProperties.borderDashes=false;values.borderDashes=false}}}},{key:\"disableBorderDashes\",value:function disableBorderDashes(ctx,values){if(values.borderDashes!==false){if(ctx.setLineDash!==undefined){ctx.setLineDash([0])}else{console.warn(\"setLineDash is not supported in this browser. The dashed borders cannot be used.\");this.options.shapeProperties.borderDashes=false;values.borderDashes=false}}}},{key:\"needsRefresh\",value:function needsRefresh(selected,hover){if(this.refreshNeeded===true){this.refreshNeeded=false;return true}return this.width===undefined||this.labelModule.differentState(selected,hover)}},{key:\"initContextForDraw\",value:function initContextForDraw(ctx,values){var borderWidth=values.borderWidth/this.body.view.scale;ctx.lineWidth=Math.min(this.width,borderWidth);ctx.strokeStyle=values.borderColor;ctx.fillStyle=values.color}},{key:\"performStroke\",value:function performStroke(ctx,values){var borderWidth=values.borderWidth/this.body.view.scale;ctx.save();if(borderWidth>0){this.enableBorderDashes(ctx,values);ctx.stroke();this.disableBorderDashes(ctx,values)}ctx.restore()}},{key:\"performFill\",value:function performFill(ctx,values){this.enableShadow(ctx,values);ctx.fill();this.disableShadow(ctx,values);this.performStroke(ctx,values)}},{key:\"_addBoundingBoxMargin\",value:function _addBoundingBoxMargin(margin){this.boundingBox.left-=margin;this.boundingBox.top-=margin;this.boundingBox.bottom+=margin;this.boundingBox.right+=margin}},{key:\"_updateBoundingBox\",value:function _updateBoundingBox(x,y,ctx,selected,hover){if(ctx!==undefined){this.resize(ctx,selected,hover)}this.left=x-this.width/2;this.top=y-this.height/2;this.boundingBox.left=this.left;this.boundingBox.top=this.top;this.boundingBox.bottom=this.top+this.height;this.boundingBox.right=this.left+this.width}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y,ctx,selected,hover){this._updateBoundingBox(x,y,ctx,selected,hover)}},{key:\"getDimensionsFromLabel\",value:function getDimensionsFromLabel(ctx,selected,hover){this.textSize=this.labelModule.getTextSize(ctx,selected,hover);var width=this.textSize.width;var height=this.textSize.height;var DEFAULT_SIZE=14;if(width===0){width=DEFAULT_SIZE;height=DEFAULT_SIZE}return{width:width,height:height}}}]);return NodeBase}();exports[\"default\"]=NodeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2)\n;var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ShapeBase=function(_NodeBase){(0,_inherits3[\"default\"])(ShapeBase,_NodeBase);function ShapeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,ShapeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(ShapeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(ShapeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(ShapeBase,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var values=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{size:this.options.size};if(this.needsRefresh(selected,hover)){this.labelModule.getTextSize(ctx,selected,hover);var size=2*values.size;this.width=size;this.height=size;this.radius=.5*this.width}}},{key:\"_drawShape\",value:function _drawShape(ctx,shape,sizeMultiplier,x,y,selected,hover,values){this.resize(ctx,selected,hover,values);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx[shape](x,y,values.size);this.performFill(ctx,values);if(this.options.label!==undefined){this.labelModule.calculateLabelSize(ctx,selected,hover,x,y,\"hanging\");var yLabel=y+.5*this.height+.5*this.labelModule.size.height;this.labelModule.draw(ctx,x,yLabel,selected,hover,\"hanging\")}this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size;if(this.options.label!==undefined&&this.labelModule.size.width>0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height)}}}]);return ShapeBase}(_NodeBase3[\"default\"]);exports[\"default\"]=ShapeBase},function(module,exports,__webpack_require__){var IObject=__webpack_require__(78);var defined=__webpack_require__(51);module.exports=function(it){return IObject(defined(it))}},function(module,exports,__webpack_require__){var dP=__webpack_require__(20);var createDesc=__webpack_require__(39);module.exports=__webpack_require__(21)?function(object,key,value){return dP.f(object,key,createDesc(1,value))}:function(object,key,value){object[key]=value;return object}},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);module.exports=function(it){if(!isObject(it))throw TypeError(it+\" is not an object!\");return it}},function(module,exports){module.exports=function(exec){try{return!!exec()}catch(e){return true}}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(138),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _isIterable2=__webpack_require__(188);var _isIterable3=_interopRequireDefault(_isIterable2);var _getIterator2=__webpack_require__(77);var _getIterator3=_interopRequireDefault(_getIterator2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(){function sliceIterator(arr,i){var _arr=[];var _n=true;var _d=false;var _e=undefined;try{for(var _i=(0,_getIterator3.default)(arr),_s;!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i[\"return\"])_i[\"return\"]()}finally{if(_d)throw _e}}return _arr}return function(arr,i){if(Array.isArray(arr)){return arr}else if((0,_isIterable3.default)(Object(arr))){return sliceIterator(arr,i)}else{throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}}()},function(module,exports){module.exports={}},function(module,exports){module.exports=function(it){return typeof it===\"object\"?it!==null:typeof it===\"function\"}},function(module,exports,__webpack_require__){var $keys=__webpack_require__(84);var enumBugKeys=__webpack_require__(58);module.exports=Object.keys||function keys(O){return $keys(O,enumBugKeys)}},function(module,exports,__webpack_require__){\"use strict\";function Point3d(x,y,z){this.x=x!==undefined?x:0;this.y=y!==undefined?y:0;this.z=z!==undefined?z:0}Point3d.subtract=function(a,b){var sub=new Point3d;sub.x=a.x-b.x;sub.y=a.y-b.y;sub.z=a.z-b.z;return sub};Point3d.add=function(a,b){var sum=new Point3d;sum.x=a.x+b.x;sum.y=a.y+b.y;sum.z=a.z+b.z;return sum};Point3d.avg=function(a,b){return new Point3d((a.x+b.x)/2,(a.y+b.y)/2,(a.z+b.z)/2)};Point3d.crossProduct=function(a,b){var crossproduct=new Point3d;crossproduct.x=a.y*b.z-a.z*b.y;crossproduct.y=a.z*b.x-a.x*b.z;crossproduct.z=a.x*b.y-a.y*b.x;return crossproduct};Point3d.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)};module.exports=Point3d},function(module,exports,__webpack_require__){\"use strict\";var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(root,factory){if(true){!(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,__WEBPACK_AMD_DEFINE_RESULT__=typeof __WEBPACK_AMD_DEFINE_FACTORY__===\"function\"?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof exports===\"object\"){module.exports=factory()}else{root.keycharm=factory()}})(this,function(){function keycharm(options){var preventDefault=options&&options.preventDefault||false;var container=options&&options.container||window;var _exportFunctions={};var _bound={keydown:{},keyup:{}};var _keys={};var i;for(i=97;i<=122;i++){_keys[String.fromCharCode(i)]={code:65+(i-97),shift:false}}for(i=65;i<=90;i++){_keys[String.fromCharCode(i)]={code:i,shift:true}}for(i=0;i<=9;i++){_keys[\"\"+i]={code:48+i,shift:false}}for(i=1;i<=12;i++){_keys[\"F\"+i]={code:111+i,shift:false}}for(i=0;i<=9;i++){_keys[\"num\"+i]={code:96+i,shift:false}}_keys[\"num*\"]={code:106,shift:false};_keys[\"num+\"]={code:107,shift:false};_keys[\"num-\"]={code:109,shift:false};_keys[\"num/\"]={code:111,shift:false};_keys[\"num.\"]={code:110,shift:false};_keys[\"left\"]={code:37,shift:false};_keys[\"up\"]={code:38,shift:false};_keys[\"right\"]={code:39,shift:false};_keys[\"down\"]={code:40,shift:false};_keys[\"space\"]={code:32,shift:false};_keys[\"enter\"]={code:13,shift:false};_keys[\"shift\"]={code:16,shift:undefined};_keys[\"esc\"]={code:27,shift:false};_keys[\"backspace\"]={code:8,shift:false};_keys[\"tab\"]={code:9,shift:false};_keys[\"ctrl\"]={code:17,shift:false};_keys[\"alt\"]={code:18,shift:false};_keys[\"delete\"]={code:46,shift:false};_keys[\"pageup\"]={code:33,shift:false};_keys[\"pagedown\"]={code:34,shift:false};_keys[\"=\"]={code:187,shift:false};_keys[\"-\"]={code:189,shift:false};_keys[\"]\"]={code:221,shift:false};_keys[\"[\"]={code:219,shift:false};var down=function(event){handleEvent(event,\"keydown\")};var up=function(event){handleEvent(event,\"keyup\")};var handleEvent=function(event,type){if(_bound[type][event.keyCode]!==undefined){var bound=_bound[type][event.keyCode];for(var i=0;i<bound.length;i++){if(bound[i].shift===undefined){bound[i].fn(event)}else if(bound[i].shift==true&&event.shiftKey==true){bound[i].fn(event)}else if(bound[i].shift==false&&event.shiftKey==false){bound[i].fn(event)}}if(preventDefault==true){event.preventDefault()}}};_exportFunctions.bind=function(key,callback,type){if(type===undefined){type=\"keydown\"}if(_keys[key]===undefined){throw new Error(\"unsupported key: \"+key)}if(_bound[type][_keys[key].code]===undefined){_bound[type][_keys[key].code]=[]}_bound[type][_keys[key].code].push({fn:callback,shift:_keys[key].shift})};_exportFunctions.bindAll=function(callback,type){if(type===undefined){type=\"keydown\"}for(var key in _keys){if(_keys.hasOwnProperty(key)){_exportFunctions.bind(key,callback,type)}}};_exportFunctions.getKey=function(event){for(var key in _keys){if(_keys.hasOwnProperty(key)){if(event.shiftKey==true&&_keys[key].shift==true&&event.keyCode==_keys[key].code){return key}else if(event.shiftKey==false&&_keys[key].shift==false&&event.keyCode==_keys[key].code){return key}else if(event.keyCode==_keys[key].code&&key==\"shift\"){return key}}}return\"unknown key, currently not supported\"};_exportFunctions.unbind=function(key,callback,type){if(type===undefined){type=\"keydown\"}if(_keys[key]===undefined){throw new Error(\"unsupported key: \"+key)}if(callback!==undefined){var newBindings=[];var bound=_bound[type][_keys[key].code];if(bound!==undefined){for(var i=0;i<bound.length;i++){if(!(bound[i].fn==callback&&bound[i].shift==_keys[key].shift)){newBindings.push(_bound[type][_keys[key].code][i])}}}_bound[type][_keys[key].code]=newBindings}else{_bound[type][_keys[key].code]=[]}};_exportFunctions.reset=function(){_bound={keydown:{},keyup:{}}};_exportFunctions.destroy=function(){_bound={keydown:{},keyup:{}};container.removeEventListener(\"keydown\",down,true);container.removeEventListener(\"keyup\",up,true)};container.addEventListener(\"keydown\",down,true);container.addEventListener(\"keyup\",up,true);return _exportFunctions}return keycharm})},function(module,exports,__webpack_require__){\"use strict\";exports.convertHiddenOptions=function(moment,body,hiddenDates){if(hiddenDates&&!Array.isArray(hiddenDates)){return exports.convertHiddenOptions(moment,body,[hiddenDates])}body.hiddenDates=[];if(hiddenDates){if(Array.isArray(hiddenDates)==true){for(var i=0;i<hiddenDates.length;i++){if(hiddenDates[i].repeat===undefined){var dateItem={};dateItem.start=moment(hiddenDates[i].start).toDate().valueOf();dateItem.end=moment(hiddenDates[i].end).toDate().valueOf();body.hiddenDates.push(dateItem)}}body.hiddenDates.sort(function(a,b){return a.start-b.start})}}};exports.updateHiddenDates=function(moment,body,hiddenDates){if(hiddenDates&&!Array.isArray(hiddenDates)){return exports.updateHiddenDates(moment,body,[hiddenDates])}if(hiddenDates&&body.domProps.centerContainer.width!==undefined){exports.convertHiddenOptions(moment,body,hiddenDates);var start=moment(body.range.start);var end=moment(body.range.end);var totalRange=body.range.end-body.range.start;var pixelTime=totalRange/body.domProps.centerContainer.width;for(var i=0;i<hiddenDates.length;i++){if(hiddenDates[i].repeat!==undefined){var startDate=moment(hiddenDates[i].start);var endDate=moment(hiddenDates[i].end);if(startDate._d==\"Invalid Date\"){throw new Error(\"Supplied start date is not valid: \"+hiddenDates[i].start)}if(endDate._d==\"Invalid Date\"){throw new Error(\"Supplied end date is not valid: \"+hiddenDates[i].end)}var duration=endDate-startDate;if(duration>=4*pixelTime){var offset=0;var runUntil=end.clone();switch(hiddenDates[i].repeat){case\"daily\":if(startDate.day()!=endDate.day()){offset=1}startDate.dayOfYear(start.dayOfYear());startDate.year(start.year());startDate.subtract(7,\"days\");endDate.dayOfYear(start.dayOfYear());endDate.year(start.year());endDate.subtract(7-offset,\"days\");runUntil.add(1,\"weeks\");break;case\"weekly\":var dayOffset=endDate.diff(startDate,\"days\");var day=startDate.day();startDate.date(start.date());startDate.month(start.month());startDate.year(start.year());endDate=startDate.clone();startDate.day(day);endDate.day(day);endDate.add(dayOffset,\"days\");startDate.subtract(1,\"weeks\");endDate.subtract(1,\"weeks\");runUntil.add(1,\"weeks\");break;case\"monthly\":if(startDate.month()!=endDate.month()){offset=1}startDate.month(start.month());startDate.year(start.year());startDate.subtract(1,\"months\");endDate.month(start.month());endDate.year(start.year());endDate.subtract(1,\"months\");endDate.add(offset,\"months\");runUntil.add(1,\"months\");break;case\"yearly\":if(startDate.year()!=endDate.year()){offset=1}startDate.year(start.year());startDate.subtract(1,\"years\");endDate.year(start.year());endDate.subtract(1,\"years\");endDate.add(offset,\"years\");runUntil.add(1,\"years\");break;default:console.log(\"Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:\",hiddenDates[i].repeat);return}while(startDate<runUntil){body.hiddenDates.push({start:startDate.valueOf(),end:endDate.valueOf()});switch(hiddenDates[i].repeat){case\"daily\":startDate.add(1,\"days\");endDate.add(1,\"days\");break;case\"weekly\":startDate.add(1,\"weeks\");endDate.add(1,\"weeks\");break;case\"monthly\":startDate.add(1,\"months\");endDate.add(1,\"months\");break;case\"yearly\":startDate.add(1,\"y\");endDate.add(1,\"y\");break;default:console.log(\"Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:\",hiddenDates[i].repeat);return}}body.hiddenDates.push({start:startDate.valueOf(),end:endDate.valueOf()})}}}exports.removeDuplicates(body);var startHidden=exports.isHidden(body.range.start,body.hiddenDates);var endHidden=exports.isHidden(body.range.end,body.hiddenDates);var rangeStart=body.range.start;var rangeEnd=body.range.end;if(startHidden.hidden==true){rangeStart=body.range.startToFront==true?startHidden.startDate-1:startHidden.endDate+1}if(endHidden.hidden==true){rangeEnd=body.range.endToFront==true?endHidden.startDate-1:endHidden.endDate+1}if(startHidden.hidden==true||endHidden.hidden==true){body.range._applyRange(rangeStart,rangeEnd)}}};exports.removeDuplicates=function(body){var hiddenDates=body.hiddenDates;var safeDates=[];for(var i=0;i<hiddenDates.length;i++){for(var j=0;j<hiddenDates.length;j++){if(i!=j&&hiddenDates[j].remove!=true&&hiddenDates[i].remove!=true){if(hiddenDates[j].start>=hiddenDates[i].start&&hiddenDates[j].end<=hiddenDates[i].end){hiddenDates[j].remove=true}else if(hiddenDates[j].start>=hiddenDates[i].start&&hiddenDates[j].start<=hiddenDates[i].end){hiddenDates[i].end=hiddenDates[j].end;hiddenDates[j].remove=true}else if(hiddenDates[j].end>=hiddenDates[i].start&&hiddenDates[j].end<=hiddenDates[i].end){hiddenDates[i].start=hiddenDates[j].start;hiddenDates[j].remove=true}}}}for(i=0;i<hiddenDates.length;i++){if(hiddenDates[i].remove!==true){safeDates.push(hiddenDates[i])}}body.hiddenDates=safeDates;body.hiddenDates.sort(function(a,b){return a.start-b.start})};exports.printDates=function(dates){for(var i=0;i<dates.length;i++){console.log(i,new Date(dates[i].start),new Date(dates[i].end),dates[i].start,dates[i].end,dates[i].remove)}};exports.stepOverHiddenDates=function(moment,timeStep,previousTime){var stepInHidden=false;var currentValue=timeStep.current.valueOf();for(var i=0;i<timeStep.hiddenDates.length;i++){var startDate=timeStep.hiddenDates[i].start;var endDate=timeStep.hiddenDates[i].end;if(currentValue>=startDate&¤tValue<endDate){stepInHidden=true;break}}if(stepInHidden==true&¤tValue<timeStep._end.valueOf()&¤tValue!=previousTime){var prevValue=moment(previousTime);var newValue=moment(endDate);if(prevValue.year()!=newValue.year()){timeStep.switchedYear=true}else if(prevValue.month()!=newValue.month()){timeStep.switchedMonth=true}else if(prevValue.dayOfYear()!=newValue.dayOfYear()){timeStep.switchedDay=true}timeStep.current=newValue}};exports.toScreen=function(Core,time,width){var conversion;if(Core.body.hiddenDates.length==0){conversion=Core.range.conversion(width);return(time.valueOf()-conversion.offset)*conversion.scale}else{var hidden=exports.isHidden(time,Core.body.hiddenDates);if(hidden.hidden==true){time=hidden.startDate}var duration=exports.getHiddenDurationBetween(Core.body.hiddenDates,Core.range.start,Core.range.end);if(time<Core.range.start){conversion=Core.range.conversion(width,duration);var hiddenBeforeStart=exports.getHiddenDurationBeforeStart(Core.body.hiddenDates,time,conversion.offset);time=Core.options.moment(time).toDate().valueOf();time=time+hiddenBeforeStart;return-(conversion.offset-time.valueOf())*conversion.scale}else if(time>Core.range.end){var rangeAfterEnd={start:Core.range.start,end:time};time=exports.correctTimeForHidden(Core.options.moment,Core.body.hiddenDates,rangeAfterEnd,time);conversion=Core.range.conversion(width,duration);return(time.valueOf()-conversion.offset)*conversion.scale}else{time=exports.correctTimeForHidden(Core.options.moment,Core.body.hiddenDates,Core.range,time);conversion=Core.range.conversion(width,duration);return(time.valueOf()-conversion.offset)*conversion.scale}}};exports.toTime=function(Core,x,width){if(Core.body.hiddenDates.length==0){var conversion=Core.range.conversion(width);return new Date(x/conversion.scale+conversion.offset)}else{var hiddenDuration=exports.getHiddenDurationBetween(Core.body.hiddenDates,Core.range.start,Core.range.end);var totalDuration=Core.range.end-Core.range.start-hiddenDuration;var partialDuration=totalDuration*x/width;var accumulatedHiddenDuration=exports.getAccumulatedHiddenDuration(Core.body.hiddenDates,Core.range,partialDuration);return new Date(accumulatedHiddenDuration+partialDuration+Core.range.start)}};exports.getHiddenDurationBetween=function(hiddenDates,start,end){var duration=0;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=start&&endDate<end){duration+=endDate-startDate}}return duration};exports.getHiddenDurationBeforeStart=function(hiddenDates,start,end){var duration=0;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=start&&endDate<=end){duration+=endDate-startDate}}return duration};exports.correctTimeForHidden=function(moment,hiddenDates,range,time){time=moment(time).toDate().valueOf();time-=exports.getHiddenDurationBefore(moment,hiddenDates,range,time);return time};exports.getHiddenDurationBefore=function(moment,hiddenDates,range,time){var timeOffset=0;time=moment(time).toDate().valueOf();for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=range.start&&endDate<range.end){if(time>=endDate){timeOffset+=endDate-startDate}}}return timeOffset};exports.getAccumulatedHiddenDuration=function(hiddenDates,range,requiredDuration){var hiddenDuration=0;var duration=0;var previousPoint=range.start;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=range.start&&endDate<range.end){duration+=startDate-previousPoint;previousPoint=endDate;if(duration>=requiredDuration){break}else{hiddenDuration+=endDate-startDate}}}return hiddenDuration};exports.snapAwayFromHidden=function(hiddenDates,time,direction,correctionEnabled){var isHidden=exports.isHidden(time,hiddenDates);if(isHidden.hidden==true){if(direction<0){if(correctionEnabled==true){return isHidden.startDate-(isHidden.endDate-time)-1}else{return isHidden.startDate-1}}else{if(correctionEnabled==true){return isHidden.endDate+(time-isHidden.startDate)+1}else{return isHidden.endDate+1}}}else{return time}};exports.isHidden=function(time,hiddenDates){for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(time>=startDate&&time<endDate){return{hidden:true,startDate:startDate,endDate:endDate}}}return{hidden:false,startDate:startDate,endDate:endDate}}},function(module,exports,__webpack_require__){\"use strict\";exports.onTouch=function(hammer,callback){callback.inputHandler=function(event){if(event.isFirst){callback(event)}};hammer.on(\"hammer.input\",callback.inputHandler)};exports.onRelease=function(hammer,callback){callback.inputHandler=function(event){if(event.isFinal){callback(event)}};return hammer.on(\"hammer.input\",callback.inputHandler)};exports.offTouch=function(hammer,callback){hammer.off(\"hammer.input\",callback.inputHandler)};exports.offRelease=exports.offTouch;exports.disablePreventDefaultVertically=function(pinchRecognizer){var TOUCH_ACTION_PAN_Y=\"pan-y\";pinchRecognizer.getTouchAction=function(){return[TOUCH_ACTION_PAN_Y]};return pinchRecognizer}},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var moment=__webpack_require__(9);function Item(data,conversion,options){this.id=null;this.parent=null;this.data=data;this.dom=null;this.conversion=conversion||{};this.options=options||{};this.selected=false;this.displayed=false;this.groupShowing=true;this.dirty=true;this.top=null;this.right=null;this.left=null;this.width=null;this.height=null;this.editable=null;this._updateEditStatus()}Item.prototype.stack=true;Item.prototype.select=function(){this.selected=true;this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.unselect=function(){this.selected=false;this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.setData=function(data){var groupChanged=data.group!=undefined&&this.data.group!=data.group;if(groupChanged&&this.parent!=null){this.parent.itemSet._moveToGroup(this,data.group)}if(this.parent){this.parent.stackDirty=true}var subGroupChanged=data.subgroup!=undefined&&this.data.subgroup!=data.subgroup;if(subGroupChanged&&this.parent!=null){this.parent.changeSubgroup(this,this.data.subgroup,data.subgroup)}this.data=data;this._updateEditStatus();this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.setParent=function(parent){if(this.displayed){this.hide();this.parent=parent;if(this.parent){this.show()}}else{this.parent=parent}};Item.prototype.isVisible=function(range){return false};Item.prototype.show=function(){return false};Item.prototype.hide=function(){return false};Item.prototype.redraw=function(){};Item.prototype.repositionX=function(){};Item.prototype.repositionY=function(){};Item.prototype._repaintDragCenter=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragCenter){var me=this;var dragCenter=document.createElement(\"div\");dragCenter.className=\"vis-drag-center\";dragCenter.dragCenterItem=this;var hammer=new Hammer(dragCenter);hammer.on(\"tap\",function(event){me.parent.itemSet.body.emitter.emit(\"click\",{event:event,item:me.id})});hammer.on(\"doubletap\",function(event){event.stopPropagation();me.parent.itemSet._onUpdateItem(me);me.parent.itemSet.body.emitter.emit(\"doubleClick\",{event:event,item:me.id})});if(this.dom.box){if(this.dom.dragLeft){this.dom.box.insertBefore(dragCenter,this.dom.dragLeft)}else{this.dom.box.appendChild(dragCenter)}}else if(this.dom.point){this.dom.point.appendChild(dragCenter)}this.dom.dragCenter=dragCenter}else if(!this.selected&&this.dom.dragCenter){if(this.dom.dragCenter.parentNode){this.dom.dragCenter.parentNode.removeChild(this.dom.dragCenter)}this.dom.dragCenter=null}};Item.prototype._repaintDeleteButton=function(anchor){var editable=(this.options.editable.overrideItems||this.editable==null)&&this.options.editable.remove||!this.options.editable.overrideItems&&this.editable!=null&&this.editable.remove;if(this.selected&&editable&&!this.dom.deleteButton){var me=this;var deleteButton=document.createElement(\"div\");if(this.options.rtl){deleteButton.className=\"vis-delete-rtl\"}else{deleteButton.className=\"vis-delete\"}deleteButton.title=\"Delete this item\";new Hammer(deleteButton).on(\"tap\",function(event){event.stopPropagation();me.parent.removeFromDataSet(me)});anchor.appendChild(deleteButton);this.dom.deleteButton=deleteButton}else if(!this.selected&&this.dom.deleteButton){if(this.dom.deleteButton.parentNode){this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton)}this.dom.deleteButton=null}};Item.prototype._repaintOnItemUpdateTimeTooltip=function(anchor){if(!this.options.tooltipOnItemUpdateTime)return;var editable=(this.options.editable.updateTime||this.data.editable===true)&&this.data.editable!==false;if(this.selected&&editable&&!this.dom.onItemUpdateTimeTooltip){var onItemUpdateTimeTooltip=document.createElement(\"div\");onItemUpdateTimeTooltip.className=\"vis-onUpdateTime-tooltip\";anchor.appendChild(onItemUpdateTimeTooltip);this.dom.onItemUpdateTimeTooltip=onItemUpdateTimeTooltip}else if(!this.selected&&this.dom.onItemUpdateTimeTooltip){if(this.dom.onItemUpdateTimeTooltip.parentNode){this.dom.onItemUpdateTimeTooltip.parentNode.removeChild(this.dom.onItemUpdateTimeTooltip)}this.dom.onItemUpdateTimeTooltip=null}if(this.dom.onItemUpdateTimeTooltip){this.dom.onItemUpdateTimeTooltip.style.visibility=this.parent.itemSet.touchParams.itemIsDragging?\"visible\":\"hidden\";if(this.options.rtl){this.dom.onItemUpdateTimeTooltip.style.right=this.dom.content.style.right}else{this.dom.onItemUpdateTimeTooltip.style.left=this.dom.content.style.left}var tooltipOffset=50;var scrollTop=this.parent.itemSet.body.domProps.scrollTop;var itemDistanceFromTop;if(this.options.orientation.item==\"top\"){itemDistanceFromTop=this.top}else{itemDistanceFromTop=this.parent.height-this.top-this.height}var isCloseToTop=itemDistanceFromTop+this.parent.top-tooltipOffset<-scrollTop;if(isCloseToTop){this.dom.onItemUpdateTimeTooltip.style.bottom=\"\";this.dom.onItemUpdateTimeTooltip.style.top=this.height+2+\"px\"}else{this.dom.onItemUpdateTimeTooltip.style.top=\"\";this.dom.onItemUpdateTimeTooltip.style.bottom=this.height+2+\"px\"}var content;var templateFunction;if(this.options.tooltipOnItemUpdateTime&&this.options.tooltipOnItemUpdateTime.template){templateFunction=this.options.tooltipOnItemUpdateTime.template.bind(this);content=templateFunction(this.data)}else{content=\"start: \"+moment(this.data.start).format(\"MM/DD/YYYY hh:mm\");if(this.data.end){content+=\"<br> end: \"+moment(this.data.end).format(\"MM/DD/YYYY hh:mm\")}}this.dom.onItemUpdateTimeTooltip.innerHTML=content}};Item.prototype._updateContents=function(element){var content;var changed;var templateFunction;var itemVisibleFrameContent;var visibleFrameTemplateFunction;var itemData=this.parent.itemSet.itemsData.get(this.id);var frameElement=this.dom.box||this.dom.point;var itemVisibleFrameContentElement=frameElement.getElementsByClassName(\"vis-item-visible-frame\")[0];if(this.options.visibleFrameTemplate){visibleFrameTemplateFunction=this.options.visibleFrameTemplate.bind(this);itemVisibleFrameContent=visibleFrameTemplateFunction(itemData,frameElement)}else{itemVisibleFrameContent=\"\"}if(itemVisibleFrameContentElement){if(itemVisibleFrameContent instanceof Object&&!(itemVisibleFrameContent instanceof Element)){visibleFrameTemplateFunction(itemData,itemVisibleFrameContentElement)}else{changed=this._contentToString(this.itemVisibleFrameContent)!==this._contentToString(itemVisibleFrameContent);if(changed){if(itemVisibleFrameContent instanceof Element){itemVisibleFrameContentElement.innerHTML=\"\";itemVisibleFrameContentElement.appendChild(itemVisibleFrameContent)}else if(itemVisibleFrameContent!=undefined){itemVisibleFrameContentElement.innerHTML=itemVisibleFrameContent}else{if(!(this.data.type==\"background\"&&this.data.content===undefined)){throw new Error('Property \"content\" missing in item '+this.id)}}this.itemVisibleFrameContent=itemVisibleFrameContent}}}if(this.options.template){templateFunction=this.options.template.bind(this);content=templateFunction(itemData,element,this.data)}else{content=this.data.content}if(content instanceof Object&&!(content instanceof Element)){templateFunction(itemData,element)}else{changed=this._contentToString(this.content)!==this._contentToString(content);if(changed){if(content instanceof Element){element.innerHTML=\"\";element.appendChild(content)}else if(content!=undefined){element.innerHTML=content}else{if(!(this.data.type==\"background\"&&this.data.content===undefined)){throw new Error('Property \"content\" missing in item '+this.id)}}this.content=content}}};Item.prototype._updateDataAttributes=function(element){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var attributes=[];if(Array.isArray(this.options.dataAttributes)){attributes=this.options.dataAttributes}else if(this.options.dataAttributes==\"all\"){attributes=(0,_keys2[\"default\"])(this.data)}else{return}for(var i=0;i<attributes.length;i++){var name=attributes[i];var value=this.data[name];if(value!=null){element.setAttribute(\"data-\"+name,value)}else{element.removeAttribute(\"data-\"+name)}}}};Item.prototype._updateStyle=function(element){if(this.style){util.removeCssText(element,this.style);this.style=null}if(this.data.style){util.addCssText(element,this.data.style);this.style=this.data.style}};Item.prototype._contentToString=function(content){if(typeof content===\"string\")return content;if(content&&\"outerHTML\"in content)return content.outerHTML;return content};Item.prototype._updateEditStatus=function(){if(this.options){if(typeof this.options.editable===\"boolean\"){this.editable={updateTime:this.options.editable,updateGroup:this.options.editable,remove:this.options.editable}}else if((0,_typeof3[\"default\"])(this.options.editable)===\"object\"){this.editable={};util.selectiveExtend([\"updateTime\",\"updateGroup\",\"remove\"],this.editable,this.options.editable)}}if(!this.options||!this.options.editable||this.options.editable.overrideItems!==true){if(this.data){if(typeof this.data.editable===\"boolean\"){this.editable={updateTime:this.data.editable,updateGroup:this.data.editable,remove:this.data.editable}}else if((0,_typeof3[\"default\"])(this.data.editable)===\"object\"){this.editable={};util.selectiveExtend([\"updateTime\",\"updateGroup\",\"remove\"],this.editable,this.data.editable)}}}};Item.prototype.getWidthLeft=function(){return 0};Item.prototype.getWidthRight=function(){return 0};Item.prototype.getTitle=function(){return this.data.title};module.exports=Item},function(module,exports){module.exports=function(bitmap,value){return{enumerable:!(bitmap&1),configurable:!(bitmap&2),writable:!(bitmap&4),value:value}}},function(module,exports){var id=0;var px=Math.random();module.exports=function(key){return\"Symbol(\".concat(key===undefined?\"\":key,\")_\",(++id+px).toString(36))}},function(module,exports,__webpack_require__){var defined=__webpack_require__(51);module.exports=function(it){return Object(defined(it))}},function(module,exports){exports.f={}.propertyIsEnumerable},function(module,exports,__webpack_require__){\"use strict\";function Queue(options){this.delay=null;this.max=Infinity;this._queue=[];this._timeout=null;this._extended=null;this.setOptions(options)}Queue.prototype.setOptions=function(options){if(options&&typeof options.delay!==\"undefined\"){this.delay=options.delay}if(options&&typeof options.max!==\"undefined\"){this.max=options.max}this._flushIfNeeded()};Queue.extend=function(object,options){var queue=new Queue(options);if(object.flush!==undefined){throw new Error(\"Target object already has a property flush\")}object.flush=function(){queue.flush()};var methods=[{name:\"flush\",original:undefined}];if(options&&options.replace){for(var i=0;i<options.replace.length;i++){var name=options.replace[i];methods.push({name:name,original:object[name]});queue.replace(object,name)}}queue._extended={object:object,methods:methods};return queue};Queue.prototype.destroy=function(){this.flush();if(this._extended){var object=this._extended.object;var methods=this._extended.methods;for(var i=0;i<methods.length;i++){var method=methods[i];if(method.original){object[method.name]=method.original}else{delete object[method.name]}}this._extended=null}};Queue.prototype.replace=function(object,method){var me=this;var original=object[method];if(!original){throw new Error(\"Method \"+method+\" undefined\")}object[method]=function(){var args=[];for(var i=0;i<arguments.length;i++){args[i]=arguments[i]}me.queue({args:args,fn:original,context:this})}};Queue.prototype.queue=function(entry){if(typeof entry===\"function\"){this._queue.push({fn:entry})}else{this._queue.push(entry)}this._flushIfNeeded()};Queue.prototype._flushIfNeeded=function(){\nif(this._queue.length>this.max){this.flush()}clearTimeout(this._timeout);if(this.queue.length>0&&typeof this.delay===\"number\"){var me=this;this._timeout=setTimeout(function(){me.flush()},this.delay)}};Queue.prototype.flush=function(){while(this._queue.length>0){var entry=this._queue.shift();entry.fn.apply(entry.context||entry.fn,entry.args||[])}};module.exports=Queue},function(module,exports){module.exports=Emitter;function Emitter(obj){if(obj)return mixin(obj)}function mixin(obj){for(var key in Emitter.prototype){obj[key]=Emitter.prototype[key]}return obj}Emitter.prototype.on=Emitter.prototype.addEventListener=function(event,fn){this._callbacks=this._callbacks||{};(this._callbacks[event]=this._callbacks[event]||[]).push(fn);return this};Emitter.prototype.once=function(event,fn){var self=this;this._callbacks=this._callbacks||{};function on(){self.off(event,on);fn.apply(this,arguments)}on.fn=fn;this.on(event,on);return this};Emitter.prototype.off=Emitter.prototype.removeListener=Emitter.prototype.removeAllListeners=Emitter.prototype.removeEventListener=function(event,fn){this._callbacks=this._callbacks||{};if(0==arguments.length){this._callbacks={};return this}var callbacks=this._callbacks[event];if(!callbacks)return this;if(1==arguments.length){delete this._callbacks[event];return this}var cb;for(var i=0;i<callbacks.length;i++){cb=callbacks[i];if(cb===fn||cb.fn===fn){callbacks.splice(i,1);break}}return this};Emitter.prototype.emit=function(event){this._callbacks=this._callbacks||{};var args=[].slice.call(arguments,1),callbacks=this._callbacks[event];if(callbacks){callbacks=callbacks.slice(0);for(var i=0,len=callbacks.length;i<len;++i){callbacks[i].apply(this,args)}}return this};Emitter.prototype.listeners=function(event){this._callbacks=this._callbacks||{};return this._callbacks[event]||[]};Emitter.prototype.hasListeners=function(event){return!!this.listeners(event).length}},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Component=__webpack_require__(16);var TimeStep=__webpack_require__(66);var DateUtil=__webpack_require__(36);var moment=__webpack_require__(9);function TimeAxis(body,options){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}};this.props={range:{start:0,end:0,minimumStep:0},lineTop:0};this.defaultOptions={orientation:{axis:\"bottom\"},showMinorLabels:true,showMajorLabels:true,maxMinorChars:7,format:TimeStep.FORMAT,moment:moment,timeAxis:null};this.options=util.extend({},this.defaultOptions);this.body=body;this._create();this.setOptions(options)}TimeAxis.prototype=new Component;TimeAxis.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"showMinorLabels\",\"showMajorLabels\",\"maxMinorChars\",\"hiddenDates\",\"timeAxis\",\"moment\",\"rtl\"],this.options,options);util.selectiveDeepExtend([\"format\"],this.options,options);if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation.axis=options.orientation}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"&&\"axis\"in options.orientation){this.options.orientation.axis=options.orientation.axis}}if(\"locale\"in options){if(typeof moment.locale===\"function\"){moment.locale(options.locale)}else{moment.lang(options.locale)}}}};TimeAxis.prototype._create=function(){this.dom.foreground=document.createElement(\"div\");this.dom.background=document.createElement(\"div\");this.dom.foreground.className=\"vis-time-axis vis-foreground\";this.dom.background.className=\"vis-time-axis vis-background\"};TimeAxis.prototype.destroy=function(){if(this.dom.foreground.parentNode){this.dom.foreground.parentNode.removeChild(this.dom.foreground)}if(this.dom.background.parentNode){this.dom.background.parentNode.removeChild(this.dom.background)}this.body=null};TimeAxis.prototype.redraw=function(){var props=this.props;var foreground=this.dom.foreground;var background=this.dom.background;var parent=this.options.orientation.axis==\"top\"?this.body.dom.top:this.body.dom.bottom;var parentChanged=foreground.parentNode!==parent;this._calculateCharSize();var showMinorLabels=this.options.showMinorLabels&&this.options.orientation.axis!==\"none\";var showMajorLabels=this.options.showMajorLabels&&this.options.orientation.axis!==\"none\";props.minorLabelHeight=showMinorLabels?props.minorCharHeight:0;props.majorLabelHeight=showMajorLabels?props.majorCharHeight:0;props.height=props.minorLabelHeight+props.majorLabelHeight;props.width=foreground.offsetWidth;props.minorLineHeight=this.body.domProps.root.height-props.majorLabelHeight-(this.options.orientation.axis==\"top\"?this.body.domProps.bottom.height:this.body.domProps.top.height);props.minorLineWidth=1;props.majorLineHeight=props.minorLineHeight+props.majorLabelHeight;props.majorLineWidth=1;var foregroundNextSibling=foreground.nextSibling;var backgroundNextSibling=background.nextSibling;foreground.parentNode&&foreground.parentNode.removeChild(foreground);background.parentNode&&background.parentNode.removeChild(background);foreground.style.height=this.props.height+\"px\";this._repaintLabels();if(foregroundNextSibling){parent.insertBefore(foreground,foregroundNextSibling)}else{parent.appendChild(foreground)}if(backgroundNextSibling){this.body.dom.backgroundVertical.insertBefore(background,backgroundNextSibling)}else{this.body.dom.backgroundVertical.appendChild(background)}return this._isResized()||parentChanged};TimeAxis.prototype._repaintLabels=function(){var orientation=this.options.orientation.axis;var start=util.convert(this.body.range.start,\"Number\");var end=util.convert(this.body.range.end,\"Number\");var timeLabelsize=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf();var minimumStep=timeLabelsize-DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,timeLabelsize);minimumStep-=this.body.util.toTime(0).valueOf();var step=new TimeStep(new Date(start),new Date(end),minimumStep,this.body.hiddenDates,this.options);step.setMoment(this.options.moment);if(this.options.format){step.setFormat(this.options.format)}if(this.options.timeAxis){step.setScale(this.options.timeAxis)}this.step=step;var dom=this.dom;dom.redundant.lines=dom.lines;dom.redundant.majorTexts=dom.majorTexts;dom.redundant.minorTexts=dom.minorTexts;dom.lines=[];dom.majorTexts=[];dom.minorTexts=[];var current;var next;var x;var xNext;var isMajor;var nextIsMajor;var showMinorGrid;var width=0,prevWidth;var line;var labelMinor;var xFirstMajorLabel=undefined;var count=0;var MAX=1e3;var className;step.start();next=step.getCurrent();xNext=this.body.util.toScreen(next);while(step.hasNext()&&count<MAX){count++;isMajor=step.isMajor();className=step.getClassName();labelMinor=step.getLabelMinor();current=next;x=xNext;step.next();next=step.getCurrent();nextIsMajor=step.isMajor();xNext=this.body.util.toScreen(next);prevWidth=width;width=xNext-x;switch(step.scale){case\"week\":showMinorGrid=true;break;default:showMinorGrid=width>=prevWidth*.4;break}if(this.options.showMinorLabels&&showMinorGrid){var label=this._repaintMinorText(x,labelMinor,orientation,className);label.style.width=width+\"px\"}if(isMajor&&this.options.showMajorLabels){if(x>0){if(xFirstMajorLabel==undefined){xFirstMajorLabel=x}label=this._repaintMajorText(x,step.getLabelMajor(),orientation,className)}line=this._repaintMajorLine(x,width,orientation,className)}else{if(showMinorGrid){line=this._repaintMinorLine(x,width,orientation,className)}else{if(line){line.style.width=parseInt(line.style.width)+width+\"px\"}}}}if(count===MAX&&!warnedForOverflow){console.warn(\"Something is wrong with the Timeline scale. Limited drawing of grid lines to \"+MAX+\" lines.\");warnedForOverflow=true}if(this.options.showMajorLabels){var leftTime=this.body.util.toTime(0),leftText=step.getLabelMajor(leftTime),widthText=leftText.length*(this.props.majorCharWidth||10)+10;if(xFirstMajorLabel==undefined||widthText<xFirstMajorLabel){this._repaintMajorText(0,leftText,orientation,className)}}util.forEach(this.dom.redundant,function(arr){while(arr.length){var elem=arr.pop();if(elem&&elem.parentNode){elem.parentNode.removeChild(elem)}}})};TimeAxis.prototype._repaintMinorText=function(x,text,orientation,className){var label=this.dom.redundant.minorTexts.shift();if(!label){var content=document.createTextNode(\"\");label=document.createElement(\"div\");label.appendChild(content);this.dom.foreground.appendChild(label)}this.dom.minorTexts.push(label);label.innerHTML=text;label.style.top=orientation==\"top\"?this.props.majorLabelHeight+\"px\":\"0\";if(this.options.rtl){label.style.left=\"\";label.style.right=x+\"px\"}else{label.style.left=x+\"px\"}label.className=\"vis-text vis-minor \"+className;return label};TimeAxis.prototype._repaintMajorText=function(x,text,orientation,className){var label=this.dom.redundant.majorTexts.shift();if(!label){var content=document.createElement(\"div\");label=document.createElement(\"div\");label.appendChild(content);this.dom.foreground.appendChild(label)}label.childNodes[0].innerHTML=text;label.className=\"vis-text vis-major \"+className;label.style.top=orientation==\"top\"?\"0\":this.props.minorLabelHeight+\"px\";if(this.options.rtl){label.style.left=\"\";label.style.right=x+\"px\"}else{label.style.left=x+\"px\"}this.dom.majorTexts.push(label);return label};TimeAxis.prototype._repaintMinorLine=function(x,width,orientation,className){var line=this.dom.redundant.lines.shift();if(!line){line=document.createElement(\"div\");this.dom.background.appendChild(line)}this.dom.lines.push(line);var props=this.props;if(orientation==\"top\"){line.style.top=props.majorLabelHeight+\"px\"}else{line.style.top=this.body.domProps.top.height+\"px\"}line.style.height=props.minorLineHeight+\"px\";if(this.options.rtl){line.style.left=\"\";line.style.right=x-props.minorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical-rtl vis-minor \"+className}else{line.style.left=x-props.minorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical vis-minor \"+className}line.style.width=width+\"px\";return line};TimeAxis.prototype._repaintMajorLine=function(x,width,orientation,className){var line=this.dom.redundant.lines.shift();if(!line){line=document.createElement(\"div\");this.dom.background.appendChild(line)}this.dom.lines.push(line);var props=this.props;if(orientation==\"top\"){line.style.top=\"0\"}else{line.style.top=this.body.domProps.top.height+\"px\"}if(this.options.rtl){line.style.left=\"\";line.style.right=x-props.majorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical-rtl vis-major \"+className}else{line.style.left=x-props.majorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical vis-major \"+className}line.style.height=props.majorLineHeight+\"px\";line.style.width=width+\"px\";return line};TimeAxis.prototype._calculateCharSize=function(){if(!this.dom.measureCharMinor){this.dom.measureCharMinor=document.createElement(\"DIV\");this.dom.measureCharMinor.className=\"vis-text vis-minor vis-measure\";this.dom.measureCharMinor.style.position=\"absolute\";this.dom.measureCharMinor.appendChild(document.createTextNode(\"0\"));this.dom.foreground.appendChild(this.dom.measureCharMinor)}this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight;this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth;if(!this.dom.measureCharMajor){this.dom.measureCharMajor=document.createElement(\"DIV\");this.dom.measureCharMajor.className=\"vis-text vis-major vis-measure\";this.dom.measureCharMajor.style.position=\"absolute\";this.dom.measureCharMajor.appendChild(document.createTextNode(\"0\"));this.dom.foreground.appendChild(this.dom.measureCharMajor)}this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight;this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth};var warnedForOverflow=false;module.exports=TimeAxis},function(module,exports,__webpack_require__){\"use strict\";var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var Component=__webpack_require__(16);var moment=__webpack_require__(9);var locales=__webpack_require__(98);function CustomTime(body,options){this.body=body;this.defaultOptions={moment:moment,locales:locales,locale:\"en\",id:undefined,title:undefined};this.options=util.extend({},this.defaultOptions);if(options&&options.time){this.customTime=options.time}else{this.customTime=new Date}this.eventParams={};this.setOptions(options);this._create()}CustomTime.prototype=new Component;CustomTime.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"moment\",\"locale\",\"locales\",\"id\"],this.options,options)}};CustomTime.prototype._create=function(){var bar=document.createElement(\"div\");bar[\"custom-time\"]=this;bar.className=\"vis-custom-time \"+(this.options.id||\"\");bar.style.position=\"absolute\";bar.style.top=\"0px\";bar.style.height=\"100%\";this.bar=bar;var drag=document.createElement(\"div\");drag.style.position=\"relative\";drag.style.top=\"0px\";drag.style.left=\"-10px\";drag.style.height=\"100%\";drag.style.width=\"20px\";function onMouseWheel(e){this.body.range._onMouseWheel(e)}if(drag.addEventListener){drag.addEventListener(\"mousewheel\",onMouseWheel.bind(this),false);drag.addEventListener(\"DOMMouseScroll\",onMouseWheel.bind(this),false)}else{drag.attachEvent(\"onmousewheel\",onMouseWheel.bind(this))}bar.appendChild(drag);this.hammer=new Hammer(drag);this.hammer.on(\"panstart\",this._onDragStart.bind(this));this.hammer.on(\"panmove\",this._onDrag.bind(this));this.hammer.on(\"panend\",this._onDragEnd.bind(this));this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL})};CustomTime.prototype.destroy=function(){this.hide();this.hammer.destroy();this.hammer=null;this.body=null};CustomTime.prototype.redraw=function(){var parent=this.body.dom.backgroundVertical;if(this.bar.parentNode!=parent){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}parent.appendChild(this.bar)}var x=this.body.util.toScreen(this.customTime);var locale=this.options.locales[this.options.locale];if(!locale){if(!this.warned){console.log(\"WARNING: options.locales['\"+this.options.locale+\"'] not found. See http://visjs.org/docs/timeline/#Localization\");this.warned=true}locale=this.options.locales[\"en\"]}var title=this.options.title;if(title===undefined){title=locale.time+\": \"+this.options.moment(this.customTime).format(\"dddd, MMMM Do YYYY, H:mm:ss\");title=title.charAt(0).toUpperCase()+title.substring(1)}else if(typeof title===\"function\"){title=title.call(this.customTime)}this.bar.style.left=x+\"px\";this.bar.title=title;return false};CustomTime.prototype.hide=function(){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}};CustomTime.prototype.setCustomTime=function(time){this.customTime=util.convert(time,\"Date\");this.redraw()};CustomTime.prototype.getCustomTime=function(){return new Date(this.customTime.valueOf())};CustomTime.prototype.setCustomTitle=function(title){this.options.title=title};CustomTime.prototype._onDragStart=function(event){this.eventParams.dragging=true;this.eventParams.customTime=this.customTime;event.stopPropagation()};CustomTime.prototype._onDrag=function(event){if(!this.eventParams.dragging)return;var x=this.body.util.toScreen(this.eventParams.customTime)+event.deltaX;var time=this.body.util.toTime(x);this.setCustomTime(time);this.body.emitter.emit(\"timechange\",{id:this.options.id,time:new Date(this.customTime.valueOf()),event:event});event.stopPropagation()};CustomTime.prototype._onDragEnd=function(event){if(!this.eventParams.dragging)return;this.body.emitter.emit(\"timechanged\",{id:this.options.id,time:new Date(this.customTime.valueOf()),event:event});event.stopPropagation()};CustomTime.customTimeFromTarget=function(event){var target=event.target;while(target){if(target.hasOwnProperty(\"custom-time\")){return target[\"custom-time\"]}target=target.parentNode}return null};module.exports=CustomTime},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Label=__webpack_require__(117)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var Box=__webpack_require__(193)[\"default\"];var Circle=__webpack_require__(200)[\"default\"];var CircularImage=__webpack_require__(201)[\"default\"];var Database=__webpack_require__(202)[\"default\"];var Diamond=__webpack_require__(203)[\"default\"];var Dot=__webpack_require__(204)[\"default\"];var Ellipse=__webpack_require__(205)[\"default\"];var Icon=__webpack_require__(206)[\"default\"];var Image=__webpack_require__(207)[\"default\"];var Square=__webpack_require__(208)[\"default\"];var Hexagon=__webpack_require__(209)[\"default\"];var Star=__webpack_require__(210)[\"default\"];var Text=__webpack_require__(211)[\"default\"];var Triangle=__webpack_require__(212)[\"default\"];var TriangleDown=__webpack_require__(213)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var Node=function(){function Node(options,body,imagelist,grouplist,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Node);this.options=util.bridgeObject(globalOptions);this.globalOptions=globalOptions;this.defaultOptions=defaultOptions;this.body=body;this.edges=[];this.id=undefined;this.imagelist=imagelist;this.grouplist=grouplist;this.x=undefined;this.y=undefined;this.baseSize=this.options.size;this.baseFontSize=this.options.font.size;this.predefinedPosition=false;this.selected=false;this.hover=false;this.labelModule=new Label(this.body,this.options,false);this.setOptions(options)}(0,_createClass3[\"default\"])(Node,[{key:\"attachEdge\",value:function attachEdge(edge){if(this.edges.indexOf(edge)===-1){this.edges.push(edge)}}},{key:\"detachEdge\",value:function detachEdge(edge){var index=this.edges.indexOf(edge);if(index!=-1){this.edges.splice(index,1)}}},{key:\"setOptions\",value:function setOptions(options){var currentShape=this.options.shape;if(!options){return}if(options.id!==undefined){this.id=options.id}if(this.id===undefined){throw new Error(\"Node must have an id\")}Node.checkMass(options,this.id);if(options.x!==undefined){if(options.x===null){this.x=undefined;this.predefinedPosition=false}else{this.x=parseInt(options.x);this.predefinedPosition=true}}if(options.y!==undefined){if(options.y===null){this.y=undefined;this.predefinedPosition=false}else{this.y=parseInt(options.y);this.predefinedPosition=true}}if(options.size!==undefined){this.baseSize=options.size}if(options.value!==undefined){options.value=parseFloat(options.value)}Node.parseOptions(this.options,options,true,this.globalOptions,this.grouplist);var pile=[options,this.options,this.defaultOptions];this.chooser=ComponentUtil.choosify(\"node\",pile);this._load_images();this.updateLabelModule(options);this.updateShape(currentShape);return options.hidden!==undefined||options.physics!==undefined}},{key:\"_load_images\",value:function _load_images(){if(this.options.shape!==\"circularImage\"&&this.options.shape!==\"image\"){return}if(this.options.image===undefined){throw new Error(\"Option image must be defined for node type '\"+this.options.shape+\"'\")}if(this.imagelist===undefined){throw new Error(\"Internal Error: No images provided\")}if(typeof this.options.image===\"string\"){this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage,this.id)}else{if(this.options.image.unselected===undefined){throw new Error(\"No unselected image provided\")}this.imageObj=this.imagelist.load(this.options.image.unselected,this.options.brokenImage,this.id);if(this.options.image.selected!==undefined){this.imageObjAlt=this.imagelist.load(this.options.image.selected,this.options.brokenImage,this.id)}else{this.imageObjAlt=undefined}}}},{key:\"getFormattingValues\",value:function getFormattingValues(){var values={color:this.options.color.background,borderWidth:this.options.borderWidth,borderColor:this.options.color.border,size:this.options.size,borderDashes:this.options.shapeProperties.borderDashes,borderRadius:this.options.shapeProperties.borderRadius,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y};if(this.selected||this.hover){if(this.chooser===true){if(this.selected){values.borderWidth*=2;values.color=this.options.color.highlight.background;values.borderColor=this.options.color.highlight.border;values.shadow=this.options.shadow.enabled}else if(this.hover){values.color=this.options.color.hover.background;values.borderColor=this.options.color.hover.border;values.shadow=this.options.shadow.enabled}}else if(typeof this.chooser===\"function\"){this.chooser(values,this.options.id,this.selected,this.hover);if(values.shadow===false){if(values.shadowColor!==this.options.shadow.color||values.shadowSize!==this.options.shadow.size||values.shadowX!==this.options.shadow.x||values.shadowY!==this.options.shadow.y){values.shadow=true}}}}else{values.shadow=this.options.shadow.enabled}return values}},{key:\"updateLabelModule\",value:function updateLabelModule(options){if(this.options.label===undefined||this.options.label===null){this.options.label=\"\"}Node.updateGroupOptions(this.options,options,this.grouplist);var currentGroup=this.grouplist.get(this.options.group,false);var pile=[options,this.options,currentGroup,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,pile);if(this.labelModule.baseSize!==undefined){this.baseFontSize=this.labelModule.baseSize}}},{key:\"updateShape\",value:function updateShape(currentShape){if(currentShape===this.options.shape&&this.shape){this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt)}else{switch(this.options.shape){case\"box\":this.shape=new Box(this.options,this.body,this.labelModule);break;case\"circle\":this.shape=new Circle(this.options,this.body,this.labelModule);break;case\"circularImage\":this.shape=new CircularImage(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case\"database\":this.shape=new Database(this.options,this.body,this.labelModule);break;case\"diamond\":this.shape=new Diamond(this.options,this.body,this.labelModule);break;case\"dot\":this.shape=new Dot(this.options,this.body,this.labelModule);break;case\"ellipse\":this.shape=new Ellipse(this.options,this.body,this.labelModule);break;case\"icon\":this.shape=new Icon(this.options,this.body,this.labelModule);break;case\"image\":this.shape=new Image(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case\"square\":this.shape=new Square(this.options,this.body,this.labelModule);break;case\"hexagon\":this.shape=new Hexagon(this.options,this.body,this.labelModule);break;case\"star\":this.shape=new Star(this.options,this.body,this.labelModule);break;case\"text\":this.shape=new Text(this.options,this.body,this.labelModule);break;case\"triangle\":this.shape=new Triangle(this.options,this.body,this.labelModule);break;case\"triangleDown\":this.shape=new TriangleDown(this.options,this.body,this.labelModule);break;default:this.shape=new Ellipse(this.options,this.body,this.labelModule);break}}this.needsRefresh()}},{key:\"select\",value:function select(){this.selected=true;this.needsRefresh()}},{key:\"unselect\",value:function unselect(){this.selected=false;this.needsRefresh()}},{key:\"needsRefresh\",value:function needsRefresh(){this.shape.refreshNeeded=true}},{key:\"getTitle\",value:function getTitle(){return this.options.title}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this.shape.distanceToBorder(ctx,angle)}},{key:\"isFixed\",value:function isFixed(){return this.options.fixed.x&&this.options.fixed.y}},{key:\"isSelected\",value:function isSelected(){return this.selected}},{key:\"getValue\",value:function getValue(){return this.options.value}},{key:\"getLabelSize\",value:function getLabelSize(){return this.labelModule.size()}},{key:\"setValueRange\",value:function setValueRange(min,max,total){if(this.options.value!==undefined){var scale=this.options.scaling.customScalingFunction(min,max,total,this.options.value);var sizeDiff=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===true){var fontDiff=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+scale*fontDiff}this.options.size=this.options.scaling.min+scale*sizeDiff}else{this.options.size=this.baseSize;this.options.font.size=this.baseFontSize}this.updateLabelModule()}},{key:\"draw\",value:function draw(ctx){var values=this.getFormattingValues();this.shape.draw(ctx,this.x,this.y,this.selected,this.hover,values)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(ctx){this.shape.updateBoundingBox(this.x,this.y,ctx)}},{key:\"resize\",value:function resize(ctx){var values=this.getFormattingValues();this.shape.resize(ctx,this.selected,this.hover,values)}},{key:\"getItemsOnPoint\",value:function getItemsOnPoint(point){var ret=[];if(this.labelModule.visible()){if(ComponentUtil.pointInRect(this.labelModule.getSize(),point)){ret.push({nodeId:this.id,labelId:0})}}if(ComponentUtil.pointInRect(this.shape.boundingBox,point)){ret.push({nodeId:this.id})}return ret}},{key:\"isOverlappingWith\",value:function isOverlappingWith(obj){return this.shape.left<obj.right&&this.shape.left+this.shape.width>obj.left&&this.shape.top<obj.bottom&&this.shape.top+this.shape.height>obj.top}},{key:\"isBoundingBoxOverlappingWith\",value:function isBoundingBoxOverlappingWith(obj){return this.shape.boundingBox.left<obj.right&&this.shape.boundingBox.right>obj.left&&this.shape.boundingBox.top<obj.bottom&&this.shape.boundingBox.bottom>obj.top}}],[{key:\"updateGroupOptions\",value:function updateGroupOptions(parentOptions,newOptions,groupList){if(groupList===undefined)return;var group=parentOptions.group;if(newOptions!==undefined&&newOptions.group!==undefined&&group!==newOptions.group){throw new Error(\"updateGroupOptions: group values in options don't match.\")}var hasGroup=typeof group===\"number\"||typeof group===\"string\"&&group!=\"\";if(!hasGroup)return;var groupObj=groupList.get(group);util.selectiveNotDeepExtend([\"font\"],parentOptions,groupObj);parentOptions.color=util.parseColor(parentOptions.color)}},{key:\"parseOptions\",value:function parseOptions(parentOptions,newOptions){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var groupList=arguments[4];var fields=[\"color\",\"fixed\",\"shadow\"];util.selectiveNotDeepExtend(fields,parentOptions,newOptions,allowDeletion);Node.checkMass(newOptions);util.mergeOptions(parentOptions,newOptions,\"shadow\",globalOptions);if(newOptions.color!==undefined&&newOptions.color!==null){var parsedColor=util.parseColor(newOptions.color);util.fillIfDefined(parentOptions.color,parsedColor)}else if(allowDeletion===true&&newOptions.color===null){parentOptions.color=util.bridgeObject(globalOptions.color)}if(newOptions.fixed!==undefined&&newOptions.fixed!==null){if(typeof newOptions.fixed===\"boolean\"){parentOptions.fixed.x=newOptions.fixed;parentOptions.fixed.y=newOptions.fixed}else{if(newOptions.fixed.x!==undefined&&typeof newOptions.fixed.x===\"boolean\"){parentOptions.fixed.x=newOptions.fixed.x}if(newOptions.fixed.y!==undefined&&typeof newOptions.fixed.y===\"boolean\"){parentOptions.fixed.y=newOptions.fixed.y}}}if(allowDeletion===true&&newOptions.font===null){parentOptions.font=util.bridgeObject(globalOptions.font)}Node.updateGroupOptions(parentOptions,newOptions,groupList);if(newOptions.scaling!==undefined){util.mergeOptions(parentOptions.scaling,newOptions.scaling,\"label\",globalOptions.scaling)}}},{key:\"checkMass\",value:function checkMass(options,id){if(options.mass!==undefined&&options.mass<=0){var strId=\"\";if(id!==undefined){strId=\" in node id: \"+id}console.log(\"%cNegative or zero mass disallowed\"+strId+\", setting mass to 1.\",printStyle);options.mass=1}}}]);return Node}();exports[\"default\"]=Node},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ComponentUtil=function(){function ComponentUtil(){(0,_classCallCheck3[\"default\"])(this,ComponentUtil)}(0,_createClass3[\"default\"])(ComponentUtil,null,[{key:\"choosify\",value:function choosify(subOption,pile){var allowed=[\"node\",\"edge\",\"label\"];var value=true;var chosen=util.topMost(pile,\"chosen\");if(typeof chosen===\"boolean\"){value=chosen}else if((typeof chosen===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(chosen))===\"object\"){if(allowed.indexOf(subOption)===-1){throw new Error(\"choosify: subOption '\"+subOption+\"' should be one of \"+\"'\"+allowed.join(\"', '\")+\"'\")}var chosenEdge=util.topMost(pile,[\"chosen\",subOption]);if(typeof chosenEdge===\"boolean\"||typeof chosenEdge===\"function\"){value=chosenEdge}}return value}},{key:\"pointInRect\",value:function pointInRect(rect,point,rotationPoint){if(rect.width<=0||rect.height<=0){return false}if(rotationPoint!==undefined){var tmp={x:point.x-rotationPoint.x,y:point.y-rotationPoint.y};if(rotationPoint.angle!==0){var angle=-rotationPoint.angle;var tmp2={x:Math.cos(angle)*tmp.x-Math.sin(angle)*tmp.y,y:Math.sin(angle)*tmp.x+Math.cos(angle)*tmp.y};point=tmp2}else{point=tmp}}var right=rect.x+rect.width;var bottom=rect.y+rect.width;return rect.left<point.x&&right>point.x&&rect.top<point.y&&bottom>point.y}},{key:\"isValidLabel\",value:function isValidLabel(text){return typeof text===\"string\"&&text!==\"\"}}]);return ComponentUtil}();exports[\"default\"]=ComponentUtil},function(module,exports,__webpack_require__){__webpack_require__(125);var global=__webpack_require__(18);var hide=__webpack_require__(26);var Iterators=__webpack_require__(31);var TO_STRING_TAG=__webpack_require__(13)(\"toStringTag\");var DOMIterables=(\"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,\"+\"DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,\"+\"MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,\"+\"SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,\"+\"TextTrackList,TouchList\").split(\",\");for(var i=0;i<DOMIterables.length;i++){var NAME=DOMIterables[i];var Collection=global[NAME];var proto=Collection&&Collection.prototype;if(proto&&!proto[TO_STRING_TAG])hide(proto,TO_STRING_TAG,NAME);Iterators[NAME]=Iterators.Array}},function(module,exports){var toString={}.toString;module.exports=function(it){return toString.call(it).slice(8,-1)}},function(module,exports){module.exports=function(it){if(it==undefined)throw TypeError(\"Can't call method on \"+it);return it}},function(module,exports){module.exports=true},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);module.exports=function(it,S){if(!isObject(it))return it;var fn,val;if(S&&typeof(fn=it.toString)==\"function\"&&!isObject(val=fn.call(it)))return val;if(typeof(fn=it.valueOf)==\"function\"&&!isObject(val=fn.call(it)))return val;if(!S&&typeof(fn=it.toString)==\"function\"&&!isObject(val=fn.call(it)))return val;throw TypeError(\"Can't convert object to primitive value\")}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var dPs=__webpack_require__(130);var enumBugKeys=__webpack_require__(58);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\")\n;var Empty=function(){};var PROTOTYPE=\"prototype\";var createDict=function(){var iframe=__webpack_require__(82)(\"iframe\");var i=enumBugKeys.length;var lt=\"<\";var gt=\">\";var iframeDocument;iframe.style.display=\"none\";__webpack_require__(134).appendChild(iframe);iframe.src=\"javascript:\";iframeDocument=iframe.contentWindow.document;iframeDocument.open();iframeDocument.write(lt+\"script\"+gt+\"document.F=Object\"+lt+\"/script\"+gt);iframeDocument.close();createDict=iframeDocument.F;while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];return createDict()};module.exports=Object.create||function create(O,Properties){var result;if(O!==null){Empty[PROTOTYPE]=anObject(O);result=new Empty;Empty[PROTOTYPE]=null;result[IE_PROTO]=O}else result=createDict();return Properties===undefined?result:dPs(result,Properties)}},function(module,exports){var ceil=Math.ceil;var floor=Math.floor;module.exports=function(it){return isNaN(it=+it)?0:(it>0?floor:ceil)(it)}},function(module,exports,__webpack_require__){var shared=__webpack_require__(57)(\"keys\");var uid=__webpack_require__(40);module.exports=function(key){return shared[key]||(shared[key]=uid(key))}},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var SHARED=\"__core-js_shared__\";var store=global[SHARED]||(global[SHARED]={});module.exports=function(key){return store[key]||(store[key]={})}},function(module,exports){module.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},function(module,exports,__webpack_require__){var def=__webpack_require__(20).f;var has=__webpack_require__(22);var TAG=__webpack_require__(13)(\"toStringTag\");module.exports=function(it,tag,stat){if(it&&!has(it=stat?it:it.prototype,TAG))def(it,TAG,{configurable:true,value:tag})}},function(module,exports,__webpack_require__){\"use strict\";var $at=__webpack_require__(135)(true);__webpack_require__(79)(String,\"String\",function(iterated){this._t=String(iterated);this._i=0},function(){var O=this._t;var index=this._i;var point;if(index>=O.length)return{value:undefined,done:true};point=$at(O,index);this._i+=point.length;return{value:point,done:false}})},function(module,exports,__webpack_require__){exports.f=__webpack_require__(13)},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var core=__webpack_require__(7);var LIBRARY=__webpack_require__(52);var wksExt=__webpack_require__(61);var defineProperty=__webpack_require__(20).f;module.exports=function(name){var $Symbol=core.Symbol||(core.Symbol=LIBRARY?{}:global.Symbol||{});if(name.charAt(0)!=\"_\"&&!(name in $Symbol))defineProperty($Symbol,name,{value:wksExt.f(name)})}},function(module,exports){exports.f=Object.getOwnPropertySymbols},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var moment=__webpack_require__(9);var Component=__webpack_require__(16);var DateUtil=__webpack_require__(36);function Range(body,options){var now=moment().hours(0).minutes(0).seconds(0).milliseconds(0);var start=now.clone().add(-3,\"days\").valueOf();var end=now.clone().add(3,\"days\").valueOf();this.millisecondsPerPixelCache=undefined;if(options===undefined){this.start=start;this.end=end}else{this.start=options.start||start;this.end=options.end||end}this.rolling=false;this.body=body;this.deltaDifference=0;this.scaleOffset=0;this.startToFront=false;this.endToFront=true;this.defaultOptions={rtl:false,start:null,end:null,moment:moment,direction:\"horizontal\",moveable:true,zoomable:true,min:null,max:null,zoomMin:10,zoomMax:1e3*60*60*24*365*1e4,rollingMode:{follow:false,offset:.5}};this.options=util.extend({},this.defaultOptions);this.props={touch:{}};this.animationTimer=null;this.body.emitter.on(\"panstart\",this._onDragStart.bind(this));this.body.emitter.on(\"panmove\",this._onDrag.bind(this));this.body.emitter.on(\"panend\",this._onDragEnd.bind(this));this.body.emitter.on(\"mousewheel\",this._onMouseWheel.bind(this));this.body.emitter.on(\"touch\",this._onTouch.bind(this));this.body.emitter.on(\"pinch\",this._onPinch.bind(this));this.body.dom.rollingModeBtn.addEventListener(\"click\",this.startRolling.bind(this));this.setOptions(options)}Range.prototype=new Component;Range.prototype.setOptions=function(options){if(options){var fields=[\"animation\",\"direction\",\"min\",\"max\",\"zoomMin\",\"zoomMax\",\"moveable\",\"zoomable\",\"moment\",\"activate\",\"hiddenDates\",\"zoomKey\",\"rtl\",\"showCurrentTime\",\"rollingMode\",\"horizontalScroll\"];util.selectiveExtend(fields,this.options,options);if(options.rollingMode&&options.rollingMode.follow){this.startRolling()}if(\"start\"in options||\"end\"in options){this.setRange(options.start,options.end)}}};function validateDirection(direction){if(direction!=\"horizontal\"&&direction!=\"vertical\"){throw new TypeError('Unknown direction \"'+direction+'\". '+'Choose \"horizontal\" or \"vertical\".')}}Range.prototype.startRolling=function(){var me=this;function update(){me.stopRolling();me.rolling=true;var interval=me.end-me.start;var t=util.convert(new Date,\"Date\").valueOf();var start=t-interval*me.options.rollingMode.offset;var end=t+interval*(1-me.options.rollingMode.offset);var options={animation:false};me.setRange(start,end,options);var scale=me.conversion(me.body.domProps.center.width).scale;interval=1/scale/10;if(interval<30)interval=30;if(interval>1e3)interval=1e3;me.body.dom.rollingModeBtn.style.visibility=\"hidden\";me.currentTimeTimer=setTimeout(update,interval)}update()};Range.prototype.stopRolling=function(){if(this.currentTimeTimer!==undefined){clearTimeout(this.currentTimeTimer);this.rolling=false;this.body.dom.rollingModeBtn.style.visibility=\"visible\"}};Range.prototype.setRange=function(start,end,options,callback,frameCallback){if(!options){options={}}if(options.byUser!==true){options.byUser=false}var me=this;var finalStart=start!=undefined?util.convert(start,\"Date\").valueOf():null;var finalEnd=end!=undefined?util.convert(end,\"Date\").valueOf():null;this._cancelAnimation();this.millisecondsPerPixelCache=undefined;if(options.animation){var initStart=this.start;var initEnd=this.end;var duration=(0,_typeof3[\"default\"])(options.animation)===\"object\"&&\"duration\"in options.animation?options.animation.duration:500;var easingName=(0,_typeof3[\"default\"])(options.animation)===\"object\"&&\"easingFunction\"in options.animation?options.animation.easingFunction:\"easeInOutQuad\";var easingFunction=util.easingFunctions[easingName];if(!easingFunction){throw new Error(\"Unknown easing function \"+(0,_stringify2[\"default\"])(easingName)+\". \"+\"Choose from: \"+(0,_keys2[\"default\"])(util.easingFunctions).join(\", \"))}var initTime=(new Date).valueOf();var anyChanged=false;var next=function next(){if(!me.props.touch.dragging){var now=(new Date).valueOf();var time=now-initTime;var ease=easingFunction(time/duration);var done=time>duration;var s=done||finalStart===null?finalStart:initStart+(finalStart-initStart)*ease;var e=done||finalEnd===null?finalEnd:initEnd+(finalEnd-initEnd)*ease;changed=me._applyRange(s,e);DateUtil.updateHiddenDates(me.options.moment,me.body,me.options.hiddenDates);anyChanged=anyChanged||changed;var params={start:new Date(me.start),end:new Date(me.end),byUser:options.byUser,event:options.event};if(frameCallback){frameCallback(ease,changed,done)}if(changed){me.body.emitter.emit(\"rangechange\",params)}if(done){if(anyChanged){me.body.emitter.emit(\"rangechanged\",params);if(callback){return callback()}}}else{me.animationTimer=setTimeout(next,20)}}};return next()}else{var changed=this._applyRange(finalStart,finalEnd);DateUtil.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates);if(changed){var params={start:new Date(this.start),end:new Date(this.end),byUser:options.byUser,event:options.event};this.body.emitter.emit(\"rangechange\",params);clearTimeout(me.timeoutID);me.timeoutID=setTimeout(function(){me.body.emitter.emit(\"rangechanged\",params)},200);if(callback){return callback()}}}};Range.prototype.getMillisecondsPerPixel=function(){if(this.millisecondsPerPixelCache===undefined){this.millisecondsPerPixelCache=(this.end-this.start)/this.body.dom.center.clientWidth}return this.millisecondsPerPixelCache};Range.prototype._cancelAnimation=function(){if(this.animationTimer){clearTimeout(this.animationTimer);this.animationTimer=null}};Range.prototype._applyRange=function(start,end){var newStart=start!=null?util.convert(start,\"Date\").valueOf():this.start,newEnd=end!=null?util.convert(end,\"Date\").valueOf():this.end,max=this.options.max!=null?util.convert(this.options.max,\"Date\").valueOf():null,min=this.options.min!=null?util.convert(this.options.min,\"Date\").valueOf():null,diff;if(isNaN(newStart)||newStart===null){throw new Error('Invalid start \"'+start+'\"')}if(isNaN(newEnd)||newEnd===null){throw new Error('Invalid end \"'+end+'\"')}if(newEnd<newStart){newEnd=newStart}if(min!==null){if(newStart<min){diff=min-newStart;newStart+=diff;newEnd+=diff;if(max!=null){if(newEnd>max){newEnd=max}}}}if(max!==null){if(newEnd>max){diff=newEnd-max;newStart-=diff;newEnd-=diff;if(min!=null){if(newStart<min){newStart=min}}}}if(this.options.zoomMin!==null){var zoomMin=parseFloat(this.options.zoomMin);if(zoomMin<0){zoomMin=0}if(newEnd-newStart<zoomMin){var compensation=.5;if(this.end-this.start===zoomMin&&newStart>=this.start-compensation&&newEnd<=this.end){newStart=this.start;newEnd=this.end}else{diff=zoomMin-(newEnd-newStart);newStart-=diff/2;newEnd+=diff/2}}}if(this.options.zoomMax!==null){var zoomMax=parseFloat(this.options.zoomMax);if(zoomMax<0){zoomMax=0}if(newEnd-newStart>zoomMax){if(this.end-this.start===zoomMax&&newStart<this.start&&newEnd>this.end){newStart=this.start;newEnd=this.end}else{diff=newEnd-newStart-zoomMax;newStart+=diff/2;newEnd-=diff/2}}}var changed=this.start!=newStart||this.end!=newEnd;if(!(newStart>=this.start&&newStart<=this.end||newEnd>=this.start&&newEnd<=this.end)&&!(this.start>=newStart&&this.start<=newEnd||this.end>=newStart&&this.end<=newEnd)){this.body.emitter.emit(\"checkRangedItems\")}this.start=newStart;this.end=newEnd;return changed};Range.prototype.getRange=function(){return{start:this.start,end:this.end}};Range.prototype.conversion=function(width,totalHidden){return Range.conversion(this.start,this.end,width,totalHidden)};Range.conversion=function(start,end,width,totalHidden){if(totalHidden===undefined){totalHidden=0}if(width!=0&&end-start!=0){return{offset:start,scale:width/(end-start-totalHidden)}}else{return{offset:0,scale:1}}};Range.prototype._onDragStart=function(event){this.deltaDifference=0;this.previousDelta=0;if(!this.options.moveable)return;if(!this._isInsideRange(event))return;if(!this.props.touch.allowDragging)return;this.stopRolling();this.props.touch.start=this.start;this.props.touch.end=this.end;this.props.touch.dragging=true;if(this.body.dom.root){this.body.dom.root.style.cursor=\"move\"}};Range.prototype._onDrag=function(event){if(!event)return;if(!this.props.touch.dragging)return;if(!this.options.moveable)return;if(!this.props.touch.allowDragging)return;var direction=this.options.direction;validateDirection(direction);var delta=direction==\"horizontal\"?event.deltaX:event.deltaY;delta-=this.deltaDifference;var interval=this.props.touch.end-this.props.touch.start;var duration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);interval-=duration;var width=direction==\"horizontal\"?this.body.domProps.center.width:this.body.domProps.center.height;var diffRange;if(this.options.rtl){diffRange=delta/width*interval}else{diffRange=-delta/width*interval}var newStart=this.props.touch.start+diffRange;var newEnd=this.props.touch.end+diffRange;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,this.previousDelta-delta,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,this.previousDelta-delta,true);if(safeStart!=newStart||safeEnd!=newEnd){this.deltaDifference+=delta;this.props.touch.start=safeStart;this.props.touch.end=safeEnd;this._onDrag(event);return}this.previousDelta=delta;this._applyRange(newStart,newEnd);var startDate=new Date(this.start);var endDate=new Date(this.end);this.body.emitter.emit(\"rangechange\",{start:startDate,end:endDate,byUser:true,event:event});this.body.emitter.emit(\"panmove\")};Range.prototype._onDragEnd=function(event){if(!this.props.touch.dragging)return;if(!this.options.moveable)return;if(!this.props.touch.allowDragging)return;this.props.touch.dragging=false;if(this.body.dom.root){this.body.dom.root.style.cursor=\"auto\"}this.body.emitter.emit(\"rangechanged\",{start:new Date(this.start),end:new Date(this.end),byUser:true,event:event})};Range.prototype._onMouseWheel=function(event){var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(this.options.zoomKey&&!event[this.options.zoomKey]&&this.options.zoomable||!this.options.zoomable&&this.options.moveable){return}if(!(this.options.zoomable&&this.options.moveable))return;if(!this._isInsideRange(event))return;if(delta){var scale;if(delta<0){scale=1-delta/5}else{scale=1/(1+delta/5)}var pointerDate;if(this.rolling){pointerDate=this.start+(this.end-this.start)*this.options.rollingMode.offset}else{var pointer=this.getPointer({x:event.clientX,y:event.clientY},this.body.dom.center);pointerDate=this._pointerToDate(pointer)}this.zoom(scale,pointerDate,delta,event);event.preventDefault()}};Range.prototype._onTouch=function(event){this.props.touch.start=this.start;this.props.touch.end=this.end;this.props.touch.allowDragging=true;this.props.touch.center=null;this.scaleOffset=0;this.deltaDifference=0;util.preventDefault(event)};Range.prototype._onPinch=function(event){if(!(this.options.zoomable&&this.options.moveable))return;util.preventDefault(event);this.props.touch.allowDragging=false;if(!this.props.touch.center){this.props.touch.center=this.getPointer(event.center,this.body.dom.center)}this.stopRolling();var scale=1/(event.scale+this.scaleOffset);var centerDate=this._pointerToDate(this.props.touch.center);var hiddenDuration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var hiddenDurationBefore=DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,centerDate);var hiddenDurationAfter=hiddenDuration-hiddenDurationBefore;var newStart=centerDate-hiddenDurationBefore+(this.props.touch.start-(centerDate-hiddenDurationBefore))*scale;var newEnd=centerDate+hiddenDurationAfter+(this.props.touch.end-(centerDate+hiddenDurationAfter))*scale;this.startToFront=1-scale<=0;this.endToFront=scale-1<=0;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,1-scale,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,scale-1,true);if(safeStart!=newStart||safeEnd!=newEnd){this.props.touch.start=safeStart;this.props.touch.end=safeEnd;this.scaleOffset=1-event.scale;newStart=safeStart;newEnd=safeEnd}var options={animation:false,byUser:true,event:event};this.setRange(newStart,newEnd,options);this.startToFront=false;this.endToFront=true};Range.prototype._isInsideRange=function(event){var clientX=event.center?event.center.x:event.clientX;var x;if(this.options.rtl){x=clientX-util.getAbsoluteLeft(this.body.dom.centerContainer)}else{x=util.getAbsoluteRight(this.body.dom.centerContainer)-clientX}var time=this.body.util.toTime(x);return time>=this.start&&time<=this.end};Range.prototype._pointerToDate=function(pointer){var conversion;var direction=this.options.direction;validateDirection(direction);if(direction==\"horizontal\"){return this.body.util.toTime(pointer.x).valueOf()}else{var height=this.body.domProps.center.height;conversion=this.conversion(height);return pointer.y/conversion.scale+conversion.offset}};Range.prototype.getPointer=function(touch,element){if(this.options.rtl){return{x:util.getAbsoluteRight(element)-touch.x,y:touch.y-util.getAbsoluteTop(element)}}else{return{x:touch.x-util.getAbsoluteLeft(element),y:touch.y-util.getAbsoluteTop(element)}}};Range.prototype.zoom=function(scale,center,delta,event){if(center==null){center=(this.start+this.end)/2}var hiddenDuration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var hiddenDurationBefore=DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,center);var hiddenDurationAfter=hiddenDuration-hiddenDurationBefore;var newStart=center-hiddenDurationBefore+(this.start-(center-hiddenDurationBefore))*scale;var newEnd=center+hiddenDurationAfter+(this.end-(center+hiddenDurationAfter))*scale;this.startToFront=delta>0?false:true;this.endToFront=-delta>0?false:true;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,delta,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,-delta,true);if(safeStart!=newStart||safeEnd!=newEnd){newStart=safeStart;newEnd=safeEnd}var options={animation:false,byUser:true,event:event};this.setRange(newStart,newEnd,options);this.startToFront=false;this.endToFront=true};Range.prototype.move=function(delta){var diff=this.end-this.start;var newStart=this.start+diff*delta;var newEnd=this.end+diff*delta;this.start=newStart;this.end=newEnd};Range.prototype.moveTo=function(moveTo){var center=(this.start+this.end)/2;var diff=center-moveTo;var newStart=this.start-diff;var newEnd=this.end-diff;var options={animation:false,byUser:true,event:null};this.setRange(newStart,newEnd,options)};module.exports=Range},function(module,exports,__webpack_require__){\"use strict\";var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Emitter=__webpack_require__(44);var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var TimeAxis=__webpack_require__(45);var Activator=__webpack_require__(97);var DateUtil=__webpack_require__(36);var CustomTime=__webpack_require__(46);function Core(){}Emitter(Core.prototype);Core.prototype._create=function(container){this.dom={};this.dom.container=container;this.dom.root=document.createElement(\"div\");this.dom.background=document.createElement(\"div\");this.dom.backgroundVertical=document.createElement(\"div\");this.dom.backgroundHorizontal=document.createElement(\"div\");this.dom.centerContainer=document.createElement(\"div\");this.dom.leftContainer=document.createElement(\"div\");this.dom.rightContainer=document.createElement(\"div\");this.dom.center=document.createElement(\"div\");this.dom.left=document.createElement(\"div\");this.dom.right=document.createElement(\"div\");this.dom.top=document.createElement(\"div\");this.dom.bottom=document.createElement(\"div\");this.dom.shadowTop=document.createElement(\"div\");this.dom.shadowBottom=document.createElement(\"div\");this.dom.shadowTopLeft=document.createElement(\"div\");this.dom.shadowBottomLeft=document.createElement(\"div\");this.dom.shadowTopRight=document.createElement(\"div\");this.dom.shadowBottomRight=document.createElement(\"div\");this.dom.rollingModeBtn=document.createElement(\"div\");this.dom.root.className=\"vis-timeline\";this.dom.background.className=\"vis-panel vis-background\";this.dom.backgroundVertical.className=\"vis-panel vis-background vis-vertical\";this.dom.backgroundHorizontal.className=\"vis-panel vis-background vis-horizontal\";this.dom.centerContainer.className=\"vis-panel vis-center\";this.dom.leftContainer.className=\"vis-panel vis-left\";this.dom.rightContainer.className=\"vis-panel vis-right\";this.dom.top.className=\"vis-panel vis-top\";this.dom.bottom.className=\"vis-panel vis-bottom\";this.dom.left.className=\"vis-content\";this.dom.center.className=\"vis-content\";this.dom.right.className=\"vis-content\";this.dom.shadowTop.className=\"vis-shadow vis-top\";this.dom.shadowBottom.className=\"vis-shadow vis-bottom\";this.dom.shadowTopLeft.className=\"vis-shadow vis-top\";this.dom.shadowBottomLeft.className=\"vis-shadow vis-bottom\";this.dom.shadowTopRight.className=\"vis-shadow vis-top\";this.dom.shadowBottomRight.className=\"vis-shadow vis-bottom\";this.dom.rollingModeBtn.className=\"vis-rolling-mode-btn\";this.dom.root.appendChild(this.dom.background);this.dom.root.appendChild(this.dom.backgroundVertical);this.dom.root.appendChild(this.dom.backgroundHorizontal);this.dom.root.appendChild(this.dom.centerContainer);this.dom.root.appendChild(this.dom.leftContainer);this.dom.root.appendChild(this.dom.rightContainer);this.dom.root.appendChild(this.dom.top);this.dom.root.appendChild(this.dom.bottom);this.dom.root.appendChild(this.dom.bottom);this.dom.root.appendChild(this.dom.rollingModeBtn);this.dom.centerContainer.appendChild(this.dom.center);this.dom.leftContainer.appendChild(this.dom.left);this.dom.rightContainer.appendChild(this.dom.right);this.dom.centerContainer.appendChild(this.dom.shadowTop);this.dom.centerContainer.appendChild(this.dom.shadowBottom);this.dom.leftContainer.appendChild(this.dom.shadowTopLeft);this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft);this.dom.rightContainer.appendChild(this.dom.shadowTopRight);this.dom.rightContainer.appendChild(this.dom.shadowBottomRight);this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0};this.on(\"rangechange\",function(){if(this.initialDrawDone===true){this._redraw()}}.bind(this));this.on(\"rangechanged\",function(){if(!this.initialRangeChangeDone){this.initialRangeChangeDone=true}}.bind(this));this.on(\"touch\",this._onTouch.bind(this));this.on(\"panmove\",this._onDrag.bind(this));var me=this;this._origRedraw=this._redraw.bind(this);this._redraw=util.throttle(this._origRedraw);this.on(\"_change\",function(properties){if(me.itemSet&&me.itemSet.initialItemSetDrawn&&properties&&properties.queue==true){me._redraw()}else{me._origRedraw()}});this.hammer=new Hammer(this.dom.root);var pinchRecognizer=this.hammer.get(\"pinch\").set({enable:true});hammerUtil.disablePreventDefaultVertically(pinchRecognizer);this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL});this.listeners={};var events=[\"tap\",\"doubletap\",\"press\",\"pinch\",\"pan\",\"panstart\",\"panmove\",\"panend\"];events.forEach(function(type){var listener=function listener(event){if(me.isActive()){me.emit(type,event)}};me.hammer.on(type,listener);me.listeners[type]=listener});hammerUtil.onTouch(this.hammer,function(event){me.emit(\"touch\",event)}.bind(this));hammerUtil.onRelease(this.hammer,function(event){me.emit(\"release\",event)}.bind(this));function onMouseWheel(event){if(this.isActive()){this.emit(\"mousewheel\",event)}var deltaX=0;var deltaY=0;if(\"detail\"in event){deltaY=event.detail*-1}if(\"wheelDelta\"in event){deltaY=event.wheelDelta}if(\"wheelDeltaY\"in event){deltaY=event.wheelDeltaY}if(\"wheelDeltaX\"in event){deltaX=event.wheelDeltaX*-1}if(\"axis\"in event&&event.axis===event.HORIZONTAL_AXIS){deltaX=deltaY*-1;deltaY=0}if(\"deltaY\"in event){deltaY=event.deltaY*-1}if(\"deltaX\"in event){deltaX=event.deltaX}if(!this.options.zoomKey||event[this.options.zoomKey])return;event.preventDefault();if(this.options.verticalScroll&&Math.abs(deltaY)>=Math.abs(deltaX)){var current=this.props.scrollTop;var adjusted=current+deltaY;if(this.isActive()){this._setScrollTop(adjusted);this._redraw();this.emit(\"scroll\",event)}}else if(this.options.horizontalScroll){var delta=Math.abs(deltaX)>=Math.abs(deltaY)?deltaX:deltaY;var diff=delta/120*(this.range.end-this.range.start)/20;var newStart=this.range.start+diff;var newEnd=this.range.end+diff;var options={animation:false,byUser:true,event:event};this.range.setRange(newStart,newEnd,options)}}if(this.dom.centerContainer.addEventListener){this.dom.centerContainer.addEventListener(\"mousewheel\",onMouseWheel.bind(this),false);this.dom.centerContainer.addEventListener(\"DOMMouseScroll\",onMouseWheel.bind(this),false)}else{this.dom.centerContainer.attachEvent(\"onmousewheel\",onMouseWheel.bind(this))}function onMouseScrollSide(event){if(!me.options.verticalScroll)return;event.preventDefault();if(me.isActive()){var adjusted=-event.target.scrollTop;me._setScrollTop(adjusted);me._redraw();me.emit(\"scrollSide\",event)}}this.dom.left.parentNode.addEventListener(\"scroll\",onMouseScrollSide.bind(this));this.dom.right.parentNode.addEventListener(\"scroll\",onMouseScrollSide.bind(this));var itemAddedToTimeline=false;function handleDragOver(event){if(event.preventDefault){event.preventDefault()}if(!event.target.className.indexOf(\"vis\")>-1)return;if(itemAddedToTimeline)return;event.dataTransfer.dropEffect=\"move\";itemAddedToTimeline=true;return false}function handleDrop(event){if(event.preventDefault){event.preventDefault()}if(event.stopPropagation){event.stopPropagation()}try{var itemData=JSON.parse(event.dataTransfer.getData(\"text\"));if(!itemData||!itemData.content)return}catch(err){return false}itemAddedToTimeline=false;event.center={x:event.clientX,y:event.clientY};if(itemData.target!==\"item\"){me.itemSet._onAddItem(event)}else{me.itemSet._onDropObjectOnItem(event)}me.emit(\"drop\",me.getEventProperties(event));return false}this.dom.center.addEventListener(\"dragover\",handleDragOver.bind(this),false);this.dom.center.addEventListener(\"drop\",handleDrop.bind(this),false);this.customTimes=[];this.touch={};this.redrawCount=0;this.initialDrawDone=false;this.initialRangeChangeDone=false;if(!container)throw new Error(\"No container provided\");container.appendChild(this.dom.root)};Core.prototype.setOptions=function(options){if(options){var fields=[\"width\",\"height\",\"minHeight\",\"maxHeight\",\"autoResize\",\"start\",\"end\",\"clickToUse\",\"dataAttributes\",\"hiddenDates\",\"locale\",\"locales\",\"moment\",\"rtl\",\"zoomKey\",\"horizontalScroll\",\"verticalScroll\"];util.selectiveExtend(fields,this.options,options);this.dom.rollingModeBtn.style.visibility=\"hidden\";if(this.options.rtl){this.dom.container.style.direction=\"rtl\";this.dom.backgroundVertical.className=\"vis-panel vis-background vis-vertical-rtl\"}if(this.options.verticalScroll){if(this.options.rtl){this.dom.rightContainer.className=\"vis-panel vis-right vis-vertical-scroll\"}else{this.dom.leftContainer.className=\"vis-panel vis-left vis-vertical-scroll\"}}if((0,_typeof3[\"default\"])(this.options.orientation)!==\"object\"){this.options.orientation={item:undefined,axis:undefined}}if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation={item:options.orientation,axis:options.orientation}}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"){if(\"item\"in options.orientation){this.options.orientation.item=options.orientation.item}if(\"axis\"in options.orientation){this.options.orientation.axis=options.orientation.axis}}}if(this.options.orientation.axis===\"both\"){if(!this.timeAxis2){var timeAxis2=this.timeAxis2=new TimeAxis(this.body);timeAxis2.setOptions=function(options){var _options=options?util.extend({},options):{};_options.orientation=\"top\";TimeAxis.prototype.setOptions.call(timeAxis2,_options)};this.components.push(timeAxis2)}}else{if(this.timeAxis2){var index=this.components.indexOf(this.timeAxis2);if(index!==-1){this.components.splice(index,1)}this.timeAxis2.destroy();this.timeAxis2=null}}if(typeof options.drawPoints==\"function\"){options.drawPoints={onRender:options.drawPoints}}if(\"hiddenDates\"in this.options){DateUtil.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates)}if(\"clickToUse\"in options){if(options.clickToUse){if(!this.activator){this.activator=new Activator(this.dom.root)}}else{if(this.activator){this.activator.destroy();delete this.activator}}}if(\"showCustomTime\"in options){throw new Error(\"Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])\")}this._initAutoResize()}this.components.forEach(function(component){return component.setOptions(options)});if(\"configure\"in options){if(!this.configurator){this.configurator=this._createConfigurator()}this.configurator.setOptions(options.configure);var appliedOptions=util.deepExtend({},this.options);this.components.forEach(function(component){util.deepExtend(appliedOptions,component.options)});this.configurator.setModuleOptions({global:appliedOptions})}this._redraw()};Core.prototype.isActive=function(){return!this.activator||this.activator.active};Core.prototype.destroy=function(){this.setItems(null);this.setGroups(null);this.off();this._stopAutoResize();if(this.dom.root.parentNode){this.dom.root.parentNode.removeChild(this.dom.root)}this.dom=null;if(this.activator){this.activator.destroy();delete this.activator}for(var event in this.listeners){if(this.listeners.hasOwnProperty(event)){delete this.listeners[event]}}this.listeners=null;this.hammer=null;this.components.forEach(function(component){return component.destroy()});this.body=null};Core.prototype.setCustomTime=function(time,id){var customTimes=this.customTimes.filter(function(component){return id===component.options.id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}if(customTimes.length>0){customTimes[0].setCustomTime(time)}};Core.prototype.getCustomTime=function(id){var customTimes=this.customTimes.filter(function(component){return component.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}return customTimes[0].getCustomTime()};Core.prototype.setCustomTimeTitle=function(title,id){var customTimes=this.customTimes.filter(function(component){return component.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}if(customTimes.length>0){return customTimes[0].setCustomTitle(title)}};Core.prototype.getEventProperties=function(event){return{event:event}};Core.prototype.addCustomTime=function(time,id){var timestamp=time!==undefined?util.convert(time,\"Date\").valueOf():new Date;var exists=this.customTimes.some(function(customTime){return customTime.options.id===id});if(exists){throw new Error(\"A custom time with id \"+(0,_stringify2[\"default\"])(id)+\" already exists\")}var customTime=new CustomTime(this.body,util.extend({},this.options,{time:timestamp,id:id}));this.customTimes.push(customTime);this.components.push(customTime);this._redraw();return id};Core.prototype.removeCustomTime=function(id){var customTimes=this.customTimes.filter(function(bar){return bar.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}customTimes.forEach(function(customTime){this.customTimes.splice(this.customTimes.indexOf(customTime),1);this.components.splice(this.components.indexOf(customTime),1);customTime.destroy()}.bind(this))};Core.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]};Core.prototype.fit=function(options,callback){var range=this.getDataRange();if(range.min===null&&range.max===null){return}var interval=range.max-range.min;var min=new Date(range.min.valueOf()-interval*.01);var max=new Date(range.max.valueOf()+interval*.01);var animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(min,max,{animation:animation},callback)};Core.prototype.getDataRange=function(){throw new Error(\"Cannot invoke abstract method getDataRange\")};Core.prototype.setWindow=function(start,end,options,callback){if(typeof arguments[2]==\"function\"){callback=arguments[2];options={}}var animation;var range;if(arguments.length==1){range=arguments[0];animation=range.animation!==undefined?range.animation:true;this.range.setRange(range.start,range.end,{animation:animation})}else if(arguments.length==2&&typeof arguments[1]==\"function\"){range=arguments[0];callback=arguments[1];animation=range.animation!==undefined?range.animation:true\n;this.range.setRange(range.start,range.end,{animation:animation},callback)}else{animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(start,end,{animation:animation},callback)}};Core.prototype.moveTo=function(time,options,callback){if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var interval=this.range.end-this.range.start;var t=util.convert(time,\"Date\").valueOf();var start=t-interval/2;var end=t+interval/2;var animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(start,end,{animation:animation},callback)};Core.prototype.getWindow=function(){var range=this.range.getRange();return{start:new Date(range.start),end:new Date(range.end)}};Core.prototype.zoomIn=function(percentage,options,callback){if(!percentage||percentage<0||percentage>1)return;if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var range=this.getWindow();var start=range.start.valueOf();var end=range.end.valueOf();var interval=end-start;var newInterval=interval/(1+percentage);var distance=(interval-newInterval)/2;var newStart=start+distance;var newEnd=end-distance;this.setWindow(newStart,newEnd,options,callback)};Core.prototype.zoomOut=function(percentage,options,callback){if(!percentage||percentage<0||percentage>1)return;if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var range=this.getWindow();var start=range.start.valueOf();var end=range.end.valueOf();var interval=end-start;var newStart=start-interval*percentage/2;var newEnd=end+interval*percentage/2;this.setWindow(newStart,newEnd,options,callback)};Core.prototype.redraw=function(){this._redraw()};Core.prototype._redraw=function(){this.redrawCount++;var resized=false;var options=this.options;var props=this.props;var dom=this.dom;if(!dom||!dom.container||dom.root.offsetWidth==0)return;DateUtil.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates);if(options.orientation==\"top\"){util.addClassName(dom.root,\"vis-top\");util.removeClassName(dom.root,\"vis-bottom\")}else{util.removeClassName(dom.root,\"vis-top\");util.addClassName(dom.root,\"vis-bottom\")}dom.root.style.maxHeight=util.option.asSize(options.maxHeight,\"\");dom.root.style.minHeight=util.option.asSize(options.minHeight,\"\");dom.root.style.width=util.option.asSize(options.width,\"\");props.border.left=(dom.centerContainer.offsetWidth-dom.centerContainer.clientWidth)/2;props.border.right=props.border.left;props.border.top=(dom.centerContainer.offsetHeight-dom.centerContainer.clientHeight)/2;props.border.bottom=props.border.top;props.borderRootHeight=dom.root.offsetHeight-dom.root.clientHeight;props.borderRootWidth=dom.root.offsetWidth-dom.root.clientWidth;if(dom.centerContainer.clientHeight===0){props.border.left=props.border.top;props.border.right=props.border.left}if(dom.root.clientHeight===0){props.borderRootWidth=props.borderRootHeight}props.center.height=dom.center.offsetHeight;props.left.height=dom.left.offsetHeight;props.right.height=dom.right.offsetHeight;props.top.height=dom.top.clientHeight||-props.border.top;props.bottom.height=dom.bottom.clientHeight||-props.border.bottom;var contentHeight=Math.max(props.left.height,props.center.height,props.right.height);var autoHeight=props.top.height+contentHeight+props.bottom.height+props.borderRootHeight+props.border.top+props.border.bottom;dom.root.style.height=util.option.asSize(options.height,autoHeight+\"px\");props.root.height=dom.root.offsetHeight;props.background.height=props.root.height-props.borderRootHeight;var containerHeight=props.root.height-props.top.height-props.bottom.height-props.borderRootHeight;props.centerContainer.height=containerHeight;props.leftContainer.height=containerHeight;props.rightContainer.height=props.leftContainer.height;props.root.width=dom.root.offsetWidth;props.background.width=props.root.width-props.borderRootWidth;if(!this.initialDrawDone){props.scrollbarWidth=util.getScrollBarWidth()}if(options.verticalScroll){if(options.rtl){props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth+props.scrollbarWidth||-props.border.right}else{props.left.width=dom.leftContainer.clientWidth+props.scrollbarWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right}}else{props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right}this._setDOM();var offset=this._updateScrollTop();if(options.orientation.item!=\"top\"){offset+=Math.max(props.centerContainer.height-props.center.height-props.border.top-props.border.bottom,0)}dom.center.style.top=offset+\"px\";var visibilityTop=props.scrollTop==0?\"hidden\":\"\";var visibilityBottom=props.scrollTop==props.scrollTopMin?\"hidden\":\"\";dom.shadowTop.style.visibility=visibilityTop;dom.shadowBottom.style.visibility=visibilityBottom;dom.shadowTopLeft.style.visibility=visibilityTop;dom.shadowBottomLeft.style.visibility=visibilityBottom;dom.shadowTopRight.style.visibility=visibilityTop;dom.shadowBottomRight.style.visibility=visibilityBottom;if(options.verticalScroll){dom.rightContainer.className=\"vis-panel vis-right vis-vertical-scroll\";dom.leftContainer.className=\"vis-panel vis-left vis-vertical-scroll\";dom.shadowTopRight.style.visibility=\"hidden\";dom.shadowBottomRight.style.visibility=\"hidden\";dom.shadowTopLeft.style.visibility=\"hidden\";dom.shadowBottomLeft.style.visibility=\"hidden\";dom.left.style.top=\"0px\";dom.right.style.top=\"0px\"}if(!options.verticalScroll||props.center.height<props.centerContainer.height){dom.left.style.top=offset+\"px\";dom.right.style.top=offset+\"px\";dom.rightContainer.className=dom.rightContainer.className.replace(new RegExp(\"(?:^|\\\\s)\"+\"vis-vertical-scroll\"+\"(?:\\\\s|$)\"),\" \");dom.leftContainer.className=dom.leftContainer.className.replace(new RegExp(\"(?:^|\\\\s)\"+\"vis-vertical-scroll\"+\"(?:\\\\s|$)\"),\" \");props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right;this._setDOM()}var contentsOverflow=props.center.height>props.centerContainer.height;this.hammer.get(\"pan\").set({direction:contentsOverflow?Hammer.DIRECTION_ALL:Hammer.DIRECTION_HORIZONTAL});this.components.forEach(function(component){resized=component.redraw()||resized});var MAX_REDRAW=5;if(resized){if(this.redrawCount<MAX_REDRAW){this.body.emitter.emit(\"_change\");return}else{console.log(\"WARNING: infinite loop in redraw?\")}}else{this.redrawCount=0}this.body.emitter.emit(\"changed\")};Core.prototype._setDOM=function(){var props=this.props;var dom=this.dom;props.leftContainer.width=props.left.width;props.rightContainer.width=props.right.width;var centerWidth=props.root.width-props.left.width-props.right.width-props.borderRootWidth;props.center.width=centerWidth;props.centerContainer.width=centerWidth;props.top.width=centerWidth;props.bottom.width=centerWidth;dom.background.style.height=props.background.height+\"px\";dom.backgroundVertical.style.height=props.background.height+\"px\";dom.backgroundHorizontal.style.height=props.centerContainer.height+\"px\";dom.centerContainer.style.height=props.centerContainer.height+\"px\";dom.leftContainer.style.height=props.leftContainer.height+\"px\";dom.rightContainer.style.height=props.rightContainer.height+\"px\";dom.background.style.width=props.background.width+\"px\";dom.backgroundVertical.style.width=props.centerContainer.width+\"px\";dom.backgroundHorizontal.style.width=props.background.width+\"px\";dom.centerContainer.style.width=props.center.width+\"px\";dom.top.style.width=props.top.width+\"px\";dom.bottom.style.width=props.bottom.width+\"px\";dom.background.style.left=\"0\";dom.background.style.top=\"0\";dom.backgroundVertical.style.left=props.left.width+props.border.left+\"px\";dom.backgroundVertical.style.top=\"0\";dom.backgroundHorizontal.style.left=\"0\";dom.backgroundHorizontal.style.top=props.top.height+\"px\";dom.centerContainer.style.left=props.left.width+\"px\";dom.centerContainer.style.top=props.top.height+\"px\";dom.leftContainer.style.left=\"0\";dom.leftContainer.style.top=props.top.height+\"px\";dom.rightContainer.style.left=props.left.width+props.center.width+\"px\";dom.rightContainer.style.top=props.top.height+\"px\";dom.top.style.left=props.left.width+\"px\";dom.top.style.top=\"0\";dom.bottom.style.left=props.left.width+\"px\";dom.bottom.style.top=props.top.height+props.centerContainer.height+\"px\";dom.center.style.left=\"0\";dom.left.style.left=\"0\";dom.right.style.left=\"0\"};Core.prototype.repaint=function(){throw new Error(\"Function repaint is deprecated. Use redraw instead.\")};Core.prototype.setCurrentTime=function(time){if(!this.currentTime){throw new Error(\"Option showCurrentTime must be true\")}this.currentTime.setCurrentTime(time)};Core.prototype.getCurrentTime=function(){if(!this.currentTime){throw new Error(\"Option showCurrentTime must be true\")}return this.currentTime.getCurrentTime()};Core.prototype._toTime=function(x){return DateUtil.toTime(this,x,this.props.center.width)};Core.prototype._toGlobalTime=function(x){return DateUtil.toTime(this,x,this.props.root.width)};Core.prototype._toScreen=function(time){return DateUtil.toScreen(this,time,this.props.center.width)};Core.prototype._toGlobalScreen=function(time){return DateUtil.toScreen(this,time,this.props.root.width)};Core.prototype._initAutoResize=function(){if(this.options.autoResize==true){this._startAutoResize()}else{this._stopAutoResize()}};Core.prototype._startAutoResize=function(){var me=this;this._stopAutoResize();this._onResize=function(){if(me.options.autoResize!=true){me._stopAutoResize();return}if(me.dom.root){if(me.dom.root.offsetWidth!=me.props.lastWidth||me.dom.root.offsetHeight!=me.props.lastHeight){me.props.lastWidth=me.dom.root.offsetWidth;me.props.lastHeight=me.dom.root.offsetHeight;me.props.scrollbarWidth=util.getScrollBarWidth();me.body.emitter.emit(\"_change\")}}};util.addEventListener(window,\"resize\",this._onResize);if(me.dom.root){me.props.lastWidth=me.dom.root.offsetWidth;me.props.lastHeight=me.dom.root.offsetHeight}this.watchTimer=setInterval(this._onResize,1e3)};Core.prototype._stopAutoResize=function(){if(this.watchTimer){clearInterval(this.watchTimer);this.watchTimer=undefined}if(this._onResize){util.removeEventListener(window,\"resize\",this._onResize);this._onResize=null}};Core.prototype._onTouch=function(event){this.touch.allowDragging=true;this.touch.initialScrollTop=this.props.scrollTop};Core.prototype._onPinch=function(event){this.touch.allowDragging=false};Core.prototype._onDrag=function(event){if(!event)return;if(!this.touch.allowDragging)return;var delta=event.deltaY;var oldScrollTop=this._getScrollTop();var newScrollTop=this._setScrollTop(this.touch.initialScrollTop+delta);if(this.options.verticalScroll){this.dom.left.parentNode.scrollTop=-this.props.scrollTop;this.dom.right.parentNode.scrollTop=-this.props.scrollTop}if(newScrollTop!=oldScrollTop){this.emit(\"verticalDrag\")}};Core.prototype._setScrollTop=function(scrollTop){this.props.scrollTop=scrollTop;this._updateScrollTop();return this.props.scrollTop};Core.prototype._updateScrollTop=function(){var scrollTopMin=Math.min(this.props.centerContainer.height-this.props.center.height,0);if(scrollTopMin!=this.props.scrollTopMin){if(this.options.orientation.item!=\"top\"){this.props.scrollTop+=scrollTopMin-this.props.scrollTopMin}this.props.scrollTopMin=scrollTopMin}if(this.props.scrollTop>0)this.props.scrollTop=0;if(this.props.scrollTop<scrollTopMin)this.props.scrollTop=scrollTopMin;if(this.options.verticalScroll){this.dom.left.parentNode.scrollTop=-this.props.scrollTop;this.dom.right.parentNode.scrollTop=-this.props.scrollTop}return this.props.scrollTop};Core.prototype._getScrollTop=function(){return this.props.scrollTop};Core.prototype._createConfigurator=function(){throw new Error(\"Cannot invoke abstract method _createConfigurator\")};module.exports=Core},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var DateUtil=__webpack_require__(36);var util=__webpack_require__(2);function TimeStep(start,end,minimumStep,hiddenDates,options){this.moment=moment;this.current=this.moment();this._start=this.moment();this._end=this.moment();this.autoScale=true;this.scale=\"day\";this.step=1;this.setRange(start,end,minimumStep);this.switchedDay=false;this.switchedMonth=false;this.switchedYear=false;if(Array.isArray(hiddenDates)){this.hiddenDates=hiddenDates}else if(hiddenDates!=undefined){this.hiddenDates=[hiddenDates]}else{this.hiddenDates=[]}this.format=TimeStep.FORMAT;this.options=options?options:{}}TimeStep.FORMAT={minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",week:\"w\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",week:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}};TimeStep.prototype.setMoment=function(moment){this.moment=moment;this.current=this.moment(this.current.valueOf());this._start=this.moment(this._start.valueOf());this._end=this.moment(this._end.valueOf())};TimeStep.prototype.setFormat=function(format){var defaultFormat=util.deepExtend({},TimeStep.FORMAT);this.format=util.deepExtend(defaultFormat,format)};TimeStep.prototype.setRange=function(start,end,minimumStep){if(!(start instanceof Date)||!(end instanceof Date)){throw\"No legal start or end date in method setRange\"}this._start=start!=undefined?this.moment(start.valueOf()):new Date;this._end=end!=undefined?this.moment(end.valueOf()):new Date;if(this.autoScale){this.setMinimumStep(minimumStep)}};TimeStep.prototype.start=function(){this.current=this._start.clone();this.roundToMinor()};TimeStep.prototype.roundToMinor=function(){if(this.scale==\"week\"){this.current.weekday(0)}switch(this.scale){case\"year\":this.current.year(this.step*Math.floor(this.current.year()/this.step));this.current.month(0);case\"month\":this.current.date(1);case\"week\":case\"day\":case\"weekday\":this.current.hours(0);case\"hour\":this.current.minutes(0);case\"minute\":this.current.seconds(0);case\"second\":this.current.milliseconds(0)}if(this.step!=1){switch(this.scale){case\"millisecond\":this.current.subtract(this.current.milliseconds()%this.step,\"milliseconds\");break;case\"second\":this.current.subtract(this.current.seconds()%this.step,\"seconds\");break;case\"minute\":this.current.subtract(this.current.minutes()%this.step,\"minutes\");break;case\"hour\":this.current.subtract(this.current.hours()%this.step,\"hours\");break;case\"weekday\":case\"day\":this.current.subtract((this.current.date()-1)%this.step,\"day\");break;case\"week\":this.current.subtract(this.current.week()%this.step,\"week\");break;case\"month\":this.current.subtract(this.current.month()%this.step,\"month\");break;case\"year\":this.current.subtract(this.current.year()%this.step,\"year\");break;default:break}}};TimeStep.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()};TimeStep.prototype.next=function(){var prev=this.current.valueOf();switch(this.scale){case\"millisecond\":this.current.add(this.step,\"millisecond\");break;case\"second\":this.current.add(this.step,\"second\");break;case\"minute\":this.current.add(this.step,\"minute\");break;case\"hour\":this.current.add(this.step,\"hour\");if(this.current.month()<6){this.current.subtract(this.current.hours()%this.step,\"hour\")}else{if(this.current.hours()%this.step!==0){this.current.add(this.step-this.current.hours()%this.step,\"hour\")}}break;case\"weekday\":case\"day\":this.current.add(this.step,\"day\");break;case\"week\":if(this.current.weekday()!==0){this.current.weekday(0);this.current.add(this.step,\"week\")}else if(this.options.showMajorLabels===false){this.current.add(this.step,\"week\")}else{var nextWeek=this.current.clone();nextWeek.add(1,\"week\");if(nextWeek.isSame(this.current,\"month\")){this.current.add(this.step,\"week\")}else{this.current.add(this.step,\"week\");this.current.date(1)}}break;case\"month\":this.current.add(this.step,\"month\");break;case\"year\":this.current.add(this.step,\"year\");break;default:break}if(this.step!=1){switch(this.scale){case\"millisecond\":if(this.current.milliseconds()>0&&this.current.milliseconds()<this.step)this.current.milliseconds(0);break;case\"second\":if(this.current.seconds()>0&&this.current.seconds()<this.step)this.current.seconds(0);break;case\"minute\":if(this.current.minutes()>0&&this.current.minutes()<this.step)this.current.minutes(0);break;case\"hour\":if(this.current.hours()>0&&this.current.hours()<this.step)this.current.hours(0);break;case\"weekday\":case\"day\":if(this.current.date()<this.step+1)this.current.date(1);break;case\"week\":if(this.current.week()<this.step)this.current.week(1);break;case\"month\":if(this.current.month()<this.step)this.current.month(0);break;case\"year\":break;default:break}}if(this.current.valueOf()==prev){this.current=this._end.clone()}this.switchedDay=false;this.switchedMonth=false;this.switchedYear=false;DateUtil.stepOverHiddenDates(this.moment,this,prev)};TimeStep.prototype.getCurrent=function(){return this.current};TimeStep.prototype.setScale=function(params){if(params&&typeof params.scale==\"string\"){this.scale=params.scale;this.step=params.step>0?params.step:1;this.autoScale=false}};TimeStep.prototype.setAutoScale=function(enable){this.autoScale=enable};TimeStep.prototype.setMinimumStep=function(minimumStep){if(minimumStep==undefined){return}var stepYear=1e3*60*60*24*30*12;var stepMonth=1e3*60*60*24*30;var stepDay=1e3*60*60*24;var stepHour=1e3*60*60;var stepMinute=1e3*60;var stepSecond=1e3;var stepMillisecond=1;if(stepYear*1e3>minimumStep){this.scale=\"year\";this.step=1e3}if(stepYear*500>minimumStep){this.scale=\"year\";this.step=500}if(stepYear*100>minimumStep){this.scale=\"year\";this.step=100}if(stepYear*50>minimumStep){this.scale=\"year\";this.step=50}if(stepYear*10>minimumStep){this.scale=\"year\";this.step=10}if(stepYear*5>minimumStep){this.scale=\"year\";this.step=5}if(stepYear>minimumStep){this.scale=\"year\";this.step=1}if(stepMonth*3>minimumStep){this.scale=\"month\";this.step=3}if(stepMonth>minimumStep){this.scale=\"month\";this.step=1}if(stepDay*5>minimumStep){this.scale=\"day\";this.step=5}if(stepDay*2>minimumStep){this.scale=\"day\";this.step=2}if(stepDay>minimumStep){this.scale=\"day\";this.step=1}if(stepDay/2>minimumStep){this.scale=\"weekday\";this.step=1}if(stepHour*4>minimumStep){this.scale=\"hour\";this.step=4}if(stepHour>minimumStep){this.scale=\"hour\";this.step=1}if(stepMinute*15>minimumStep){this.scale=\"minute\";this.step=15}if(stepMinute*10>minimumStep){this.scale=\"minute\";this.step=10}if(stepMinute*5>minimumStep){this.scale=\"minute\";this.step=5}if(stepMinute>minimumStep){this.scale=\"minute\";this.step=1}if(stepSecond*15>minimumStep){this.scale=\"second\";this.step=15}if(stepSecond*10>minimumStep){this.scale=\"second\";this.step=10}if(stepSecond*5>minimumStep){this.scale=\"second\";this.step=5}if(stepSecond>minimumStep){this.scale=\"second\";this.step=1}if(stepMillisecond*200>minimumStep){this.scale=\"millisecond\";this.step=200}if(stepMillisecond*100>minimumStep){this.scale=\"millisecond\";this.step=100}if(stepMillisecond*50>minimumStep){this.scale=\"millisecond\";this.step=50}if(stepMillisecond*10>minimumStep){this.scale=\"millisecond\";this.step=10}if(stepMillisecond*5>minimumStep){this.scale=\"millisecond\";this.step=5}if(stepMillisecond>minimumStep){this.scale=\"millisecond\";this.step=1}};TimeStep.snap=function(date,scale,step){var clone=moment(date);if(scale==\"year\"){var year=clone.year()+Math.round(clone.month()/12);clone.year(Math.round(year/step)*step);clone.month(0);clone.date(0);clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"month\"){if(clone.date()>15){clone.date(1);clone.add(1,\"month\")}else{clone.date(1)}clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"week\"){if(clone.weekday()>2){clone.weekday(0);clone.add(1,\"week\")}else{clone.weekday(0)}clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"day\"){switch(step){case 5:case 2:clone.hours(Math.round(clone.hours()/24)*24);break;default:clone.hours(Math.round(clone.hours()/12)*12);break}clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"weekday\"){switch(step){case 5:case 2:clone.hours(Math.round(clone.hours()/12)*12);break;default:clone.hours(Math.round(clone.hours()/6)*6);break}clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"hour\"){switch(step){case 4:clone.minutes(Math.round(clone.minutes()/60)*60);break;default:clone.minutes(Math.round(clone.minutes()/30)*30);break}clone.seconds(0);clone.milliseconds(0)}else if(scale==\"minute\"){switch(step){case 15:case 10:clone.minutes(Math.round(clone.minutes()/5)*5);clone.seconds(0);break;case 5:clone.seconds(Math.round(clone.seconds()/60)*60);break;default:clone.seconds(Math.round(clone.seconds()/30)*30);break}clone.milliseconds(0)}else if(scale==\"second\"){switch(step){case 15:case 10:clone.seconds(Math.round(clone.seconds()/5)*5);clone.milliseconds(0);break;case 5:clone.milliseconds(Math.round(clone.milliseconds()/1e3)*1e3);break;default:clone.milliseconds(Math.round(clone.milliseconds()/500)*500);break}}else if(scale==\"millisecond\"){var _step=step>5?step/2:1;clone.milliseconds(Math.round(clone.milliseconds()/_step)*_step)}return clone};TimeStep.prototype.isMajor=function(){if(this.switchedYear==true){switch(this.scale){case\"year\":case\"month\":case\"week\":case\"weekday\":case\"day\":case\"hour\":case\"minute\":case\"second\":case\"millisecond\":return true;default:return false}}else if(this.switchedMonth==true){switch(this.scale){case\"week\":case\"weekday\":case\"day\":case\"hour\":case\"minute\":case\"second\":case\"millisecond\":return true;default:return false}}else if(this.switchedDay==true){switch(this.scale){case\"millisecond\":case\"second\":case\"minute\":case\"hour\":return true;default:return false}}var date=this.moment(this.current);switch(this.scale){case\"millisecond\":return date.milliseconds()==0;case\"second\":return date.seconds()==0;case\"minute\":return date.hours()==0&&date.minutes()==0;case\"hour\":return date.hours()==0;case\"weekday\":case\"day\":return date.date()==1;case\"week\":return date.date()==1;case\"month\":return date.month()==0;case\"year\":return false;default:return false}};TimeStep.prototype.getLabelMinor=function(date){if(date==undefined){date=this.current}if(date instanceof Date){date=this.moment(date)}if(typeof this.format.minorLabels===\"function\"){return this.format.minorLabels(date,this.scale,this.step)}var format=this.format.minorLabels[this.scale];switch(this.scale){case\"week\":if(this.isMajor()&&date.weekday()!==0){return\"\"}default:return format&&format.length>0?this.moment(date).format(format):\"\"}};TimeStep.prototype.getLabelMajor=function(date){if(date==undefined){date=this.current}if(date instanceof Date){date=this.moment(date)}if(typeof this.format.majorLabels===\"function\"){return this.format.majorLabels(date,this.scale,this.step)}var format=this.format.majorLabels[this.scale];return format&&format.length>0?this.moment(date).format(format):\"\"};TimeStep.prototype.getClassName=function(){var _moment=this.moment;var m=this.moment(this.current);var current=m.locale?m.locale(\"en\"):m.lang(\"en\");var step=this.step;var classNames=[];function even(value){return value/step%2==0?\" vis-even\":\" vis-odd\"}function today(date){if(date.isSame(new Date,\"day\")){return\" vis-today\"}if(date.isSame(_moment().add(1,\"day\"),\"day\")){return\" vis-tomorrow\"}if(date.isSame(_moment().add(-1,\"day\"),\"day\")){return\" vis-yesterday\"}return\"\"}function currentWeek(date){return date.isSame(new Date,\"week\")?\" vis-current-week\":\"\"}function currentMonth(date){return date.isSame(new Date,\"month\")?\" vis-current-month\":\"\"}function currentYear(date){return date.isSame(new Date,\"year\")?\" vis-current-year\":\"\"}switch(this.scale){case\"millisecond\":classNames.push(today(current));classNames.push(even(current.milliseconds()));break;case\"second\":classNames.push(today(current));classNames.push(even(current.seconds()));break;case\"minute\":classNames.push(today(current));classNames.push(even(current.minutes()));break;case\"hour\":classNames.push(\"vis-h\"+current.hours()+(this.step==4?\"-h\"+(current.hours()+4):\"\"));classNames.push(today(current));classNames.push(even(current.hours()));break;case\"weekday\":classNames.push(\"vis-\"+current.format(\"dddd\").toLowerCase());classNames.push(today(current));classNames.push(currentWeek(current));classNames.push(even(current.date()));break;case\"day\":classNames.push(\"vis-day\"+current.date());classNames.push(\"vis-\"+current.format(\"MMMM\").toLowerCase());classNames.push(today(current));classNames.push(currentMonth(current));classNames.push(this.step<=2?today(current):\"\");classNames.push(this.step<=2?\"vis-\"+current.format(\"dddd\").toLowerCase():\"\");classNames.push(even(current.date()-1));break;case\"week\":classNames.push(\"vis-week\"+current.format(\"w\"));classNames.push(currentWeek(current));classNames.push(even(current.week()));break;case\"month\":classNames.push(\"vis-\"+current.format(\"MMMM\").toLowerCase());classNames.push(currentMonth(current));classNames.push(even(current.month()));break;case\"year\":classNames.push(\"vis-year\"+current.year());classNames.push(currentYear(current));classNames.push(even(current.year()));break}return classNames.filter(String).join(\" \")};module.exports=TimeStep},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);var Component=__webpack_require__(16);var moment=__webpack_require__(9);var locales=__webpack_require__(98);function CurrentTime(body,options){this.body=body;this.defaultOptions={rtl:false,showCurrentTime:true,moment:moment,locales:locales,locale:\"en\"};this.options=util.extend({},this.defaultOptions);this.offset=0;this._create();this.setOptions(options)}CurrentTime.prototype=new Component;CurrentTime.prototype._create=function(){var bar=document.createElement(\"div\");bar.className=\"vis-current-time\";bar.style.position=\"absolute\";bar.style.top=\"0px\";bar.style.height=\"100%\";this.bar=bar};CurrentTime.prototype.destroy=function(){this.options.showCurrentTime=false;this.redraw();this.body=null};CurrentTime.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"rtl\",\"showCurrentTime\",\"moment\",\"locale\",\"locales\"],this.options,options)}};CurrentTime.prototype.redraw=function(){if(this.options.showCurrentTime){var parent=this.body.dom.backgroundVertical;if(this.bar.parentNode!=parent){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}parent.appendChild(this.bar);this.start()}var now=this.options.moment((new Date).valueOf()+this.offset);var x=this.body.util.toScreen(now);var locale=this.options.locales[this.options.locale];if(!locale){if(!this.warned){console.log(\"WARNING: options.locales['\"+this.options.locale+\"'] not found. See http://visjs.org/docs/timeline/#Localization\");this.warned=true}locale=this.options.locales[\"en\"]}var title=locale.current+\" \"+locale.time+\": \"+now.format(\"dddd, MMMM Do YYYY, H:mm:ss\");title=title.charAt(0).toUpperCase()+title.substring(1);if(this.options.rtl){this.bar.style.right=x+\"px\"}else{this.bar.style.left=x+\"px\"}this.bar.title=title}else{if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}this.stop()}return false};CurrentTime.prototype.start=function(){var me=this;function update(){me.stop();var scale=me.body.range.conversion(me.body.domProps.center.width).scale;var interval=1/scale/10;if(interval<30)interval=30;if(interval>1e3)interval=1e3;me.redraw();me.body.emitter.emit(\"currentTimeTick\");me.currentTimeTimer=setTimeout(update,interval)}update()};CurrentTime.prototype.stop=function(){if(this.currentTimeTimer!==undefined){clearTimeout(this.currentTimeTimer);delete this.currentTimeTimer}};CurrentTime.prototype.setCurrentTime=function(time){var t=util.convert(time,\"Date\").valueOf();var now=(new Date).valueOf();this.offset=t-now;this.redraw()};CurrentTime.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)};module.exports=CurrentTime},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var stack=__webpack_require__(100);function Group(groupId,data,itemSet){this.groupId=groupId;this.subgroups={};this.subgroupStack={};this.subgroupStackAll=false;this.doInnerStack=false;this.subgroupIndex=0;this.subgroupOrderer=data&&data.subgroupOrder;this.itemSet=itemSet;this.isVisible=null;this.stackDirty=true;if(data&&data.nestedGroups){this.nestedGroups=data.nestedGroups;if(data.showNested==false){this.showNested=false}else{this.showNested=true}}if(data&&data.subgroupStack){if(typeof data.subgroupStack===\"boolean\"){this.doInnerStack=data.subgroupStack;this.subgroupStackAll=data.subgroupStack}else{for(var key in data.subgroupStack){this.subgroupStack[key]=data.subgroupStack[key];this.doInnerStack=this.doInnerStack||data.subgroupStack[key]}}}this.nestedInGroup=null;this.dom={};this.props={label:{width:0,height:0}};this.className=null;this.items={};this.visibleItems=[];this.itemsInRange=[];this.orderedItems={byStart:[],byEnd:[]};this.checkRangedItems=false;var me=this;this.itemSet.body.emitter.on(\"checkRangedItems\",function(){me.checkRangedItems=true});this._create();this.setData(data)}Group.prototype._create=function(){var label=document.createElement(\"div\");if(this.itemSet.options.groupEditable.order){label.className=\"vis-label draggable\"}else{label.className=\"vis-label\"}this.dom.label=label;var inner=document.createElement(\"div\");inner.className=\"vis-inner\";label.appendChild(inner);this.dom.inner=inner;var foreground=document.createElement(\"div\");foreground.className=\"vis-group\";foreground[\"timeline-group\"]=this;this.dom.foreground=foreground;this.dom.background=document.createElement(\"div\");this.dom.background.className=\"vis-group\";this.dom.axis=document.createElement(\"div\");this.dom.axis.className=\"vis-group\";this.dom.marker=document.createElement(\"div\");this.dom.marker.style.visibility=\"hidden\";this.dom.marker.style.position=\"absolute\";this.dom.marker.innerHTML=\"\";this.dom.background.appendChild(this.dom.marker)};Group.prototype.setData=function(data){var content;var templateFunction;if(this.itemSet.options&&this.itemSet.options.groupTemplate){templateFunction=this.itemSet.options.groupTemplate.bind(this);content=templateFunction(data,this.dom.inner)}else{content=data&&data.content}if(content instanceof Element){this.dom.inner.appendChild(content);while(this.dom.inner.firstChild){this.dom.inner.removeChild(this.dom.inner.firstChild)}this.dom.inner.appendChild(content)}else if(content instanceof Object){templateFunction(data,this.dom.inner)}else if(content!==undefined&&content!==null){this.dom.inner.innerHTML=content}else{this.dom.inner.innerHTML=this.groupId||\"\"}this.dom.label.title=data&&data.title||\"\";if(!this.dom.inner.firstChild){util.addClassName(this.dom.inner,\"vis-hidden\")}else{util.removeClassName(this.dom.inner,\"vis-hidden\")}if(data&&data.nestedGroups){if(!this.nestedGroups||this.nestedGroups!=data.nestedGroups){this.nestedGroups=data.nestedGroups}if(data.showNested!==undefined||this.showNested===undefined){if(data.showNested==false){this.showNested=false}else{this.showNested=true}}util.addClassName(this.dom.label,\"vis-nesting-group\");var collapsedDirClassName=this.itemSet.options.rtl?\"collapsed-rtl\":\"collapsed\";if(this.showNested){util.removeClassName(this.dom.label,collapsedDirClassName);util.addClassName(this.dom.label,\"expanded\")}else{util.removeClassName(this.dom.label,\"expanded\");util.addClassName(this.dom.label,collapsedDirClassName)}}else if(this.nestedGroups){this.nestedGroups=null;collapsedDirClassName=this.itemSet.options.rtl?\"collapsed-rtl\":\"collapsed\";util.removeClassName(this.dom.label,collapsedDirClassName);util.removeClassName(this.dom.label,\"expanded\");util.removeClassName(this.dom.label,\"vis-nesting-group\")}if(data&&data.nestedInGroup){util.addClassName(this.dom.label,\"vis-nested-group\");if(this.itemSet.options&&this.itemSet.options.rtl){this.dom.inner.style.paddingRight=\"30px\"}else{\nthis.dom.inner.style.paddingLeft=\"30px\"}}var className=data&&data.className||null;if(className!=this.className){if(this.className){util.removeClassName(this.dom.label,this.className);util.removeClassName(this.dom.foreground,this.className);util.removeClassName(this.dom.background,this.className);util.removeClassName(this.dom.axis,this.className)}util.addClassName(this.dom.label,className);util.addClassName(this.dom.foreground,className);util.addClassName(this.dom.background,className);util.addClassName(this.dom.axis,className);this.className=className}if(this.style){util.removeCssText(this.dom.label,this.style);this.style=null}if(data&&data.style){util.addCssText(this.dom.label,data.style);this.style=data.style}};Group.prototype.getLabelWidth=function(){return this.props.label.width};Group.prototype._didMarkerHeightChange=function(){var markerHeight=this.dom.marker.clientHeight;if(markerHeight!=this.lastMarkerHeight){this.lastMarkerHeight=markerHeight;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.items,function(item,key){item.dirty=true;if(item.displayed){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}return true}};Group.prototype._calculateGroupSizeAndPosition=function(){var offsetTop=this.dom.foreground.offsetTop;var offsetLeft=this.dom.foreground.offsetLeft;var offsetWidth=this.dom.foreground.offsetWidth;this.top=offsetTop;this.right=offsetLeft;this.width=offsetWidth};Group.prototype._redrawItems=function(forceRestack,lastIsVisible,margin,range){var restack=forceRestack||this.stackDirty||this.isVisible&&!lastIsVisible;if(restack){var visibleSubgroups={};var subgroup=null;if(typeof this.itemSet.options.order===\"function\"){var me=this;var limitSize=false;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.items,function(item,key){if(!item.displayed){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length;me.visibleItems.push(item)}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}util.forEach(this.items,function(item){item.repositionX(limitSize)});if(this.doInnerStack&&this.itemSet.options.stackSubgroups){for(subgroup in this.subgroups){visibleSubgroups[subgroup]=this.subgroups[subgroup].items.slice().sort(function(a,b){return me.itemSet.options.order(a.data,b.data)})}stack.stackSubgroupsWithInnerStack(visibleSubgroups,margin,this.subgroups)}else{var customOrderedItems=this.orderedItems.byStart.slice().sort(function(a,b){return me.itemSet.options.order(a.data,b.data)});stack.stack(customOrderedItems,margin,true)}this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range)}else{this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range);if(this.itemSet.options.stack){if(this.doInnerStack&&this.itemSet.options.stackSubgroups){for(subgroup in this.subgroups){visibleSubgroups[subgroup]=this.subgroups[subgroup].items}stack.stackSubgroupsWithInnerStack(visibleSubgroups,margin,this.subgroups)}else{stack.stack(this.visibleItems,margin,true)}}else{stack.nostack(this.visibleItems,margin,this.subgroups,this.itemSet.options.stackSubgroups)}}this.stackDirty=false}};Group.prototype._didResize=function(resized,height){resized=util.updateProperty(this,\"height\",height)||resized;var labelWidth=this.dom.inner.clientWidth;var labelHeight=this.dom.inner.clientHeight;resized=util.updateProperty(this.props.label,\"width\",labelWidth)||resized;resized=util.updateProperty(this.props.label,\"height\",labelHeight)||resized;return resized};Group.prototype._applyGroupHeight=function(height){this.dom.background.style.height=height+\"px\";this.dom.foreground.style.height=height+\"px\";this.dom.label.style.height=height+\"px\"};Group.prototype._updateItemsVerticalPosition=function(margin){for(var i=0,ii=this.visibleItems.length;i<ii;i++){var item=this.visibleItems[i];item.repositionY(margin);if(!this.isVisible&&this.groupId!=\"__background__\"){if(item.displayed)item.hide()}}};Group.prototype.redraw=function(range,margin,forceRestack,returnQueue){var resized=false;var lastIsVisible=this.isVisible;var height;var queue=[function(){forceRestack=this._didMarkerHeightChange.bind(this)}.bind(this),this._updateSubGroupHeights.bind(this,margin),this._calculateGroupSizeAndPosition.bind(this),function(){this.isVisible=this._isGroupVisible.bind(this)(range,margin)}.bind(this),function(){this._redrawItems.bind(this)(forceRestack,lastIsVisible,margin,range)}.bind(this),this._updateSubgroupsSizes.bind(this),function(){height=this._calculateHeight.bind(this)(margin)}.bind(this),this._calculateGroupSizeAndPosition.bind(this),function(){resized=this._didResize.bind(this)(resized,height)}.bind(this),function(){this._applyGroupHeight.bind(this)(height)}.bind(this),function(){this._updateItemsVerticalPosition.bind(this)(margin)}.bind(this),function(){if(!this.isVisible&&this.height){resized=false}return resized}];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};Group.prototype._updateSubGroupHeights=function(margin){if((0,_keys2[\"default\"])(this.subgroups).length>0){var me=this;this.resetSubgroups();util.forEach(this.visibleItems,function(item){if(item.data.subgroup!==undefined){me.subgroups[item.data.subgroup].height=Math.max(me.subgroups[item.data.subgroup].height,item.height+margin.item.vertical);me.subgroups[item.data.subgroup].visible=true}})}};Group.prototype._isGroupVisible=function(range,margin){return this.top<=range.body.domProps.centerContainer.height-range.body.domProps.scrollTop+margin.axis&&this.top+this.height+margin.axis>=-range.body.domProps.scrollTop};Group.prototype._calculateHeight=function(margin){var height;var itemsInRange=this.visibleItems;if(itemsInRange.length>0){var min=itemsInRange[0].top;var max=itemsInRange[0].top+itemsInRange[0].height;util.forEach(itemsInRange,function(item){min=Math.min(min,item.top);max=Math.max(max,item.top+item.height)});if(min>margin.axis){var offset=min-margin.axis;max-=offset;util.forEach(itemsInRange,function(item){item.top-=offset})}height=max+margin.item.vertical/2}else{height=0}height=Math.max(height,this.props.label.height);return height};Group.prototype.show=function(){if(!this.dom.label.parentNode){this.itemSet.dom.labelSet.appendChild(this.dom.label)}if(!this.dom.foreground.parentNode){this.itemSet.dom.foreground.appendChild(this.dom.foreground)}if(!this.dom.background.parentNode){this.itemSet.dom.background.appendChild(this.dom.background)}if(!this.dom.axis.parentNode){this.itemSet.dom.axis.appendChild(this.dom.axis)}};Group.prototype.hide=function(){var label=this.dom.label;if(label.parentNode){label.parentNode.removeChild(label)}var foreground=this.dom.foreground;if(foreground.parentNode){foreground.parentNode.removeChild(foreground)}var background=this.dom.background;if(background.parentNode){background.parentNode.removeChild(background)}var axis=this.dom.axis;if(axis.parentNode){axis.parentNode.removeChild(axis)}};Group.prototype.add=function(item){this.items[item.id]=item;item.setParent(this);this.stackDirty=true;if(item.data.subgroup!==undefined){this._addToSubgroup(item);this.orderSubgroups()}if(this.visibleItems.indexOf(item)==-1){var range=this.itemSet.body.range;this._checkIfVisible(item,this.visibleItems,range)}};Group.prototype._addToSubgroup=function(item,subgroupId){subgroupId=subgroupId||item.data.subgroup;if(subgroupId!=undefined&&this.subgroups[subgroupId]===undefined){this.subgroups[subgroupId]={height:0,top:0,start:item.data.start,end:item.data.end||item.data.start,visible:false,index:this.subgroupIndex,items:[],stack:this.subgroupStackAll||this.subgroupStack[subgroupId]||false};this.subgroupIndex++}if(new Date(item.data.start)<new Date(this.subgroups[subgroupId].start)){this.subgroups[subgroupId].start=item.data.start}var itemEnd=item.data.end||item.data.start;if(new Date(itemEnd)>new Date(this.subgroups[subgroupId].end)){this.subgroups[subgroupId].end=itemEnd}this.subgroups[subgroupId].items.push(item)};Group.prototype._updateSubgroupsSizes=function(){var me=this;if(me.subgroups){for(var subgroup in me.subgroups){var initialEnd=me.subgroups[subgroup].items[0].data.end||me.subgroups[subgroup].items[0].data.start;var newStart=me.subgroups[subgroup].items[0].data.start;var newEnd=initialEnd-1;me.subgroups[subgroup].items.forEach(function(item){if(new Date(item.data.start)<new Date(newStart)){newStart=item.data.start}var itemEnd=item.data.end||item.data.start;if(new Date(itemEnd)>new Date(newEnd)){newEnd=itemEnd}});me.subgroups[subgroup].start=newStart;me.subgroups[subgroup].end=new Date(newEnd-1)}}};Group.prototype.orderSubgroups=function(){if(this.subgroupOrderer!==undefined){var sortArray=[];var subgroup;if(typeof this.subgroupOrderer==\"string\"){for(subgroup in this.subgroups){sortArray.push({subgroup:subgroup,sortField:this.subgroups[subgroup].items[0].data[this.subgroupOrderer]})}sortArray.sort(function(a,b){return a.sortField-b.sortField})}else if(typeof this.subgroupOrderer==\"function\"){for(subgroup in this.subgroups){sortArray.push(this.subgroups[subgroup].items[0].data)}sortArray.sort(this.subgroupOrderer)}if(sortArray.length>0){for(var i=0;i<sortArray.length;i++){this.subgroups[sortArray[i].subgroup].index=i}}}};Group.prototype.resetSubgroups=function(){for(var subgroup in this.subgroups){if(this.subgroups.hasOwnProperty(subgroup)){this.subgroups[subgroup].visible=false;this.subgroups[subgroup].height=0}}};Group.prototype.remove=function(item){delete this.items[item.id];item.setParent(null);this.stackDirty=true;var index=this.visibleItems.indexOf(item);if(index!=-1)this.visibleItems.splice(index,1);if(item.data.subgroup!==undefined){this._removeFromSubgroup(item);this.orderSubgroups()}};Group.prototype._removeFromSubgroup=function(item,subgroupId){subgroupId=subgroupId||item.data.subgroup;if(subgroupId!=undefined){var subgroup=this.subgroups[subgroupId];if(subgroup){var itemIndex=subgroup.items.indexOf(item);if(itemIndex>=0){subgroup.items.splice(itemIndex,1);if(!subgroup.items.length){delete this.subgroups[subgroupId]}else{this._updateSubgroupsSizes()}}}}};Group.prototype.removeFromDataSet=function(item){this.itemSet.removeItem(item.id)};Group.prototype.order=function(){var array=util.toArray(this.items);var startArray=[];var endArray=[];for(var i=0;i<array.length;i++){if(array[i].data.end!==undefined){endArray.push(array[i])}startArray.push(array[i])}this.orderedItems={byStart:startArray,byEnd:endArray};stack.orderByStart(this.orderedItems.byStart);stack.orderByEnd(this.orderedItems.byEnd)};Group.prototype._updateItemsInRange=function(orderedItems,oldVisibleItems,range){var visibleItems=[];var visibleItemsLookup={};var interval=(range.end-range.start)/4;var lowerBound=range.start-interval;var upperBound=range.end+interval;var searchFunction=function searchFunction(value){if(value<lowerBound){return-1}else if(value<=upperBound){return 0}else{return 1}};if(oldVisibleItems.length>0){for(var i=0;i<oldVisibleItems.length;i++){this._checkIfVisibleWithReference(oldVisibleItems[i],visibleItems,visibleItemsLookup,range)}}var initialPosByStart=util.binarySearchCustom(orderedItems.byStart,searchFunction,\"data\",\"start\");this._traceVisible(initialPosByStart,orderedItems.byStart,visibleItems,visibleItemsLookup,function(item){return item.data.start<lowerBound||item.data.start>upperBound});if(this.checkRangedItems==true){this.checkRangedItems=false;for(i=0;i<orderedItems.byEnd.length;i++){this._checkIfVisibleWithReference(orderedItems.byEnd[i],visibleItems,visibleItemsLookup,range)}}else{var initialPosByEnd=util.binarySearchCustom(orderedItems.byEnd,searchFunction,\"data\",\"end\");this._traceVisible(initialPosByEnd,orderedItems.byEnd,visibleItems,visibleItemsLookup,function(item){return item.data.end<lowerBound||item.data.end>upperBound})}var redrawQueue={};var redrawQueueLength=0;for(i=0;i<visibleItems.length;i++){var item=visibleItems[i];if(!item.displayed){var returnQueue=true;redrawQueue[i]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[i].length}}var needRedraw=redrawQueueLength>0;if(needRedraw){for(var j=0;j<redrawQueueLength;j++){util.forEach(redrawQueue,function(fns){fns[j]()})}}for(i=0;i<visibleItems.length;i++){visibleItems[i].repositionX()}return visibleItems};Group.prototype._traceVisible=function(initialPos,items,visibleItems,visibleItemsLookup,breakCondition){if(initialPos!=-1){var i,item;for(i=initialPos;i>=0;i--){item=items[i];if(breakCondition(item)){break}else{if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}}for(i=initialPos+1;i<items.length;i++){item=items[i];if(breakCondition(item)){break}else{if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}}}};Group.prototype._checkIfVisible=function(item,visibleItems,range){if(item.isVisible(range)){if(!item.displayed)item.show();item.repositionX();visibleItems.push(item)}else{if(item.displayed)item.hide()}};Group.prototype._checkIfVisibleWithReference=function(item,visibleItems,visibleItemsLookup,range){if(item.isVisible(range)){if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}else{if(item.displayed)item.hide()}};Group.prototype.changeSubgroup=function(item,oldSubgroup,newSubgroup){this._removeFromSubgroup(item,oldSubgroup);this._addToSubgroup(item,newSubgroup);this.orderSubgroups()};module.exports=Group},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Group=__webpack_require__(68);function BackgroundGroup(groupId,data,itemSet){Group.call(this,groupId,data,itemSet);this.width=0;this.height=0;this.top=0;this.left=0}BackgroundGroup.prototype=(0,_create2[\"default\"])(Group.prototype);BackgroundGroup.prototype.redraw=function(range,margin,forceRestack){var resized=false;this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range);this.width=this.dom.background.offsetWidth;this.dom.background.style.height=\"0\";for(var i=0,ii=this.visibleItems.length;i<ii;i++){var item=this.visibleItems[i];item.repositionY(margin)}return resized};BackgroundGroup.prototype.show=function(){if(!this.dom.background.parentNode){this.itemSet.dom.background.appendChild(this.dom.background)}};module.exports=BackgroundGroup},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function RangeItem(data,conversion,options){this.props={content:{width:0}};this.overflow=false;this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data.id)}if(data.end==undefined){throw new Error('Property \"end\" missing in item '+data.id)}}Item.call(this,data,conversion,options)}RangeItem.prototype=new Item(null,null,null);RangeItem.prototype.baseClassName=\"vis-item vis-range\";RangeItem.prototype.isVisible=function(range){return this.data.start<range.end&&this.data.end>range.start};RangeItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"div\");this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-item-overflow\";this.dom.box.appendChild(this.dom.frame);this.dom.visibleFrame=document.createElement(\"div\");this.dom.visibleFrame.className=\"vis-item-visible-frame\";this.dom.box.appendChild(this.dom.visibleFrame);this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.frame.appendChild(this.dom.content);this.dom.box[\"timeline-item\"]=this;this.dirty=true}};RangeItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var foreground=this.parent.dom.foreground;if(!foreground){throw new Error(\"Cannot redraw item: parent has no foreground container element\")}foreground.appendChild(this.dom.box)}this.displayed=true};RangeItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.box);this._updateStyle(this.dom.box);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.box.className=this.baseClassName+className;this.dom.content.style.maxWidth=\"none\"}};RangeItem.prototype._getDomComponentsSizes=function(){this.overflow=window.getComputedStyle(this.dom.frame).overflow!==\"hidden\";return{content:{width:this.dom.content.offsetWidth},box:{height:this.dom.box.offsetHeight}}};RangeItem.prototype._updateDomComponentsSizes=function(sizes){this.props.content.width=sizes.content.width;this.height=sizes.box.height;this.dom.content.style.maxWidth=\"\";this.dirty=false};RangeItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.box);this._repaintDeleteButton(this.dom.box);this._repaintDragCenter();this._repaintDragLeft();this._repaintDragRight()};RangeItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes.bind(this)()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};RangeItem.prototype.show=function(){if(!this.displayed){this.redraw()}};RangeItem.prototype.hide=function(){if(this.displayed){var box=this.dom.box;if(box.parentNode){box.parentNode.removeChild(box)}this.displayed=false}};RangeItem.prototype.repositionX=function(limitSize){var parentWidth=this.parent.width;var start=this.conversion.toScreen(this.data.start);var end=this.conversion.toScreen(this.data.end);var align=this.data.align===undefined?this.options.align:this.data.align;var contentStartPosition;var contentWidth;if(this.data.limitSize!==false&&(limitSize===undefined||limitSize===true)){if(start<-parentWidth){start=-parentWidth}if(end>2*parentWidth){end=2*parentWidth}}var boxWidth=Math.max(end-start+.5,1);if(this.overflow){if(this.options.rtl){this.right=start}else{this.left=start}this.width=boxWidth+this.props.content.width;contentWidth=this.props.content.width}else{if(this.options.rtl){this.right=start}else{this.left=start}this.width=boxWidth;contentWidth=Math.min(end-start,this.props.content.width)}if(this.options.rtl){this.dom.box.style.right=this.right+\"px\"}else{this.dom.box.style.left=this.left+\"px\"}this.dom.box.style.width=boxWidth+\"px\";switch(align){case\"left\":if(this.options.rtl){this.dom.content.style.right=\"0\"}else{this.dom.content.style.left=\"0\"}break;case\"right\":if(this.options.rtl){this.dom.content.style.right=Math.max(boxWidth-contentWidth,0)+\"px\"}else{this.dom.content.style.left=Math.max(boxWidth-contentWidth,0)+\"px\"}break;case\"center\":if(this.options.rtl){this.dom.content.style.right=Math.max((boxWidth-contentWidth)/2,0)+\"px\"}else{this.dom.content.style.left=Math.max((boxWidth-contentWidth)/2,0)+\"px\"}break;default:if(this.overflow){if(end>0){contentStartPosition=Math.max(-start,0)}else{contentStartPosition=-contentWidth}}else{if(start<0){contentStartPosition=-start}else{contentStartPosition=0}}if(this.options.rtl){this.dom.content.style.right=contentStartPosition+\"px\"}else{this.dom.content.style.left=contentStartPosition+\"px\";this.dom.content.style.width=\"calc(100% - \"+contentStartPosition+\"px)\"}}};RangeItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var box=this.dom.box;if(orientation==\"top\"){box.style.top=this.top+\"px\"}else{box.style.top=this.parent.height-this.top-this.height+\"px\"}};RangeItem.prototype._repaintDragLeft=function(){if((this.selected||this.options.itemsAlwaysDraggable.range)&&this.options.editable.updateTime&&!this.dom.dragLeft){var dragLeft=document.createElement(\"div\");dragLeft.className=\"vis-drag-left\";dragLeft.dragLeftItem=this;this.dom.box.appendChild(dragLeft);this.dom.dragLeft=dragLeft}else if(!this.selected&&!this.options.itemsAlwaysDraggable.range&&this.dom.dragLeft){if(this.dom.dragLeft.parentNode){this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft)}this.dom.dragLeft=null}};RangeItem.prototype._repaintDragRight=function(){if((this.selected||this.options.itemsAlwaysDraggable.range)&&this.options.editable.updateTime&&!this.dom.dragRight){var dragRight=document.createElement(\"div\");dragRight.className=\"vis-drag-right\";dragRight.dragRightItem=this;this.dom.box.appendChild(dragRight);this.dom.dragRight=dragRight}else if(!this.selected&&!this.options.itemsAlwaysDraggable.range&&this.dom.dragRight){if(this.dom.dragRight.parentNode){this.dom.dragRight.parentNode.removeChild(this.dom.dragRight)}this.dom.dragRight=null}};module.exports=RangeItem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ColorPicker=__webpack_require__(179)[\"default\"];var Configurator=function(){function Configurator(parentModule,defaultContainer,configureOptions){var pixelRatio=arguments.length>3&&arguments[3]!==undefined?arguments[3]:1;(0,_classCallCheck3[\"default\"])(this,Configurator);this.parent=parentModule;this.changedOptions=[];this.container=defaultContainer;this.allowCreation=false;this.options={};this.initialized=false;this.popupCounter=0;this.defaultOptions={enabled:false,filter:true,container:undefined,showButton:true};util.extend(this.options,this.defaultOptions);this.configureOptions=configureOptions;this.moduleOptions={};this.domElements=[];this.popupDiv={};this.popupLimit=5;this.popupHistory={};this.colorPicker=new ColorPicker(pixelRatio);this.wrapper=undefined}(0,_createClass3[\"default\"])(Configurator,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){this.popupHistory={};this._removePopup();var enabled=true;if(typeof options===\"string\"){this.options.filter=options}else if(options instanceof Array){this.options.filter=options.join()}else if((typeof options===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(options))===\"object\"){if(options.container!==undefined){this.options.container=options.container}if(options.filter!==undefined){this.options.filter=options.filter}if(options.showButton!==undefined){this.options.showButton=options.showButton}if(options.enabled!==undefined){enabled=options.enabled}}else if(typeof options===\"boolean\"){this.options.filter=true;enabled=options}else if(typeof options===\"function\"){this.options.filter=options;enabled=true}if(this.options.filter===false){enabled=false}this.options.enabled=enabled}this._clean()}},{key:\"setModuleOptions\",value:function setModuleOptions(moduleOptions){this.moduleOptions=moduleOptions;if(this.options.enabled===true){this._clean();if(this.options.container!==undefined){this.container=this.options.container}this._create()}}},{key:\"_create\",value:function _create(){var _this=this;this._clean();this.changedOptions=[];var filter=this.options.filter;var counter=0;var show=false;for(var option in this.configureOptions){if(this.configureOptions.hasOwnProperty(option)){this.allowCreation=false;show=false;if(typeof filter===\"function\"){show=filter(option,[]);show=show||this._handleObject(this.configureOptions[option],[option],true)}else if(filter===true||filter.indexOf(option)!==-1){show=true}if(show!==false){this.allowCreation=true;if(counter>0){this._makeItem([])}this._makeHeader(option);this._handleObject(this.configureOptions[option],[option])}counter++}}if(this.options.showButton===true){var generateButton=document.createElement(\"div\");generateButton.className=\"vis-configuration vis-config-button\";generateButton.innerHTML=\"generate options\";generateButton.onclick=function(){_this._printOptions()};generateButton.onmouseover=function(){generateButton.className=\"vis-configuration vis-config-button hover\"};generateButton.onmouseout=function(){generateButton.className=\"vis-configuration vis-config-button\"};this.optionsContainer=document.createElement(\"div\");this.optionsContainer.className=\"vis-configuration vis-config-option-container\";this.domElements.push(this.optionsContainer);this.domElements.push(generateButton)}this._push()}},{key:\"_push\",value:function _push(){this.wrapper=document.createElement(\"div\");this.wrapper.className=\"vis-configuration-wrapper\";this.container.appendChild(this.wrapper);for(var i=0;i<this.domElements.length;i++){this.wrapper.appendChild(this.domElements[i])}this._showPopupIfNeeded()}},{key:\"_clean\",value:function _clean(){for(var i=0;i<this.domElements.length;i++){this.wrapper.removeChild(this.domElements[i])}if(this.wrapper!==undefined){this.container.removeChild(this.wrapper);this.wrapper=undefined}this.domElements=[];this._removePopup()}},{key:\"_getValue\",value:function _getValue(path){var base=this.moduleOptions;for(var i=0;i<path.length;i++){if(base[path[i]]!==undefined){base=base[path[i]]}else{base=undefined;break}}return base}},{key:\"_makeItem\",value:function _makeItem(path){if(this.allowCreation===true){var item=document.createElement(\"div\");item.className=\"vis-configuration vis-config-item vis-config-s\"+path.length;for(var _len=arguments.length,domElements=Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){domElements[_key-1]=arguments[_key]}domElements.forEach(function(element){item.appendChild(element)});this.domElements.push(item);return this.domElements.length}return 0}},{key:\"_makeHeader\",value:function _makeHeader(name){var div=document.createElement(\"div\");div.className=\"vis-configuration vis-config-header\";div.innerHTML=name;this._makeItem([],div)}},{key:\"_makeLabel\",value:function _makeLabel(name,path){var objectLabel=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var div=document.createElement(\"div\");div.className=\"vis-configuration vis-config-label vis-config-s\"+path.length;if(objectLabel===true){div.innerHTML=\"<i><b>\"+name+\":</b></i>\"}else{div.innerHTML=name+\":\"}return div}},{key:\"_makeDropdown\",value:function _makeDropdown(arr,value,path){var select=document.createElement(\"select\");select.className=\"vis-configuration vis-config-select\";var selectedValue=0;if(value!==undefined){if(arr.indexOf(value)!==-1){selectedValue=arr.indexOf(value)}}for(var i=0;i<arr.length;i++){var option=document.createElement(\"option\");option.value=arr[i];if(i===selectedValue){option.selected=\"selected\"}option.innerHTML=arr[i];select.appendChild(option)}var me=this;select.onchange=function(){me._update(this.value,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,select)}},{key:\"_makeRange\",value:function _makeRange(arr,value,path){var defaultValue=arr[0];var min=arr[1];var max=arr[2];var step=arr[3];var range=document.createElement(\"input\");range.className=\"vis-configuration vis-config-range\";try{range.type=\"range\";range.min=min;range.max=max}catch(err){}range.step=step;var popupString=\"\";var popupValue=0;if(value!==undefined){var factor=1.2;if(value<0&&value*factor<min){range.min=Math.ceil(value*factor);popupValue=range.min;popupString=\"range increased\"}else if(value/factor<min){range.min=Math.ceil(value/factor);popupValue=range.min;popupString=\"range increased\"}if(value*factor>max&&max!==1){range.max=Math.ceil(value*factor);popupValue=range.max;popupString=\"range increased\"}range.value=value}else{range.value=defaultValue}var input=document.createElement(\"input\");input.className=\"vis-configuration vis-config-rangeinput\";input.value=range.value;var me=this;range.onchange=function(){input.value=this.value;me._update(Number(this.value),path)};range.oninput=function(){input.value=this.value};var label=this._makeLabel(path[path.length-1],path);var itemIndex=this._makeItem(path,label,range,input);if(popupString!==\"\"&&this.popupHistory[itemIndex]!==popupValue){this.popupHistory[itemIndex]=popupValue;this._setupPopup(popupString,itemIndex)}}},{key:\"_setupPopup\",value:function _setupPopup(string,index){var _this2=this;if(this.initialized===true&&this.allowCreation===true&&this.popupCounter<this.popupLimit){var div=document.createElement(\"div\");div.id=\"vis-configuration-popup\";div.className=\"vis-configuration-popup\";div.innerHTML=string;div.onclick=function(){_this2._removePopup()};this.popupCounter+=1;this.popupDiv={html:div,index:index}}}},{key:\"_removePopup\",value:function _removePopup(){if(this.popupDiv.html!==undefined){this.popupDiv.html.parentNode.removeChild(this.popupDiv.html);clearTimeout(this.popupDiv.hideTimeout);clearTimeout(this.popupDiv.deleteTimeout);this.popupDiv={}}}},{key:\"_showPopupIfNeeded\",value:function _showPopupIfNeeded(){var _this3=this;if(this.popupDiv.html!==undefined){var correspondingElement=this.domElements[this.popupDiv.index];var rect=correspondingElement.getBoundingClientRect();this.popupDiv.html.style.left=rect.left+\"px\";this.popupDiv.html.style.top=rect.top-30+\"px\";document.body.appendChild(this.popupDiv.html);this.popupDiv.hideTimeout=setTimeout(function(){_this3.popupDiv.html.style.opacity=0},1500);this.popupDiv.deleteTimeout=setTimeout(function(){_this3._removePopup()},1800)}}},{key:\"_makeCheckbox\",value:function _makeCheckbox(defaultValue,value,path){var checkbox=document.createElement(\"input\");checkbox.type=\"checkbox\";checkbox.className=\"vis-configuration vis-config-checkbox\";checkbox.checked=defaultValue;if(value!==undefined){checkbox.checked=value;if(value!==defaultValue){if((typeof defaultValue===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(defaultValue))===\"object\"){if(value!==defaultValue.enabled){this.changedOptions.push({path:path,value:value})}}else{this.changedOptions.push({path:path,value:value})}}}var me=this;checkbox.onchange=function(){me._update(this.checked,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,checkbox)}},{key:\"_makeTextInput\",value:function _makeTextInput(defaultValue,value,path){var checkbox=document.createElement(\"input\");checkbox.type=\"text\";checkbox.className=\"vis-configuration vis-config-text\";checkbox.value=value;if(value!==defaultValue){this.changedOptions.push({path:path,value:value})}var me=this;checkbox.onchange=function(){me._update(this.value,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,checkbox)}},{key:\"_makeColorField\",value:function _makeColorField(arr,value,path){var _this4=this;var defaultColor=arr[1];var div=document.createElement(\"div\");value=value===undefined?defaultColor:value;if(value!==\"none\"){div.className=\"vis-configuration vis-config-colorBlock\";div.style.backgroundColor=value}else{div.className=\"vis-configuration vis-config-colorBlock none\"}value=value===undefined?defaultColor:value;div.onclick=function(){_this4._showColorPicker(value,div,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,div)}},{key:\"_showColorPicker\",value:function _showColorPicker(value,div,path){var _this5=this;div.onclick=function(){};this.colorPicker.insertTo(div);this.colorPicker.show();this.colorPicker.setColor(value);this.colorPicker.setUpdateCallback(function(color){\nvar colorString=\"rgba(\"+color.r+\",\"+color.g+\",\"+color.b+\",\"+color.a+\")\";div.style.backgroundColor=colorString;_this5._update(colorString,path)});this.colorPicker.setCloseCallback(function(){div.onclick=function(){_this5._showColorPicker(value,div,path)}})}},{key:\"_handleObject\",value:function _handleObject(obj){var path=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var checkOnly=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var show=false;var filter=this.options.filter;var visibleInSet=false;for(var subObj in obj){if(obj.hasOwnProperty(subObj)){show=true;var item=obj[subObj];var newPath=util.copyAndExtendArray(path,subObj);if(typeof filter===\"function\"){show=filter(subObj,path);if(show===false){if(!(item instanceof Array)&&typeof item!==\"string\"&&typeof item!==\"boolean\"&&item instanceof Object){this.allowCreation=false;show=this._handleObject(item,newPath,true);this.allowCreation=checkOnly===false}}}if(show!==false){visibleInSet=true;var value=this._getValue(newPath);if(item instanceof Array){this._handleArray(item,value,newPath)}else if(typeof item===\"string\"){this._makeTextInput(item,value,newPath)}else if(typeof item===\"boolean\"){this._makeCheckbox(item,value,newPath)}else if(item instanceof Object){var draw=true;if(path.indexOf(\"physics\")!==-1){if(this.moduleOptions.physics.solver!==subObj){draw=false}}if(draw===true){if(item.enabled!==undefined){var enabledPath=util.copyAndExtendArray(newPath,\"enabled\");var enabledValue=this._getValue(enabledPath);if(enabledValue===true){var label=this._makeLabel(subObj,newPath,true);this._makeItem(newPath,label);visibleInSet=this._handleObject(item,newPath)||visibleInSet}else{this._makeCheckbox(item,enabledValue,newPath)}}else{var _label=this._makeLabel(subObj,newPath,true);this._makeItem(newPath,_label);visibleInSet=this._handleObject(item,newPath)||visibleInSet}}}else{console.error(\"dont know how to handle\",item,subObj,newPath)}}}}return visibleInSet}},{key:\"_handleArray\",value:function _handleArray(arr,value,path){if(typeof arr[0]===\"string\"&&arr[0]===\"color\"){this._makeColorField(arr,value,path);if(arr[1]!==value){this.changedOptions.push({path:path,value:value})}}else if(typeof arr[0]===\"string\"){this._makeDropdown(arr,value,path);if(arr[0]!==value){this.changedOptions.push({path:path,value:value})}}else if(typeof arr[0]===\"number\"){this._makeRange(arr,value,path);if(arr[0]!==value){this.changedOptions.push({path:path,value:Number(value)})}}}},{key:\"_update\",value:function _update(value,path){var options=this._constructOptions(value,path);if(this.parent.body&&this.parent.body.emitter&&this.parent.body.emitter.emit){this.parent.body.emitter.emit(\"configChange\",options)}this.initialized=true;this.parent.setOptions(options)}},{key:\"_constructOptions\",value:function _constructOptions(value,path){var optionsObj=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var pointer=optionsObj;value=value===\"true\"?true:value;value=value===\"false\"?false:value;for(var i=0;i<path.length;i++){if(path[i]!==\"global\"){if(pointer[path[i]]===undefined){pointer[path[i]]={}}if(i!==path.length-1){pointer=pointer[path[i]]}else{pointer[path[i]]=value}}}return optionsObj}},{key:\"_printOptions\",value:function _printOptions(){var options=this.getOptions();this.optionsContainer.innerHTML=\"<pre>var options = \"+(0,_stringify2[\"default\"])(options,null,2)+\"</pre>\"}},{key:\"getOptions\",value:function getOptions(){var options={};for(var i=0;i<this.changedOptions.length;i++){this._constructOptions(this.changedOptions[i].value,this.changedOptions[i].path,options)}return options}}]);return Configurator}();exports[\"default\"]=Configurator},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var DOMutil=__webpack_require__(14);function Points(groupId,options){}Points.draw=function(dataset,group,framework,offset){offset=offset||0;var callback=getCallback(framework,group);for(var i=0;i<dataset.length;i++){if(!callback){DOMutil.drawPoint(dataset[i].screen_x+offset,dataset[i].screen_y,getGroupTemplate(group),framework.svgElements,framework.svg,dataset[i].label)}else{var callbackResult=callback(dataset[i],group);if(callbackResult===true||(typeof callbackResult===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(callbackResult))===\"object\"){DOMutil.drawPoint(dataset[i].screen_x+offset,dataset[i].screen_y,getGroupTemplate(group,callbackResult),framework.svgElements,framework.svg,dataset[i].label)}}}};Points.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");DOMutil.drawPoint(x+.5*iconWidth,y,getGroupTemplate(group),framework.svgElements,framework.svg)};function getGroupTemplate(group,callbackResult){callbackResult=typeof callbackResult===\"undefined\"?{}:callbackResult;return{style:callbackResult.style||group.options.drawPoints.style,styles:callbackResult.styles||group.options.drawPoints.styles,size:callbackResult.size||group.options.drawPoints.size,className:callbackResult.className||group.className}}function getCallback(framework,group){var callback=undefined;if(framework.options&&framework.options.drawPoints&&framework.options.drawPoints.onRender&&typeof framework.options.drawPoints.onRender==\"function\"){callback=framework.options.drawPoints.onRender}if(group.group.options&&group.group.options.drawPoints&&group.group.options.drawPoints.onRender&&typeof group.group.options.drawPoints.onRender==\"function\"){callback=group.group.options.drawPoints.onRender}return callback}module.exports=Points},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CircleImageBase=function(_NodeBase){(0,_inherits3[\"default\"])(CircleImageBase,_NodeBase);function CircleImageBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CircleImageBase);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(CircleImageBase.__proto__||(0,_getPrototypeOf2[\"default\"])(CircleImageBase)).call(this,options,body,labelModule));_this.labelOffset=0;_this.selected=false;return _this}(0,_createClass3[\"default\"])(CircleImageBase,[{key:\"setOptions\",value:function setOptions(options,imageObj,imageObjAlt){this.options=options;if(!(imageObj===undefined&&imageObjAlt===undefined)){this.setImages(imageObj,imageObjAlt)}}},{key:\"setImages\",value:function setImages(imageObj,imageObjAlt){if(imageObjAlt&&this.selected){this.imageObj=imageObjAlt;this.imageObjAlt=imageObj}else{this.imageObj=imageObj;this.imageObjAlt=imageObjAlt}}},{key:\"switchImages\",value:function switchImages(selected){var selection_changed=selected&&!this.selected||!selected&&this.selected;this.selected=selected;if(this.imageObjAlt!==undefined&&selection_changed){var imageTmp=this.imageObj;this.imageObj=this.imageObjAlt;this.imageObjAlt=imageTmp}}},{key:\"_resizeImage\",value:function _resizeImage(){var width,height;if(this.options.shapeProperties.useImageSize===false){var ratio_width=1;var ratio_height=1;if(this.imageObj.width&&this.imageObj.height){if(this.imageObj.width>this.imageObj.height){ratio_width=this.imageObj.width/this.imageObj.height}else{ratio_height=this.imageObj.height/this.imageObj.width}}width=this.options.size*2*ratio_width;height=this.options.size*2*ratio_height}else{width=this.imageObj.width;height=this.imageObj.height}this.width=width;this.height=height;this.radius=.5*this.width}},{key:\"_drawRawCircle\",value:function _drawRawCircle(ctx,x,y,values){this.initContextForDraw(ctx,values);ctx.circle(x,y,values.size);this.performFill(ctx,values)}},{key:\"_drawImageAtPosition\",value:function _drawImageAtPosition(ctx,values){if(this.imageObj.width!=0){ctx.globalAlpha=1;this.enableShadow(ctx,values);var factor=1;if(this.options.shapeProperties.interpolation===true){factor=this.imageObj.width/this.width/this.body.view.scale}this.imageObj.drawImageAtPosition(ctx,factor,this.left,this.top,this.width,this.height);this.disableShadow(ctx,values)}}},{key:\"_drawImageLabel\",value:function _drawImageLabel(ctx,x,y,selected,hover){var yLabel;var offset=0;if(this.height!==undefined){offset=this.height*.5;var labelDimensions=this.labelModule.getTextSize(ctx,selected,hover);if(labelDimensions.lineCount>=1){offset+=labelDimensions.height/2}}yLabel=y+offset;if(this.options.label){this.labelOffset=offset}this.labelModule.draw(ctx,x,yLabel,selected,hover,\"hanging\")}}]);return CircleImageBase}(_NodeBase3[\"default\"]);exports[\"default\"]=CircleImageBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Label=__webpack_require__(117)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var CubicBezierEdge=__webpack_require__(215)[\"default\"];var BezierEdgeDynamic=__webpack_require__(217)[\"default\"];var BezierEdgeStatic=__webpack_require__(218)[\"default\"];var StraightEdge=__webpack_require__(219)[\"default\"];var Edge=function(){function Edge(options,body,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Edge);if(body===undefined){throw new Error(\"No body provided\")}this.options=util.bridgeObject(globalOptions);this.globalOptions=globalOptions;this.defaultOptions=defaultOptions;this.body=body;this.id=undefined;this.fromId=undefined;this.toId=undefined;this.selected=false;this.hover=false;this.labelDirty=true;this.baseWidth=this.options.width;this.baseFontSize=this.options.font.size;this.from=undefined;this.to=undefined;this.edgeType=undefined;this.connected=false;this.labelModule=new Label(this.body,this.options,true);this.setOptions(options)}(0,_createClass3[\"default\"])(Edge,[{key:\"setOptions\",value:function setOptions(options){if(!options){return}Edge.parseOptions(this.options,options,true,this.globalOptions);if(options.id!==undefined){this.id=options.id}if(options.from!==undefined){this.fromId=options.from}if(options.to!==undefined){this.toId=options.to}if(options.title!==undefined){this.title=options.title}if(options.value!==undefined){options.value=parseFloat(options.value)}var pile=[options,this.options,this.defaultOptions];this.chooser=ComponentUtil.choosify(\"edge\",pile);this.updateLabelModule(options);var dataChanged=this.updateEdgeType();this._setInteractionWidths();this.connect();if(options.hidden!==undefined||options.physics!==undefined){dataChanged=true}return dataChanged}},{key:\"getFormattingValues\",value:function getFormattingValues(){var toArrow=this.options.arrows.to===true||this.options.arrows.to.enabled===true;var fromArrow=this.options.arrows.from===true||this.options.arrows.from.enabled===true;var middleArrow=this.options.arrows.middle===true||this.options.arrows.middle.enabled===true;var inheritsColor=this.options.color.inherit;var values={toArrow:toArrow,toArrowScale:this.options.arrows.to.scaleFactor,toArrowType:this.options.arrows.to.type,middleArrow:middleArrow,middleArrowScale:this.options.arrows.middle.scaleFactor,middleArrowType:this.options.arrows.middle.type,fromArrow:fromArrow,fromArrowScale:this.options.arrows.from.scaleFactor,fromArrowType:this.options.arrows.from.type,arrowStrikethrough:this.options.arrowStrikethrough,color:inheritsColor?undefined:this.options.color.color,inheritsColor:inheritsColor,opacity:this.options.color.opacity,hidden:this.options.hidden,length:this.options.length,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y,dashes:this.options.dashes,width:this.options.width};if(this.selected||this.hover){if(this.chooser===true){if(this.selected){var selectedWidth=this.options.selectionWidth;if(typeof selectedWidth===\"function\"){values.width=selectedWidth(values.width)}else if(typeof selectedWidth===\"number\"){values.width+=selectedWidth}values.width=Math.max(values.width,.3/this.body.view.scale);values.color=this.options.color.highlight;values.shadow=this.options.shadow.enabled}else if(this.hover){var hoverWidth=this.options.hoverWidth;if(typeof hoverWidth===\"function\"){values.width=hoverWidth(values.width)}else if(typeof hoverWidth===\"number\"){values.width+=hoverWidth}values.width=Math.max(values.width,.3/this.body.view.scale);values.color=this.options.color.hover;values.shadow=this.options.shadow.enabled}}else if(typeof this.chooser===\"function\"){this.chooser(values,this.options.id,this.selected,this.hover);if(values.color!==undefined){values.inheritsColor=false}if(values.shadow===false){if(values.shadowColor!==this.options.shadow.color||values.shadowSize!==this.options.shadow.size||values.shadowX!==this.options.shadow.x||values.shadowY!==this.options.shadow.y){values.shadow=true}}}}else{values.shadow=this.options.shadow.enabled;values.width=Math.max(values.width,.3/this.body.view.scale)}return values}},{key:\"updateLabelModule\",value:function updateLabelModule(options){var pile=[options,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,pile);if(this.labelModule.baseSize!==undefined){this.baseFontSize=this.labelModule.baseSize}}},{key:\"updateEdgeType\",value:function updateEdgeType(){var smooth=this.options.smooth;var dataChanged=false;var changeInType=true;if(this.edgeType!==undefined){if(this.edgeType instanceof BezierEdgeDynamic&&smooth.enabled===true&&smooth.type===\"dynamic\"||this.edgeType instanceof CubicBezierEdge&&smooth.enabled===true&&smooth.type===\"cubicBezier\"||this.edgeType instanceof BezierEdgeStatic&&smooth.enabled===true&&smooth.type!==\"dynamic\"&&smooth.type!==\"cubicBezier\"||this.edgeType instanceof StraightEdge&&smooth.type.enabled===false){changeInType=false}if(changeInType===true){dataChanged=this.cleanup()}}if(changeInType===true){if(smooth.enabled===true){if(smooth.type===\"dynamic\"){dataChanged=true;this.edgeType=new BezierEdgeDynamic(this.options,this.body,this.labelModule)}else if(smooth.type===\"cubicBezier\"){this.edgeType=new CubicBezierEdge(this.options,this.body,this.labelModule)}else{this.edgeType=new BezierEdgeStatic(this.options,this.body,this.labelModule)}}else{this.edgeType=new StraightEdge(this.options,this.body,this.labelModule)}}else{this.edgeType.setOptions(this.options)}return dataChanged}},{key:\"connect\",value:function connect(){this.disconnect();this.from=this.body.nodes[this.fromId]||undefined;this.to=this.body.nodes[this.toId]||undefined;this.connected=this.from!==undefined&&this.to!==undefined;if(this.connected===true){this.from.attachEdge(this);this.to.attachEdge(this)}else{if(this.from){this.from.detachEdge(this)}if(this.to){this.to.detachEdge(this)}}this.edgeType.connect()}},{key:\"disconnect\",value:function disconnect(){if(this.from){this.from.detachEdge(this);this.from=undefined}if(this.to){this.to.detachEdge(this);this.to=undefined}this.connected=false}},{key:\"getTitle\",value:function getTitle(){return this.title}},{key:\"isSelected\",value:function isSelected(){return this.selected}},{key:\"getValue\",value:function getValue(){return this.options.value}},{key:\"setValueRange\",value:function setValueRange(min,max,total){if(this.options.value!==undefined){var scale=this.options.scaling.customScalingFunction(min,max,total,this.options.value);var widthDiff=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===true){var fontDiff=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+scale*fontDiff}this.options.width=this.options.scaling.min+scale*widthDiff}else{this.options.width=this.baseWidth;this.options.font.size=this.baseFontSize}this._setInteractionWidths();this.updateLabelModule()}},{key:\"_setInteractionWidths\",value:function _setInteractionWidths(){if(typeof this.options.hoverWidth===\"function\"){this.edgeType.hoverWidth=this.options.hoverWidth(this.options.width)}else{this.edgeType.hoverWidth=this.options.hoverWidth+this.options.width}if(typeof this.options.selectionWidth===\"function\"){this.edgeType.selectionWidth=this.options.selectionWidth(this.options.width)}else{this.edgeType.selectionWidth=this.options.selectionWidth+this.options.width}}},{key:\"draw\",value:function draw(ctx){var values=this.getFormattingValues();if(values.hidden){return}var viaNode=this.edgeType.getViaNode();var arrowData={};this.edgeType.fromPoint=this.edgeType.from;this.edgeType.toPoint=this.edgeType.to;if(values.fromArrow){arrowData.from=this.edgeType.getArrowData(ctx,\"from\",viaNode,this.selected,this.hover,values);if(values.arrowStrikethrough===false)this.edgeType.fromPoint=arrowData.from.core}if(values.toArrow){arrowData.to=this.edgeType.getArrowData(ctx,\"to\",viaNode,this.selected,this.hover,values);if(values.arrowStrikethrough===false)this.edgeType.toPoint=arrowData.to.core}if(values.middleArrow){arrowData.middle=this.edgeType.getArrowData(ctx,\"middle\",viaNode,this.selected,this.hover,values)}this.edgeType.drawLine(ctx,values,this.selected,this.hover,viaNode);this.drawArrows(ctx,arrowData,values);this.drawLabel(ctx,viaNode)}},{key:\"drawArrows\",value:function drawArrows(ctx,arrowData,values){if(values.fromArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.from)}if(values.middleArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.middle)}if(values.toArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.to)}}},{key:\"drawLabel\",value:function drawLabel(ctx,viaNode){if(this.options.label!==undefined){var node1=this.from;var node2=this.to;if(this.labelModule.differentState(this.selected,this.hover)){this.labelModule.getTextSize(ctx,this.selected,this.hover)}if(node1.id!=node2.id){this.labelModule.pointToSelf=false;var point=this.edgeType.getPoint(.5,viaNode);ctx.save();var rotationPoint=this._getRotation(ctx);if(rotationPoint.angle!=0){ctx.translate(rotationPoint.x,rotationPoint.y);ctx.rotate(rotationPoint.angle)}this.labelModule.draw(ctx,point.x,point.y,this.selected,this.hover);ctx.restore()}else{this.labelModule.pointToSelf=true;var x,y;var radius=this.options.selfReferenceSize;if(node1.shape.width>node1.shape.height){x=node1.x+node1.shape.width*.5;y=node1.y-radius}else{x=node1.x+radius;y=node1.y-node1.shape.height*.5}point=this._pointOnCircle(x,y,radius,.125);this.labelModule.draw(ctx,point.x,point.y,this.selected,this.hover)}}}},{key:\"getItemsOnPoint\",value:function getItemsOnPoint(point){var ret=[];if(this.labelModule.visible()){var rotationPoint=this._getRotation();if(ComponentUtil.pointInRect(this.labelModule.getSize(),point,rotationPoint)){ret.push({edgeId:this.id,labelId:0})}}var obj={left:point.x,top:point.y};if(this.isOverlappingWith(obj)){ret.push({edgeId:this.id})}return ret}},{key:\"isOverlappingWith\",value:function isOverlappingWith(obj){if(this.connected){var distMax=10;var xFrom=this.from.x;var yFrom=this.from.y;var xTo=this.to.x;var yTo=this.to.y;var xObj=obj.left;var yObj=obj.top;var dist=this.edgeType.getDistanceToEdge(xFrom,yFrom,xTo,yTo,xObj,yObj);return dist<distMax}else{return false}}},{key:\"_getRotation\",value:function _getRotation(ctx){var viaNode=this.edgeType.getViaNode();var point=this.edgeType.getPoint(.5,viaNode);if(ctx!==undefined){this.labelModule.calculateLabelSize(ctx,this.selected,this.hover,point.x,point.y)}var ret={x:point.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible()){return ret}if(this.options.font.align===\"horizontal\"){return ret}var dy=this.from.y-this.to.y;var dx=this.from.x-this.to.x;var angle=Math.atan2(dy,dx);if(angle<-1&&dx<0||angle>0&&dx<0){angle+=Math.PI}ret.angle=angle;return ret}},{key:\"_pointOnCircle\",value:function _pointOnCircle(x,y,radius,percentage){var angle=percentage*2*Math.PI;return{x:x+radius*Math.cos(angle),y:y-radius*Math.sin(angle)}}},{key:\"select\",value:function select(){this.selected=true}},{key:\"unselect\",value:function unselect(){this.selected=false}},{key:\"cleanup\",value:function cleanup(){return this.edgeType.cleanup()}},{key:\"remove\",value:function remove(){this.cleanup();this.disconnect();delete this.body.edges[this.id]}},{key:\"endPointsValid\",value:function endPointsValid(){return this.body.nodes[this.fromId]!==undefined&&this.body.nodes[this.toId]!==undefined}}],[{key:\"parseOptions\",value:function parseOptions(parentOptions,newOptions){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var copyFromGlobals=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;var fields=[\"arrowStrikethrough\",\"id\",\"from\",\"hidden\",\"hoverWidth\",\"labelHighlightBold\",\"length\",\"line\",\"opacity\",\"physics\",\"scaling\",\"selectionWidth\",\"selfReferenceSize\",\"to\",\"title\",\"value\",\"width\",\"font\",\"chosen\",\"widthConstraint\"];util.selectiveDeepExtend(fields,parentOptions,newOptions,allowDeletion);if(ComponentUtil.isValidLabel(newOptions.label)){parentOptions.label=newOptions.label}else{parentOptions.label=undefined}util.mergeOptions(parentOptions,newOptions,\"smooth\",globalOptions);util.mergeOptions(parentOptions,newOptions,\"shadow\",globalOptions);if(newOptions.dashes!==undefined&&newOptions.dashes!==null){parentOptions.dashes=newOptions.dashes}else if(allowDeletion===true&&newOptions.dashes===null){parentOptions.dashes=(0,_create2[\"default\"])(globalOptions.dashes)}if(newOptions.scaling!==undefined&&newOptions.scaling!==null){if(newOptions.scaling.min!==undefined){parentOptions.scaling.min=newOptions.scaling.min}if(newOptions.scaling.max!==undefined){parentOptions.scaling.max=newOptions.scaling.max}util.mergeOptions(parentOptions.scaling,newOptions.scaling,\"label\",globalOptions.scaling)}else if(allowDeletion===true&&newOptions.scaling===null){parentOptions.scaling=(0,_create2[\"default\"])(globalOptions.scaling)}if(newOptions.arrows!==undefined&&newOptions.arrows!==null){if(typeof newOptions.arrows===\"string\"){var arrows=newOptions.arrows.toLowerCase();parentOptions.arrows.to.enabled=arrows.indexOf(\"to\")!=-1;parentOptions.arrows.middle.enabled=arrows.indexOf(\"middle\")!=-1;parentOptions.arrows.from.enabled=arrows.indexOf(\"from\")!=-1}else if((0,_typeof3[\"default\"])(newOptions.arrows)===\"object\"){util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"to\",globalOptions.arrows);util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"middle\",globalOptions.arrows);util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"from\",globalOptions.arrows)}else{throw new Error(\"The arrow newOptions can only be an object or a string. Refer to the documentation. You used:\"+(0,_stringify2[\"default\"])(newOptions.arrows))}}else if(allowDeletion===true&&newOptions.arrows===null){parentOptions.arrows=(0,_create2[\"default\"])(globalOptions.arrows)}if(newOptions.color!==undefined&&newOptions.color!==null){var fromColor=newOptions.color;var toColor=parentOptions.color;if(copyFromGlobals){util.deepExtend(toColor,globalOptions.color,false,allowDeletion)}else{for(var i in toColor){if(toColor.hasOwnProperty(i)){delete toColor[i]}}}if(util.isString(toColor)){toColor.color=toColor;toColor.highlight=toColor;toColor.hover=toColor;toColor.inherit=false;if(fromColor.opacity===undefined){toColor.opacity=1}}else{var colorsDefined=false;if(fromColor.color!==undefined){toColor.color=fromColor.color;colorsDefined=true}if(fromColor.highlight!==undefined){toColor.highlight=fromColor.highlight;colorsDefined=true}if(fromColor.hover!==undefined){toColor.hover=fromColor.hover;colorsDefined=true}if(fromColor.inherit!==undefined){toColor.inherit=fromColor.inherit}if(fromColor.opacity!==undefined){toColor.opacity=Math.min(1,Math.max(0,fromColor.opacity))}if(colorsDefined===true){toColor.inherit=false}else{if(toColor.inherit===undefined){toColor.inherit=\"from\"}}}}else if(allowDeletion===true&&newOptions.color===null){parentOptions.color=util.bridgeObject(globalOptions.color)}if(allowDeletion===true&&newOptions.font===null){parentOptions.font=util.bridgeObject(globalOptions.font)}}}]);return Edge}();exports[\"default\"]=Edge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _EdgeBase2=__webpack_require__(118);var _EdgeBase3=_interopRequireDefault(_EdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeBase=function(_EdgeBase){(0,_inherits3[\"default\"])(BezierEdgeBase,_EdgeBase);function BezierEdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(BezierEdgeBase,[{key:\"_findBorderPositionBezier\",value:function _findBorderPositionBezier(nearNode,ctx){var viaNode=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this._getViaCoordinates();var maxIterations=10;var iteration=0;var low=0;var high=1;var pos,angle,distanceToBorder,distanceToPoint,difference;var threshold=.2;var node=this.to;var from=false;if(nearNode.id===this.from.id){node=this.from;from=true}while(low<=high&&iteration<maxIterations){var middle=(low+high)*.5;pos=this.getPoint(middle,viaNode);angle=Math.atan2(node.y-pos.y,node.x-pos.x);distanceToBorder=node.distanceToBorder(ctx,angle);distanceToPoint=Math.sqrt(Math.pow(pos.x-node.x,2)+Math.pow(pos.y-node.y,2));difference=distanceToBorder-distanceToPoint;if(Math.abs(difference)<threshold){break}else if(difference<0){if(from===false){low=middle}else{high=middle}}else{if(from===false){high=middle}else{low=middle}}iteration++}pos.t=middle;return pos}},{key:\"_getDistanceToBezierEdge\",value:function _getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via){var minDistance=1e9;var distance=void 0;var i=void 0,t=void 0,x=void 0,y=void 0;var lastX=x1;var lastY=y1;for(i=1;i<10;i++){t=.1*i;x=Math.pow(1-t,2)*x1+2*t*(1-t)*via.x+Math.pow(t,2)*x2;y=Math.pow(1-t,2)*y1+2*t*(1-t)*via.y+Math.pow(t,2)*y2;if(i>0){distance=this._getDistanceToLine(lastX,lastY,x,y,x3,y3);minDistance=distance<minDistance?distance:minDistance}lastX=x;lastY=y}return minDistance}},{key:\"_bezierCurve\",value:function _bezierCurve(ctx,values,viaNode1,viaNode2){var hasNode1=viaNode1!==undefined&&viaNode1.x!==undefined;var hasNode2=viaNode2!==undefined&&viaNode2.x!==undefined;ctx.beginPath();ctx.moveTo(this.fromPoint.x,this.fromPoint.y);if(hasNode1&&hasNode2){ctx.bezierCurveTo(viaNode1.x,viaNode1.y,viaNode2.x,viaNode2.y,this.toPoint.x,this.toPoint.y)}else if(hasNode1){ctx.quadraticCurveTo(viaNode1.x,viaNode1.y,this.toPoint.x,this.toPoint.y)}else{ctx.lineTo(this.toPoint.x,this.toPoint.y)}this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}}]);return BezierEdgeBase}(_EdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=function(){function NetworkUtil(){(0,_classCallCheck3[\"default\"])(this,NetworkUtil)}(0,_createClass3[\"default\"])(NetworkUtil,null,[{key:\"getRange\",value:function getRange(allNodes){var specificNodes=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var minY=1e9,maxY=-1e9,minX=1e9,maxX=-1e9,node;if(specificNodes.length>0){for(var i=0;i<specificNodes.length;i++){node=allNodes[specificNodes[i]];if(minX>node.shape.boundingBox.left){minX=node.shape.boundingBox.left}if(maxX<node.shape.boundingBox.right){maxX=node.shape.boundingBox.right}if(minY>node.shape.boundingBox.top){minY=node.shape.boundingBox.top}if(maxY<node.shape.boundingBox.bottom){maxY=node.shape.boundingBox.bottom}}}if(minX===1e9&&maxX===-1e9&&minY===1e9&&maxY===-1e9){minY=0,maxY=0,minX=0,maxX=0}return{minX:minX,maxX:maxX,minY:minY,maxY:maxY}}},{key:\"getRangeCore\",value:function getRangeCore(allNodes){var specificNodes=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var minY=1e9,maxY=-1e9,minX=1e9,maxX=-1e9,node;if(specificNodes.length>0){for(var i=0;i<specificNodes.length;i++){node=allNodes[specificNodes[i]];if(minX>node.x){minX=node.x}if(maxX<node.x){maxX=node.x}if(minY>node.y){minY=node.y}if(maxY<node.y){maxY=node.y}}}if(minX===1e9&&maxX===-1e9&&minY===1e9&&maxY===-1e9){minY=0,maxY=0,minX=0,maxX=0}return{minX:minX,maxX:maxX,minY:minY,maxY:maxY}}},{key:\"findCenter\",value:function findCenter(range){return{x:.5*(range.maxX+range.minX),y:.5*(range.maxY+range.minY)}}},{key:\"cloneOptions\",value:function cloneOptions(item,type){var clonedOptions={};if(type===undefined||type===\"node\"){util.deepExtend(clonedOptions,item.options,true);clonedOptions.x=item.x;clonedOptions.y=item.y;clonedOptions.amountOfConnections=item.edges.length}else{util.deepExtend(clonedOptions,item.options,true)}return clonedOptions}}]);return NetworkUtil}();exports[\"default\"]=NetworkUtil},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(124),__esModule:true}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);module.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(it){return cof(it)==\"String\"?it.split(\"\"):Object(it)}},function(module,exports,__webpack_require__){\"use strict\";var LIBRARY=__webpack_require__(52);var $export=__webpack_require__(17);var redefine=__webpack_require__(83);var hide=__webpack_require__(26);var has=__webpack_require__(22);var Iterators=__webpack_require__(31);var $iterCreate=__webpack_require__(129);var setToStringTag=__webpack_require__(59);var getPrototypeOf=__webpack_require__(85);var ITERATOR=__webpack_require__(13)(\"iterator\");var BUGGY=!([].keys&&\"next\"in[].keys())\n;var FF_ITERATOR=\"@@iterator\";var KEYS=\"keys\";var VALUES=\"values\";var returnThis=function(){return this};module.exports=function(Base,NAME,Constructor,next,DEFAULT,IS_SET,FORCED){$iterCreate(Constructor,NAME,next);var getMethod=function(kind){if(!BUGGY&&kind in proto)return proto[kind];switch(kind){case KEYS:return function keys(){return new Constructor(this,kind)};case VALUES:return function values(){return new Constructor(this,kind)}}return function entries(){return new Constructor(this,kind)}};var TAG=NAME+\" Iterator\";var DEF_VALUES=DEFAULT==VALUES;var VALUES_BUG=false;var proto=Base.prototype;var $native=proto[ITERATOR]||proto[FF_ITERATOR]||DEFAULT&&proto[DEFAULT];var $default=$native||getMethod(DEFAULT);var $entries=DEFAULT?!DEF_VALUES?$default:getMethod(\"entries\"):undefined;var $anyNative=NAME==\"Array\"?proto.entries||$native:$native;var methods,key,IteratorPrototype;if($anyNative){IteratorPrototype=getPrototypeOf($anyNative.call(new Base));if(IteratorPrototype!==Object.prototype&&IteratorPrototype.next){setToStringTag(IteratorPrototype,TAG,true);if(!LIBRARY&&!has(IteratorPrototype,ITERATOR))hide(IteratorPrototype,ITERATOR,returnThis)}}if(DEF_VALUES&&$native&&$native.name!==VALUES){VALUES_BUG=true;$default=function values(){return $native.call(this)}}if((!LIBRARY||FORCED)&&(BUGGY||VALUES_BUG||!proto[ITERATOR])){hide(proto,ITERATOR,$default)}Iterators[NAME]=$default;Iterators[TAG]=returnThis;if(DEFAULT){methods={values:DEF_VALUES?$default:getMethod(VALUES),keys:IS_SET?$default:getMethod(KEYS),entries:$entries};if(FORCED)for(key in methods){if(!(key in proto))redefine(proto,key,methods[key])}else $export($export.P+$export.F*(BUGGY||VALUES_BUG),NAME,methods)}return methods}},function(module,exports,__webpack_require__){var aFunction=__webpack_require__(128);module.exports=function(fn,that,length){aFunction(fn);if(that===undefined)return fn;switch(length){case 1:return function(a){return fn.call(that,a)};case 2:return function(a,b){return fn.call(that,a,b)};case 3:return function(a,b,c){return fn.call(that,a,b,c)}}return function(){return fn.apply(that,arguments)}}},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(21)&&!__webpack_require__(28)(function(){return Object.defineProperty(__webpack_require__(82)(\"div\"),\"a\",{get:function(){return 7}}).a!=7})},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);var document=__webpack_require__(18).document;var is=isObject(document)&&isObject(document.createElement);module.exports=function(it){return is?document.createElement(it):{}}},function(module,exports,__webpack_require__){module.exports=__webpack_require__(26)},function(module,exports,__webpack_require__){var has=__webpack_require__(22);var toIObject=__webpack_require__(25);var arrayIndexOf=__webpack_require__(131)(false);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\");module.exports=function(object,names){var O=toIObject(object);var i=0;var result=[];var key;for(key in O)if(key!=IE_PROTO)has(O,key)&&result.push(key);while(names.length>i)if(has(O,key=names[i++])){~arrayIndexOf(result,key)||result.push(key)}return result}},function(module,exports,__webpack_require__){var has=__webpack_require__(22);var toObject=__webpack_require__(41);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\");var ObjectProto=Object.prototype;module.exports=Object.getPrototypeOf||function(O){O=toObject(O);if(has(O,IE_PROTO))return O[IE_PROTO];if(typeof O.constructor==\"function\"&&O instanceof O.constructor){return O.constructor.prototype}return O instanceof Object?ObjectProto:null}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);var TAG=__webpack_require__(13)(\"toStringTag\");var ARG=cof(function(){return arguments}())==\"Arguments\";var tryGet=function(it,key){try{return it[key]}catch(e){}};module.exports=function(it){var O,T,B;return it===undefined?\"Undefined\":it===null?\"Null\":typeof(T=tryGet(O=Object(it),TAG))==\"string\"?T:ARG?cof(O):(B=cof(O))==\"Object\"&&typeof O.callee==\"function\"?\"Arguments\":B}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);var core=__webpack_require__(7);var fails=__webpack_require__(28);module.exports=function(KEY,exec){var fn=(core.Object||{})[KEY]||Object[KEY];var exp={};exp[KEY]=exec(fn);$export($export.S+$export.F*fails(function(){fn(1)}),\"Object\",exp)}},function(module,exports,__webpack_require__){var $keys=__webpack_require__(84);var hiddenKeys=__webpack_require__(58).concat(\"length\",\"prototype\");exports.f=Object.getOwnPropertyNames||function getOwnPropertyNames(O){return $keys(O,hiddenKeys)}},function(module,exports,__webpack_require__){var pIE=__webpack_require__(42);var createDesc=__webpack_require__(39);var toIObject=__webpack_require__(25);var toPrimitive=__webpack_require__(53);var has=__webpack_require__(22);var IE8_DOM_DEFINE=__webpack_require__(81);var gOPD=Object.getOwnPropertyDescriptor;exports.f=__webpack_require__(21)?gOPD:function getOwnPropertyDescriptor(O,P){O=toIObject(O);P=toPrimitive(P,true);if(IE8_DOM_DEFINE)try{return gOPD(O,P)}catch(e){}if(has(O,P))return createDesc(!pIE.f.call(O,P),O[P])}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(162),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";function Point2d(x,y){this.x=x!==undefined?x:0;this.y=y!==undefined?y:0}module.exports=Point2d},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);function Slider(container,options){if(container===undefined){throw new Error(\"No container element defined\")}this.container=container;this.visible=options&&options.visible!=undefined?options.visible:true;if(this.visible){this.frame=document.createElement(\"DIV\");this.frame.style.width=\"100%\";this.frame.style.position=\"relative\";this.container.appendChild(this.frame);this.frame.prev=document.createElement(\"INPUT\");this.frame.prev.type=\"BUTTON\";this.frame.prev.value=\"Prev\";this.frame.appendChild(this.frame.prev);this.frame.play=document.createElement(\"INPUT\");this.frame.play.type=\"BUTTON\";this.frame.play.value=\"Play\";this.frame.appendChild(this.frame.play);this.frame.next=document.createElement(\"INPUT\");this.frame.next.type=\"BUTTON\";this.frame.next.value=\"Next\";this.frame.appendChild(this.frame.next);this.frame.bar=document.createElement(\"INPUT\");this.frame.bar.type=\"BUTTON\";this.frame.bar.style.position=\"absolute\";this.frame.bar.style.border=\"1px solid red\";this.frame.bar.style.width=\"100px\";this.frame.bar.style.height=\"6px\";this.frame.bar.style.borderRadius=\"2px\";this.frame.bar.style.MozBorderRadius=\"2px\";this.frame.bar.style.border=\"1px solid #7F7F7F\";this.frame.bar.style.backgroundColor=\"#E5E5E5\";this.frame.appendChild(this.frame.bar);this.frame.slide=document.createElement(\"INPUT\");this.frame.slide.type=\"BUTTON\";this.frame.slide.style.margin=\"0px\";this.frame.slide.value=\" \";this.frame.slide.style.position=\"relative\";this.frame.slide.style.left=\"-100px\";this.frame.appendChild(this.frame.slide);var me=this;this.frame.slide.onmousedown=function(event){me._onMouseDown(event)};this.frame.prev.onclick=function(event){me.prev(event)};this.frame.play.onclick=function(event){me.togglePlay(event)};this.frame.next.onclick=function(event){me.next(event)}}this.onChangeCallback=undefined;this.values=[];this.index=undefined;this.playTimeout=undefined;this.playInterval=1e3;this.playLoop=true}Slider.prototype.prev=function(){var index=this.getIndex();if(index>0){index--;this.setIndex(index)}};Slider.prototype.next=function(){var index=this.getIndex();if(index<this.values.length-1){index++;this.setIndex(index)}};Slider.prototype.playNext=function(){var start=new Date;var index=this.getIndex();if(index<this.values.length-1){index++;this.setIndex(index)}else if(this.playLoop){index=0;this.setIndex(index)}var end=new Date;var diff=end-start;var interval=Math.max(this.playInterval-diff,0);var me=this;this.playTimeout=setTimeout(function(){me.playNext()},interval)};Slider.prototype.togglePlay=function(){if(this.playTimeout===undefined){this.play()}else{this.stop()}};Slider.prototype.play=function(){if(this.playTimeout)return;this.playNext();if(this.frame){this.frame.play.value=\"Stop\"}};Slider.prototype.stop=function(){clearInterval(this.playTimeout);this.playTimeout=undefined;if(this.frame){this.frame.play.value=\"Play\"}};Slider.prototype.setOnChangeCallback=function(callback){this.onChangeCallback=callback};Slider.prototype.setPlayInterval=function(interval){this.playInterval=interval};Slider.prototype.getPlayInterval=function(){return this.playInterval};Slider.prototype.setPlayLoop=function(doLoop){this.playLoop=doLoop};Slider.prototype.onChange=function(){if(this.onChangeCallback!==undefined){this.onChangeCallback()}};Slider.prototype.redraw=function(){if(this.frame){this.frame.bar.style.top=this.frame.clientHeight/2-this.frame.bar.offsetHeight/2+\"px\";this.frame.bar.style.width=this.frame.clientWidth-this.frame.prev.clientWidth-this.frame.play.clientWidth-this.frame.next.clientWidth-30+\"px\";var left=this.indexToLeft(this.index);this.frame.slide.style.left=left+\"px\"}};Slider.prototype.setValues=function(values){this.values=values;if(this.values.length>0)this.setIndex(0);else this.index=undefined};Slider.prototype.setIndex=function(index){if(index<this.values.length){this.index=index;this.redraw();this.onChange()}else{throw new Error(\"Index out of range\")}};Slider.prototype.getIndex=function(){return this.index};Slider.prototype.get=function(){return this.values[this.index]};Slider.prototype._onMouseDown=function(event){var leftButtonDown=event.which?event.which===1:event.button===1;if(!leftButtonDown)return;this.startClientX=event.clientX;this.startSlideX=parseFloat(this.frame.slide.style.left);this.frame.style.cursor=\"move\";var me=this;this.onmousemove=function(event){me._onMouseMove(event)};this.onmouseup=function(event){me._onMouseUp(event)};util.addEventListener(document,\"mousemove\",this.onmousemove);util.addEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault(event)};Slider.prototype.leftToIndex=function(left){var width=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10;var x=left-3;var index=Math.round(x/width*(this.values.length-1));if(index<0)index=0;if(index>this.values.length-1)index=this.values.length-1;return index};Slider.prototype.indexToLeft=function(index){var width=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10;var x=index/(this.values.length-1)*width;var left=x+3;return left};Slider.prototype._onMouseMove=function(event){var diff=event.clientX-this.startClientX;var x=this.startSlideX+diff;var index=this.leftToIndex(x);this.setIndex(index);util.preventDefault()};Slider.prototype._onMouseUp=function(event){this.frame.style.cursor=\"auto\";util.removeEventListener(document,\"mousemove\",this.onmousemove);util.removeEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault()};module.exports=Slider},function(module,exports,__webpack_require__){\"use strict\";function StepNumber(start,end,step,prettyStep){this._start=0;this._end=0;this._step=1;this.prettyStep=true;this.precision=5;this._current=0;this.setRange(start,end,step,prettyStep)}StepNumber.prototype.isNumeric=function(n){return!isNaN(parseFloat(n))&&isFinite(n)};StepNumber.prototype.setRange=function(start,end,step,prettyStep){if(!this.isNumeric(start)){throw new Error(\"Parameter 'start' is not numeric; value: \"+start)}if(!this.isNumeric(end)){throw new Error(\"Parameter 'end' is not numeric; value: \"+start)}if(!this.isNumeric(step)){throw new Error(\"Parameter 'step' is not numeric; value: \"+start)}this._start=start?start:0;this._end=end?end:0;this.setStep(step,prettyStep)};StepNumber.prototype.setStep=function(step,prettyStep){if(step===undefined||step<=0)return;if(prettyStep!==undefined)this.prettyStep=prettyStep;if(this.prettyStep===true)this._step=StepNumber.calculatePrettyStep(step);else this._step=step};StepNumber.calculatePrettyStep=function(step){var log10=function log10(x){return Math.log(x)/Math.LN10};var step1=Math.pow(10,Math.round(log10(step))),step2=2*Math.pow(10,Math.round(log10(step/2))),step5=5*Math.pow(10,Math.round(log10(step/5)));var prettyStep=step1;if(Math.abs(step2-step)<=Math.abs(prettyStep-step))prettyStep=step2;if(Math.abs(step5-step)<=Math.abs(prettyStep-step))prettyStep=step5;if(prettyStep<=0){prettyStep=1}return prettyStep};StepNumber.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))};StepNumber.prototype.getStep=function(){return this._step};StepNumber.prototype.start=function(checkFirst){if(checkFirst===undefined){checkFirst=false}this._current=this._start-this._start%this._step;if(checkFirst){if(this.getCurrent()<this._start){this.next()}}};StepNumber.prototype.next=function(){this._current+=this._step};StepNumber.prototype.end=function(){return this._current>this._end};module.exports=StepNumber},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Camera=__webpack_require__(95);var Point3d=__webpack_require__(34);var STYLE={BAR:0,BARCOLOR:1,BARSIZE:2,DOT:3,DOTLINE:4,DOTCOLOR:5,DOTSIZE:6,GRID:7,LINE:8,SURFACE:9};var STYLENAME={dot:STYLE.DOT,\"dot-line\":STYLE.DOTLINE,\"dot-color\":STYLE.DOTCOLOR,\"dot-size\":STYLE.DOTSIZE,line:STYLE.LINE,grid:STYLE.GRID,surface:STYLE.SURFACE,bar:STYLE.BAR,\"bar-color\":STYLE.BARCOLOR,\"bar-size\":STYLE.BARSIZE};var OPTIONKEYS=[\"width\",\"height\",\"filterLabel\",\"legendLabel\",\"xLabel\",\"yLabel\",\"zLabel\",\"xValueLabel\",\"yValueLabel\",\"zValueLabel\",\"showXAxis\",\"showYAxis\",\"showZAxis\",\"showGrid\",\"showPerspective\",\"showShadow\",\"keepAspectRatio\",\"verticalRatio\",\"dotSizeRatio\",\"dotSizeMinFraction\",\"dotSizeMaxFraction\",\"showAnimationControls\",\"animationInterval\",\"animationPreload\",\"animationAutoStart\",\"axisColor\",\"gridColor\",\"xCenter\",\"yCenter\"];var PREFIXEDOPTIONKEYS=[\"xBarWidth\",\"yBarWidth\",\"valueMin\",\"valueMax\",\"xMin\",\"xMax\",\"xStep\",\"yMin\",\"yMax\",\"yStep\",\"zMin\",\"zMax\",\"zStep\"];var DEFAULTS=undefined;function isEmpty(obj){for(var prop in obj){if(obj.hasOwnProperty(prop))return false}return true}function capitalize(str){if(str===undefined||str===\"\"||typeof str!=\"string\"){return str}return str.charAt(0).toUpperCase()+str.slice(1)}function prefixFieldName(prefix,fieldName){if(prefix===undefined||prefix===\"\"){return fieldName}return prefix+capitalize(fieldName)}function forceCopy(src,dst,fields,prefix){var srcKey;var dstKey;for(var i=0;i<fields.length;++i){srcKey=fields[i];dstKey=prefixFieldName(prefix,srcKey);dst[dstKey]=src[srcKey]}}function safeCopy(src,dst,fields,prefix){var srcKey;var dstKey;for(var i=0;i<fields.length;++i){srcKey=fields[i];if(src[srcKey]===undefined)continue;dstKey=prefixFieldName(prefix,srcKey);dst[dstKey]=src[srcKey]}}function setDefaults(src,dst){if(src===undefined||isEmpty(src)){throw new Error(\"No DEFAULTS passed\")}if(dst===undefined){throw new Error(\"No dst passed\")}DEFAULTS=src;forceCopy(src,dst,OPTIONKEYS);forceCopy(src,dst,PREFIXEDOPTIONKEYS,\"default\");setSpecialSettings(src,dst);dst.margin=10;dst.showGrayBottom=false;dst.showTooltip=false;dst.onclick_callback=null;dst.eye=new Point3d(0,0,-1)}function setOptions(options,dst){if(options===undefined){return}if(dst===undefined){throw new Error(\"No dst passed\")}if(DEFAULTS===undefined||isEmpty(DEFAULTS)){throw new Error(\"DEFAULTS not set for module Settings\")}safeCopy(options,dst,OPTIONKEYS);safeCopy(options,dst,PREFIXEDOPTIONKEYS,\"default\");setSpecialSettings(options,dst)}function setSpecialSettings(src,dst){if(src.backgroundColor!==undefined){setBackgroundColor(src.backgroundColor,dst)}setDataColor(src.dataColor,dst);setStyle(src.style,dst);setShowLegend(src.showLegend,dst);setCameraPosition(src.cameraPosition,dst);if(src.tooltip!==undefined){dst.showTooltip=src.tooltip}if(src.onclick!=undefined){dst.onclick_callback=src.onclick}if(src.tooltipStyle!==undefined){util.selectiveDeepExtend([\"tooltipStyle\"],dst,src)}}function setShowLegend(showLegend,dst){if(showLegend===undefined){var isAutoByDefault=DEFAULTS.showLegend===undefined;if(isAutoByDefault){var isLegendGraphStyle=dst.style===STYLE.DOTCOLOR||dst.style===STYLE.DOTSIZE;dst.showLegend=isLegendGraphStyle}else{}}else{dst.showLegend=showLegend}}function getStyleNumberByName(styleName){var number=STYLENAME[styleName];if(number===undefined){return-1}return number}function checkStyleNumber(style){var valid=false;for(var n in STYLE){if(STYLE[n]===style){valid=true;break}}return valid}function setStyle(style,dst){if(style===undefined){return}var styleNumber;if(typeof style===\"string\"){styleNumber=getStyleNumberByName(style);if(styleNumber===-1){throw new Error(\"Style '\"+style+\"' is invalid\")}}else{if(!checkStyleNumber(style)){throw new Error(\"Style '\"+style+\"' is invalid\")}styleNumber=style}dst.style=styleNumber}function setBackgroundColor(backgroundColor,dst){var fill=\"white\";var stroke=\"gray\";var strokeWidth=1;if(typeof backgroundColor===\"string\"){fill=backgroundColor;stroke=\"none\";strokeWidth=0}else if((typeof backgroundColor===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(backgroundColor))===\"object\"){if(backgroundColor.fill!==undefined)fill=backgroundColor.fill;if(backgroundColor.stroke!==undefined)stroke=backgroundColor.stroke;if(backgroundColor.strokeWidth!==undefined)strokeWidth=backgroundColor.strokeWidth}else{throw new Error(\"Unsupported type of backgroundColor\")}dst.frame.style.backgroundColor=fill;dst.frame.style.borderColor=stroke;dst.frame.style.borderWidth=strokeWidth+\"px\";dst.frame.style.borderStyle=\"solid\"}function setDataColor(dataColor,dst){if(dataColor===undefined){return}if(dst.dataColor===undefined){dst.dataColor={}}if(typeof dataColor===\"string\"){dst.dataColor.fill=dataColor;dst.dataColor.stroke=dataColor}else{if(dataColor.fill){dst.dataColor.fill=dataColor.fill}if(dataColor.stroke){dst.dataColor.stroke=dataColor.stroke}if(dataColor.strokeWidth!==undefined){dst.dataColor.strokeWidth=dataColor.strokeWidth}}}function setCameraPosition(cameraPosition,dst){var camPos=cameraPosition;if(camPos===undefined){return}if(dst.camera===undefined){dst.camera=new Camera}dst.camera.setArmRotation(camPos.horizontal,camPos.vertical);dst.camera.setArmLength(camPos.distance)}module.exports.STYLE=STYLE;module.exports.setDefaults=setDefaults;module.exports.setOptions=setOptions;module.exports.setCameraPosition=setCameraPosition},function(module,exports,__webpack_require__){\"use strict\";var _sign=__webpack_require__(165);var _sign2=_interopRequireDefault(_sign);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Point3d=__webpack_require__(34);function Camera(){this.armLocation=new Point3d;this.armRotation={};this.armRotation.horizontal=0;this.armRotation.vertical=0;this.armLength=1.7;this.cameraOffset=new Point3d;this.offsetMultiplier=.6;this.cameraLocation=new Point3d;this.cameraRotation=new Point3d(.5*Math.PI,0,0);this.calculateCameraOrientation()}Camera.prototype.setOffset=function(x,y){var abs=Math.abs,sign=_sign2[\"default\"],mul=this.offsetMultiplier,border=this.armLength*mul;if(abs(x)>border){x=sign(x)*border}if(abs(y)>border){y=sign(y)*border}this.cameraOffset.x=x;this.cameraOffset.y=y;this.calculateCameraOrientation()};Camera.prototype.getOffset=function(){return this.cameraOffset};Camera.prototype.setArmLocation=function(x,y,z){this.armLocation.x=x;this.armLocation.y=y;this.armLocation.z=z;this.calculateCameraOrientation()};Camera.prototype.setArmRotation=function(horizontal,vertical){if(horizontal!==undefined){this.armRotation.horizontal=horizontal}if(vertical!==undefined){this.armRotation.vertical=vertical;if(this.armRotation.vertical<0)this.armRotation.vertical=0;if(this.armRotation.vertical>.5*Math.PI)this.armRotation.vertical=.5*Math.PI}if(horizontal!==undefined||vertical!==undefined){this.calculateCameraOrientation()}};Camera.prototype.getArmRotation=function(){var rot={};rot.horizontal=this.armRotation.horizontal;rot.vertical=this.armRotation.vertical;return rot};Camera.prototype.setArmLength=function(length){if(length===undefined)return;this.armLength=length;if(this.armLength<.71)this.armLength=.71;if(this.armLength>5)this.armLength=5;this.setOffset(this.cameraOffset.x,this.cameraOffset.y);this.calculateCameraOrientation()};Camera.prototype.getArmLength=function(){return this.armLength};Camera.prototype.getCameraLocation=function(){return this.cameraLocation};Camera.prototype.getCameraRotation=function(){return this.cameraRotation};Camera.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical);this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical);this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical);this.cameraRotation.x=Math.PI/2-this.armRotation.vertical;this.cameraRotation.y=0;this.cameraRotation.z=-this.armRotation.horizontal;var xa=this.cameraRotation.x;var za=this.cameraRotation.z;var dx=this.cameraOffset.x;var dy=this.cameraOffset.y;var sin=Math.sin,cos=Math.cos;this.cameraLocation.x=this.cameraLocation.x+dx*cos(za)+dy*-sin(za)*cos(xa);this.cameraLocation.y=this.cameraLocation.y+dx*sin(za)+dy*cos(za)*cos(xa);this.cameraLocation.z=this.cameraLocation.z+dy*sin(xa)};module.exports=Camera},function(module,exports,__webpack_require__){\"use strict\";var DataView=__webpack_require__(12);function Filter(dataGroup,column,graph){this.dataGroup=dataGroup;this.column=column;this.graph=graph;this.index=undefined;this.value=undefined;this.values=dataGroup.getDistinctValues(this.column);if(this.values.length>0){this.selectValue(0)}this.dataPoints=[];this.loaded=false;this.onLoadCallback=undefined;if(graph.animationPreload){this.loaded=false;this.loadInBackground()}else{this.loaded=true}}Filter.prototype.isLoaded=function(){return this.loaded};Filter.prototype.getLoadedProgress=function(){var len=this.values.length;var i=0;while(this.dataPoints[i]){i++}return Math.round(i/len*100)};Filter.prototype.getLabel=function(){return this.graph.filterLabel};Filter.prototype.getColumn=function(){return this.column};Filter.prototype.getSelectedValue=function(){if(this.index===undefined)return undefined;return this.values[this.index]};Filter.prototype.getValues=function(){return this.values};Filter.prototype.getValue=function(index){if(index>=this.values.length)throw new Error(\"Index out of range\");return this.values[index]};Filter.prototype._getDataPoints=function(index){if(index===undefined)index=this.index;if(index===undefined)return[];var dataPoints;if(this.dataPoints[index]){dataPoints=this.dataPoints[index]}else{var f={};f.column=this.column;f.value=this.values[index];var dataView=new DataView(this.dataGroup.getDataSet(),{filter:function filter(item){return item[f.column]==f.value}}).get();dataPoints=this.dataGroup._getDataPoints(dataView);this.dataPoints[index]=dataPoints}return dataPoints};Filter.prototype.setOnLoadCallback=function(callback){this.onLoadCallback=callback};Filter.prototype.selectValue=function(index){if(index>=this.values.length)throw new Error(\"Index out of range\");this.index=index;this.value=this.values[index]};Filter.prototype.loadInBackground=function(index){if(index===undefined)index=0;var frame=this.graph.frame;if(index<this.values.length){if(frame.progress===undefined){frame.progress=document.createElement(\"DIV\");frame.progress.style.position=\"absolute\";frame.progress.style.color=\"gray\";frame.appendChild(frame.progress)}var progress=this.getLoadedProgress();frame.progress.innerHTML=\"Loading animation... \"+progress+\"%\";frame.progress.style.bottom=60+\"px\";frame.progress.style.left=10+\"px\";var me=this;setTimeout(function(){me.loadInBackground(index+1)},10);this.loaded=false}else{this.loaded=true;if(frame.progress!==undefined){frame.removeChild(frame.progress);frame.progress=undefined}if(this.onLoadCallback)this.onLoadCallback()}};module.exports=Filter},function(module,exports,__webpack_require__){\"use strict\";var keycharm=__webpack_require__(35);var Emitter=__webpack_require__(44);var Hammer=__webpack_require__(10);var util=__webpack_require__(2);function Activator(container){this.active=false;this.dom={container:container};this.dom.overlay=document.createElement(\"div\");this.dom.overlay.className=\"vis-overlay\";this.dom.container.appendChild(this.dom.overlay);this.hammer=Hammer(this.dom.overlay);this.hammer.on(\"tap\",this._onTapOverlay.bind(this));var me=this;var events=[\"tap\",\"doubletap\",\"press\",\"pinch\",\"pan\",\"panstart\",\"panmove\",\"panend\"];events.forEach(function(event){me.hammer.on(event,function(event){event.stopPropagation()})});if(document&&document.body){this.onClick=function(event){if(!_hasParent(event.target,container)){me.deactivate()}};document.body.addEventListener(\"click\",this.onClick)}if(this.keycharm!==undefined){this.keycharm.destroy()}this.keycharm=keycharm();this.escListener=this.deactivate.bind(this)}Emitter(Activator.prototype);Activator.current=null;Activator.prototype.destroy=function(){this.deactivate();this.dom.overlay.parentNode.removeChild(this.dom.overlay);if(this.onClick){document.body.removeEventListener(\"click\",this.onClick)}this.hammer.destroy();this.hammer=null};Activator.prototype.activate=function(){if(Activator.current){Activator.current.deactivate()}Activator.current=this;this.active=true;this.dom.overlay.style.display=\"none\";util.addClassName(this.dom.container,\"vis-active\");this.emit(\"change\");this.emit(\"activate\");this.keycharm.bind(\"esc\",this.escListener)};Activator.prototype.deactivate=function(){this.active=false;this.dom.overlay.style.display=\"\";util.removeClassName(this.dom.container,\"vis-active\");this.keycharm.unbind(\"esc\",this.escListener);this.emit(\"change\");this.emit(\"deactivate\")};Activator.prototype._onTapOverlay=function(event){this.activate();event.stopPropagation()};function _hasParent(element,parent){while(element){if(element===parent){return true}element=element.parentNode}return false}module.exports=Activator},function(module,exports,__webpack_require__){\"use strict\";exports[\"en\"]={current:\"current\",time:\"time\"};exports[\"en_EN\"]=exports[\"en\"];exports[\"en_US\"]=exports[\"en\"];exports[\"it\"]={current:\"attuale\",time:\"tempo\"};exports[\"it_IT\"]=exports[\"it\"];exports[\"it_CH\"]=exports[\"it\"];exports[\"nl\"]={current:\"huidige\",time:\"tijd\"};exports[\"nl_NL\"]=exports[\"nl\"];exports[\"nl_BE\"]=exports[\"nl\"];exports[\"de\"]={current:\"Aktuelle\",time:\"Zeit\"};exports[\"de_DE\"]=exports[\"de\"];exports[\"fr\"]={current:\"actuel\",time:\"heure\"};exports[\"fr_FR\"]=exports[\"fr\"];exports[\"fr_CA\"]=exports[\"fr\"];exports[\"fr_BE\"]=exports[\"fr\"];exports[\"es\"]={current:\"corriente\",time:\"hora\"};exports[\"es_ES\"]=exports[\"es\"]},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var TimeStep=__webpack_require__(66);var Component=__webpack_require__(16);var Group=__webpack_require__(68);var BackgroundGroup=__webpack_require__(69);var BoxItem=__webpack_require__(101);var PointItem=__webpack_require__(102);var RangeItem=__webpack_require__(70);var BackgroundItem=__webpack_require__(103);var Popup=__webpack_require__(104)[\"default\"];var UNGROUPED=\"__ungrouped__\";var BACKGROUND=\"__background__\";function ItemSet(body,options){this.body=body;this.defaultOptions={type:null,orientation:{item:\"bottom\"},align:\"auto\",stack:true,stackSubgroups:true,groupOrderSwap:function groupOrderSwap(fromGroup,toGroup,groups){var targetOrder=toGroup.order;toGroup.order=fromGroup.order;fromGroup.order=targetOrder},groupOrder:\"order\",selectable:true,multiselect:false,itemsAlwaysDraggable:{item:false,range:false},editable:{updateTime:false,updateGroup:false,add:false,remove:false,overrideItems:false},groupEditable:{order:false,add:false,remove:false},snap:TimeStep.snap,onDropObjectOnItem:function onDropObjectOnItem(objectData,item,callback){callback(item)},onAdd:function onAdd(item,callback){callback(item)},onUpdate:function onUpdate(item,callback){callback(item)},onMove:function onMove(item,callback){callback(item)},onRemove:function onRemove(item,callback){callback(item)},onMoving:function onMoving(item,callback){callback(item)},onAddGroup:function onAddGroup(item,callback){callback(item)},onMoveGroup:function onMoveGroup(item,callback){callback(item)},onRemoveGroup:function onRemoveGroup(item,callback){callback(item)},margin:{item:{horizontal:10,vertical:10},axis:20},showTooltips:true,tooltip:{followMouse:false,overflowMethod:\"flip\"},tooltipOnItemUpdateTime:false};this.options=util.extend({},this.defaultOptions);this.options.rtl=options.rtl;this.itemOptions={type:{start:\"Date\",end:\"Date\"}};this.conversion={toScreen:body.util.toScreen,toTime:body.util.toTime};this.dom={};this.props={};this.hammer=null;var me=this;this.itemsData=null;this.groupsData=null;this.itemListeners={add:function add(event,params,senderId){me._onAdd(params.items)},update:function update(event,params,senderId){me._onUpdate(params.items)},remove:function remove(event,params,senderId){me._onRemove(params.items)}};this.groupListeners={add:function add(event,params,senderId){me._onAddGroups(params.items);if(me.groupsData&&me.groupsData.length>0){var groupsData=me.groupsData.getDataSet();groupsData.get().forEach(function(groupData){if(groupData.nestedGroups){if(groupData.showNested!=false){groupData.showNested=true}var updatedGroups=[];groupData.nestedGroups.forEach(function(nestedGroupId){var updatedNestedGroup=groupsData.get(nestedGroupId);if(!updatedNestedGroup){return}updatedNestedGroup.nestedInGroup=groupData.id;if(groupData.showNested==false){updatedNestedGroup.visible=false}updatedGroups=updatedGroups.concat(updatedNestedGroup)});groupsData.update(updatedGroups,senderId)}})}},update:function update(event,params,senderId){me._onUpdateGroups(params.items)},remove:function remove(event,params,senderId){me._onRemoveGroups(params.items)}};this.items={};this.groups={};this.groupIds=[];this.selection=[];this.popup=null;this.touchParams={};this.groupTouchParams={};this._create();this.setOptions(options)}ItemSet.prototype=new Component;ItemSet.types={background:BackgroundItem,box:BoxItem,range:RangeItem,point:PointItem};ItemSet.prototype._create=function(){var frame=document.createElement(\"div\");frame.className=\"vis-itemset\";frame[\"timeline-itemset\"]=this;this.dom.frame=frame;var background=document.createElement(\"div\");background.className=\"vis-background\";frame.appendChild(background);this.dom.background=background;var foreground=document.createElement(\"div\");foreground.className=\"vis-foreground\";frame.appendChild(foreground);this.dom.foreground=foreground;var axis=document.createElement(\"div\");axis.className=\"vis-axis\";this.dom.axis=axis;var labelSet=document.createElement(\"div\");labelSet.className=\"vis-labelset\";this.dom.labelSet=labelSet;this._updateUngrouped();var backgroundGroup=new BackgroundGroup(BACKGROUND,null,this);backgroundGroup.show();this.groups[BACKGROUND]=backgroundGroup;this.hammer=new Hammer(this.body.dom.centerContainer);this.hammer.on(\"hammer.input\",function(event){if(event.isFirst){this._onTouch(event)}}.bind(this));this.hammer.on(\"panstart\",this._onDragStart.bind(this));this.hammer.on(\"panmove\",this._onDrag.bind(this));this.hammer.on(\"panend\",this._onDragEnd.bind(this));this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL});this.hammer.on(\"tap\",this._onSelectItem.bind(this));this.hammer.on(\"press\",this._onMultiSelectItem.bind(this));this.hammer.on(\"doubletap\",this._onAddItem.bind(this));if(this.options.rtl){\nthis.groupHammer=new Hammer(this.body.dom.rightContainer)}else{this.groupHammer=new Hammer(this.body.dom.leftContainer)}this.groupHammer.on(\"tap\",this._onGroupClick.bind(this));this.groupHammer.on(\"panstart\",this._onGroupDragStart.bind(this));this.groupHammer.on(\"panmove\",this._onGroupDrag.bind(this));this.groupHammer.on(\"panend\",this._onGroupDragEnd.bind(this));this.groupHammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_VERTICAL});this.body.dom.centerContainer.addEventListener(\"mouseover\",this._onMouseOver.bind(this));this.body.dom.centerContainer.addEventListener(\"mouseout\",this._onMouseOut.bind(this));this.body.dom.centerContainer.addEventListener(\"mousemove\",this._onMouseMove.bind(this));this.body.dom.centerContainer.addEventListener(\"contextmenu\",this._onDragEnd.bind(this));this.body.dom.centerContainer.addEventListener(\"mousewheel\",this._onMouseWheel.bind(this));this.show()};ItemSet.prototype.setOptions=function(options){if(options){var fields=[\"type\",\"rtl\",\"align\",\"order\",\"stack\",\"stackSubgroups\",\"selectable\",\"multiselect\",\"multiselectPerGroup\",\"groupOrder\",\"dataAttributes\",\"template\",\"groupTemplate\",\"visibleFrameTemplate\",\"hide\",\"snap\",\"groupOrderSwap\",\"showTooltips\",\"tooltip\",\"tooltipOnItemUpdateTime\"];util.selectiveExtend(fields,this.options,options);if(\"itemsAlwaysDraggable\"in options){if(typeof options.itemsAlwaysDraggable===\"boolean\"){this.options.itemsAlwaysDraggable.item=options.itemsAlwaysDraggable;this.options.itemsAlwaysDraggable.range=false}else if((0,_typeof3[\"default\"])(options.itemsAlwaysDraggable)===\"object\"){util.selectiveExtend([\"item\",\"range\"],this.options.itemsAlwaysDraggable,options.itemsAlwaysDraggable);if(!this.options.itemsAlwaysDraggable.item){this.options.itemsAlwaysDraggable.range=false}}}if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation.item=options.orientation===\"top\"?\"top\":\"bottom\"}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"&&\"item\"in options.orientation){this.options.orientation.item=options.orientation.item}}if(\"margin\"in options){if(typeof options.margin===\"number\"){this.options.margin.axis=options.margin;this.options.margin.item.horizontal=options.margin;this.options.margin.item.vertical=options.margin}else if((0,_typeof3[\"default\"])(options.margin)===\"object\"){util.selectiveExtend([\"axis\"],this.options.margin,options.margin);if(\"item\"in options.margin){if(typeof options.margin.item===\"number\"){this.options.margin.item.horizontal=options.margin.item;this.options.margin.item.vertical=options.margin.item}else if((0,_typeof3[\"default\"])(options.margin.item)===\"object\"){util.selectiveExtend([\"horizontal\",\"vertical\"],this.options.margin.item,options.margin.item)}}}}if(\"editable\"in options){if(typeof options.editable===\"boolean\"){this.options.editable.updateTime=options.editable;this.options.editable.updateGroup=options.editable;this.options.editable.add=options.editable;this.options.editable.remove=options.editable;this.options.editable.overrideItems=false}else if((0,_typeof3[\"default\"])(options.editable)===\"object\"){util.selectiveExtend([\"updateTime\",\"updateGroup\",\"add\",\"remove\",\"overrideItems\"],this.options.editable,options.editable)}}if(\"groupEditable\"in options){if(typeof options.groupEditable===\"boolean\"){this.options.groupEditable.order=options.groupEditable;this.options.groupEditable.add=options.groupEditable;this.options.groupEditable.remove=options.groupEditable}else if((0,_typeof3[\"default\"])(options.groupEditable)===\"object\"){util.selectiveExtend([\"order\",\"add\",\"remove\"],this.options.groupEditable,options.groupEditable)}}var addCallback=function(name){var fn=options[name];if(fn){if(!(fn instanceof Function)){throw new Error(\"option \"+name+\" must be a function \"+name+\"(item, callback)\")}this.options[name]=fn}}.bind(this);[\"onDropObjectOnItem\",\"onAdd\",\"onUpdate\",\"onRemove\",\"onMove\",\"onMoving\",\"onAddGroup\",\"onMoveGroup\",\"onRemoveGroup\"].forEach(addCallback);this.markDirty()}};ItemSet.prototype.markDirty=function(options){this.groupIds=[];if(options&&options.refreshItems){util.forEach(this.items,function(item){item.dirty=true;if(item.displayed)item.redraw()})}};ItemSet.prototype.destroy=function(){this.hide();this.setItems(null);this.setGroups(null);this.hammer=null;this.body=null;this.conversion=null};ItemSet.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}if(this.dom.axis.parentNode){this.dom.axis.parentNode.removeChild(this.dom.axis)}if(this.dom.labelSet.parentNode){this.dom.labelSet.parentNode.removeChild(this.dom.labelSet)}};ItemSet.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}if(!this.dom.axis.parentNode){this.body.dom.backgroundVertical.appendChild(this.dom.axis)}if(!this.dom.labelSet.parentNode){if(this.options.rtl){this.body.dom.right.appendChild(this.dom.labelSet)}else{this.body.dom.left.appendChild(this.dom.labelSet)}}};ItemSet.prototype.setSelection=function(ids){var i,ii,id,item;if(ids==undefined)ids=[];if(!Array.isArray(ids))ids=[ids];for(i=0,ii=this.selection.length;i<ii;i++){id=this.selection[i];item=this.items[id];if(item)item.unselect()}this.selection=[];for(i=0,ii=ids.length;i<ii;i++){id=ids[i];item=this.items[id];if(item){this.selection.push(id);item.select()}}};ItemSet.prototype.getSelection=function(){return this.selection.concat([])};ItemSet.prototype.getVisibleItems=function(){var range=this.body.range.getRange();var right,left;if(this.options.rtl){right=this.body.util.toScreen(range.start);left=this.body.util.toScreen(range.end)}else{left=this.body.util.toScreen(range.start);right=this.body.util.toScreen(range.end)}var ids=[];for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){var group=this.groups[groupId];var rawVisibleItems=group.isVisible?group.visibleItems:[];for(var i=0;i<rawVisibleItems.length;i++){var item=rawVisibleItems[i];if(this.options.rtl){if(item.right<left&&item.right+item.width>right){ids.push(item.id)}}else{if(item.left<right&&item.left+item.width>left){ids.push(item.id)}}}}}return ids};ItemSet.prototype._deselect=function(id){var selection=this.selection;for(var i=0,ii=selection.length;i<ii;i++){if(selection[i]==id){selection.splice(i,1);break}}};ItemSet.prototype.redraw=function(){var margin=this.options.margin,range=this.body.range,asSize=util.option.asSize,options=this.options,orientation=options.orientation.item,resized=false,frame=this.dom.frame;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top;if(this.options.rtl){this.props.right=this.body.domProps.right.width+this.body.domProps.border.right}else{this.props.left=this.body.domProps.left.width+this.body.domProps.border.left}frame.className=\"vis-itemset\";resized=this._orderGroups()||resized;var visibleInterval=range.end-range.start;var zoomed=visibleInterval!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;var scrolled=range.start!=this.lastRangeStart;var changedStackOption=options.stack!=this.lastStack;var changedStackSubgroupsOption=options.stackSubgroups!=this.lastStackSubgroups;var forceRestack=zoomed||scrolled||changedStackOption||changedStackSubgroupsOption;this.lastVisibleInterval=visibleInterval;this.lastRangeStart=range.start;this.lastStack=options.stack;this.lastStackSubgroups=options.stackSubgroups;this.props.lastWidth=this.props.width;var firstGroup=this._firstGroup();var firstMargin={item:margin.item,axis:margin.axis};var nonFirstMargin={item:margin.item,axis:margin.item.vertical/2};var height=0;var minHeight=margin.axis+margin.item.vertical;this.groups[BACKGROUND].redraw(range,nonFirstMargin,forceRestack);var redrawQueue={};var redrawQueueLength=0;util.forEach(this.groups,function(group,key){if(key===BACKGROUND)return;var groupMargin=group==firstGroup?firstMargin:nonFirstMargin;var returnQueue=true;redrawQueue[key]=group.redraw(range,groupMargin,forceRestack,returnQueue);redrawQueueLength=redrawQueue[key].length});var needRedraw=redrawQueueLength>0;if(needRedraw){var redrawResults={};for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns,key){redrawResults[key]=fns[i]()})}util.forEach(this.groups,function(group,key){if(key===BACKGROUND)return;var groupResized=redrawResults[key];resized=groupResized||resized;height+=group.height});height=Math.max(height,minHeight)}height=Math.max(height,minHeight);frame.style.height=asSize(height);this.props.width=frame.offsetWidth;this.props.height=height;this.dom.axis.style.top=asSize(orientation==\"top\"?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height);if(this.options.rtl){this.dom.axis.style.right=\"0\"}else{this.dom.axis.style.left=\"0\"}this.initialItemSetDrawn=true;resized=this._isResized()||resized;return resized};ItemSet.prototype._firstGroup=function(){var firstGroupIndex=this.options.orientation.item==\"top\"?0:this.groupIds.length-1;var firstGroupId=this.groupIds[firstGroupIndex];var firstGroup=this.groups[firstGroupId]||this.groups[UNGROUPED];return firstGroup||null};ItemSet.prototype._updateUngrouped=function(){var ungrouped=this.groups[UNGROUPED];var item,itemId;if(this.groupsData){if(ungrouped){ungrouped.hide();delete this.groups[UNGROUPED];for(itemId in this.items){if(this.items.hasOwnProperty(itemId)){item=this.items[itemId];item.parent&&item.parent.remove(item);var groupId=this._getGroupId(item.data);var group=this.groups[groupId];group&&group.add(item)||item.hide()}}}}else{if(!ungrouped){var id=null;var data=null;ungrouped=new Group(id,data,this);this.groups[UNGROUPED]=ungrouped;for(itemId in this.items){if(this.items.hasOwnProperty(itemId)){item=this.items[itemId];ungrouped.add(item)}}ungrouped.show()}}};ItemSet.prototype.getLabelSet=function(){return this.dom.labelSet};ItemSet.prototype.setItems=function(items){var me=this,ids,oldItemsData=this.itemsData;if(!items){this.itemsData=null}else if(items instanceof DataSet||items instanceof DataView){this.itemsData=items}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(oldItemsData){util.forEach(this.itemListeners,function(callback,event){oldItemsData.off(event,callback)});ids=oldItemsData.getIds();this._onRemove(ids)}if(this.itemsData){var id=this.id;util.forEach(this.itemListeners,function(callback,event){me.itemsData.on(event,callback,id)});ids=this.itemsData.getIds();this._onAdd(ids);this._updateUngrouped()}this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype.getItems=function(){return this.itemsData};ItemSet.prototype.setGroups=function(groups){var me=this,ids;if(this.groupsData){util.forEach(this.groupListeners,function(callback,event){me.groupsData.off(event,callback)});ids=this.groupsData.getIds();this.groupsData=null;this._onRemoveGroups(ids)}if(!groups){this.groupsData=null}else if(groups instanceof DataSet||groups instanceof DataView){this.groupsData=groups}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(this.groupsData){var groupsData=this.groupsData;if(this.groupsData instanceof DataView){groupsData=this.groupsData.getDataSet()}groupsData.get().forEach(function(group){if(group.nestedGroups){group.nestedGroups.forEach(function(nestedGroupId){var updatedNestedGroup=groupsData.get(nestedGroupId);updatedNestedGroup.nestedInGroup=group.id;if(group.showNested==false){updatedNestedGroup.visible=false}groupsData.update(updatedNestedGroup)})}});var id=this.id;util.forEach(this.groupListeners,function(callback,event){me.groupsData.on(event,callback,id)});ids=this.groupsData.getIds();this._onAddGroups(ids)}this._updateUngrouped();this._order();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype.getGroups=function(){return this.groupsData};ItemSet.prototype.removeItem=function(id){var item=this.itemsData.get(id),dataset=this.itemsData.getDataSet();if(item){this.options.onRemove(item,function(item){if(item){dataset.remove(id)}})}};ItemSet.prototype._getType=function(itemData){return itemData.type||this.options.type||(itemData.end?\"range\":\"box\")};ItemSet.prototype._getGroupId=function(itemData){var type=this._getType(itemData);if(type==\"background\"&&itemData.group==undefined){return BACKGROUND}else{return this.groupsData?itemData.group:UNGROUPED}};ItemSet.prototype._onUpdate=function(ids){var me=this;ids.forEach(function(id){var itemData=me.itemsData.get(id,me.itemOptions);var item=me.items[id];var type=itemData?me._getType(itemData):null;var constructor=ItemSet.types[type];var selected;if(item){if(!constructor||!(item instanceof constructor)){selected=item.selected;me._removeItem(item);item=null}else{me._updateItem(item,itemData)}}if(!item&&itemData){if(constructor){item=new constructor(itemData,me.conversion,me.options);item.id=id;me._addItem(item);if(selected){this.selection.push(id);item.select()}}else if(type==\"rangeoverflow\"){throw new TypeError('Item type \"rangeoverflow\" is deprecated. Use css styling instead: '+\".vis-item.vis-range .vis-item-content {overflow: visible;}\")}else{throw new TypeError('Unknown item type \"'+type+'\"')}}}.bind(this));this._order();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._onAdd=ItemSet.prototype._onUpdate;ItemSet.prototype._onRemove=function(ids){var count=0;var me=this;ids.forEach(function(id){var item=me.items[id];if(item){count++;me._removeItem(item)}});if(count){this._order();this.body.emitter.emit(\"_change\",{queue:true})}};ItemSet.prototype._order=function(){util.forEach(this.groups,function(group){group.order()})};ItemSet.prototype._onUpdateGroups=function(ids){this._onAddGroups(ids)};ItemSet.prototype._onAddGroups=function(ids){var me=this;ids.forEach(function(id){var groupData=me.groupsData.get(id);var group=me.groups[id];if(!group){if(id==UNGROUPED||id==BACKGROUND){throw new Error(\"Illegal group id. \"+id+\" is a reserved id.\")}var groupOptions=(0,_create2[\"default\"])(me.options);util.extend(groupOptions,{height:null});group=new Group(id,groupData,me);me.groups[id]=group;for(var itemId in me.items){if(me.items.hasOwnProperty(itemId)){var item=me.items[itemId];if(item.data.group==id){group.add(item)}}}group.order();group.show()}else{group.setData(groupData)}});this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._onRemoveGroups=function(ids){var groups=this.groups;ids.forEach(function(id){var group=groups[id];if(group){group.hide();delete groups[id]}});this.markDirty();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._orderGroups=function(){if(this.groupsData){var groupIds=this.groupsData.getIds({order:this.options.groupOrder});groupIds=this._orderNestedGroups(groupIds);var changed=!util.equalArray(groupIds,this.groupIds);if(changed){var groups=this.groups;groupIds.forEach(function(groupId){groups[groupId].hide()});groupIds.forEach(function(groupId){groups[groupId].show()});this.groupIds=groupIds}return changed}else{return false}};ItemSet.prototype._orderNestedGroups=function(groupIds){var newGroupIdsOrder=[];groupIds.forEach(function(groupId){var groupData=this.groupsData.get(groupId);if(!groupData.nestedInGroup){newGroupIdsOrder.push(groupId)}if(groupData.nestedGroups){var nestedGroups=this.groupsData.get({filter:function filter(nestedGroup){return nestedGroup.nestedInGroup==groupId},order:this.options.groupOrder});var nestedGroupIds=nestedGroups.map(function(nestedGroup){return nestedGroup.id});newGroupIdsOrder=newGroupIdsOrder.concat(nestedGroupIds)}},this);return newGroupIdsOrder};ItemSet.prototype._addItem=function(item){this.items[item.id]=item;var groupId=this._getGroupId(item.data);var group=this.groups[groupId];if(!group){item.groupShowing=false}else if(group&&group.data&&group.data.showNested){item.groupShowing=true}if(group)group.add(item)};ItemSet.prototype._updateItem=function(item,itemData){item.setData(itemData);var groupId=this._getGroupId(item.data);var group=this.groups[groupId];if(!group){item.groupShowing=false}else if(group&&group.data&&group.data.showNested){item.groupShowing=true}};ItemSet.prototype._removeItem=function(item){item.hide();delete this.items[item.id];var index=this.selection.indexOf(item.id);if(index!=-1)this.selection.splice(index,1);item.parent&&item.parent.remove(item)};ItemSet.prototype._constructByEndArray=function(array){var endArray=[];for(var i=0;i<array.length;i++){if(array[i]instanceof RangeItem){endArray.push(array[i])}}return endArray};ItemSet.prototype._onTouch=function(event){this.touchParams.item=this.itemFromTarget(event);this.touchParams.dragLeftItem=event.target.dragLeftItem||false;this.touchParams.dragRightItem=event.target.dragRightItem||false;this.touchParams.itemProps=null};ItemSet.prototype._getGroupIndex=function(groupId){for(var i=0;i<this.groupIds.length;i++){if(groupId==this.groupIds[i])return i}};ItemSet.prototype._onDragStart=function(event){if(this.touchParams.itemIsDragging){return}var item=this.touchParams.item||null;var me=this;var props;if(item&&(item.selected||this.options.itemsAlwaysDraggable.item)){if(this.options.editable.overrideItems&&!this.options.editable.updateTime&&!this.options.editable.updateGroup){return}if(item.editable!=null&&!item.editable.updateTime&&!item.editable.updateGroup&&!this.options.editable.overrideItems){return}var dragLeftItem=this.touchParams.dragLeftItem;var dragRightItem=this.touchParams.dragRightItem;this.touchParams.itemIsDragging=true;this.touchParams.selectedItem=item;if(dragLeftItem){props={item:dragLeftItem,initialX:event.center.x,dragLeft:true,data:this._cloneItemData(item.data)};this.touchParams.itemProps=[props]}else if(dragRightItem){props={item:dragRightItem,initialX:event.center.x,dragRight:true,data:this._cloneItemData(item.data)};this.touchParams.itemProps=[props]}else if(this.options.editable.add&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey)){this._onDragStartAddItem(event)}else{if(this.groupIds.length<1){this.redraw()}var baseGroupIndex=this._getGroupIndex(item.data.group);var itemsToDrag=this.options.itemsAlwaysDraggable.item&&!item.selected?[item.id]:this.getSelection();this.touchParams.itemProps=itemsToDrag.map(function(id){var item=me.items[id];var groupIndex=me._getGroupIndex(item.data.group);return{item:item,initialX:event.center.x,groupOffset:baseGroupIndex-groupIndex,data:this._cloneItemData(item.data)}}.bind(this))}event.stopPropagation()}else if(this.options.editable.add&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey)){this._onDragStartAddItem(event)}};ItemSet.prototype._onDragStartAddItem=function(event){var xAbs;var x;var snap=this.options.snap||null;if(this.options.rtl){xAbs=util.getAbsoluteRight(this.dom.frame);x=xAbs-event.center.x+10}else{xAbs=util.getAbsoluteLeft(this.dom.frame);x=event.center.x-xAbs-10}var time=this.body.util.toTime(x);var scale=this.body.util.getScale();var step=this.body.util.getStep();var start=snap?snap(time,scale,step):time;var end=start;var itemData={type:\"range\",start:start,end:end,content:\"new item\"};var id=util.randomUUID();itemData[this.itemsData._fieldId]=id;var group=this.groupFromTarget(event);if(group){itemData.group=group.groupId}var newItem=new RangeItem(itemData,this.conversion,this.options);newItem.id=id;newItem.data=this._cloneItemData(itemData);this._addItem(newItem);this.touchParams.selectedItem=newItem;var props={item:newItem,initialX:event.center.x,data:newItem.data};if(this.options.rtl){props.dragLeft=true}else{props.dragRight=true}this.touchParams.itemProps=[props];event.stopPropagation()};ItemSet.prototype._onDrag=function(event){if(this.touchParams.itemProps){event.stopPropagation();var me=this;var snap=this.options.snap||null;var xOffset;if(this.options.rtl){xOffset=this.body.dom.root.offsetLeft+this.body.domProps.right.width}else{xOffset=this.body.dom.root.offsetLeft+this.body.domProps.left.width}var scale=this.body.util.getScale();var step=this.body.util.getStep();var selectedItem=this.touchParams.selectedItem;var updateGroupAllowed=(this.options.editable.overrideItems||selectedItem.editable==null)&&this.options.editable.updateGroup||!this.options.editable.overrideItems&&selectedItem.editable!=null&&selectedItem.editable.updateGroup;var newGroupBase=null;if(updateGroupAllowed&&selectedItem){if(selectedItem.data.group!=undefined){var group=me.groupFromTarget(event);if(group){newGroupBase=this._getGroupIndex(group.groupId)}}}this.touchParams.itemProps.forEach(function(props){var current=me.body.util.toTime(event.center.x-xOffset);var initial=me.body.util.toTime(props.initialX-xOffset);var offset;var initialStart;var initialEnd;var start;var end;if(this.options.rtl){offset=-(current-initial)}else{offset=current-initial}var itemData=this._cloneItemData(props.item.data);if(props.item.editable!=null&&!props.item.editable.updateTime&&!props.item.editable.updateGroup&&!me.options.editable.overrideItems){return}var updateTimeAllowed=(this.options.editable.overrideItems||selectedItem.editable==null)&&this.options.editable.updateTime||!this.options.editable.overrideItems&&selectedItem.editable!=null&&selectedItem.editable.updateTime;if(updateTimeAllowed){if(props.dragLeft){if(this.options.rtl){if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");end=new Date(initialEnd.valueOf()+offset);itemData.end=snap?snap(end,scale,step):end}}else{if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\");start=new Date(initialStart.valueOf()+offset);itemData.start=snap?snap(start,scale,step):start}}}else if(props.dragRight){if(this.options.rtl){if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\");start=new Date(initialStart.valueOf()+offset);itemData.start=snap?snap(start,scale,step):start}}else{if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");end=new Date(initialEnd.valueOf()+offset);itemData.end=snap?snap(end,scale,step):end}}}else{if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\").valueOf();start=new Date(initialStart+offset);if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");var duration=initialEnd.valueOf()-initialStart.valueOf();itemData.start=snap?snap(start,scale,step):start;itemData.end=new Date(itemData.start.valueOf()+duration)}else{itemData.start=snap?snap(start,scale,step):start}}}}if(updateGroupAllowed&&!props.dragLeft&&!props.dragRight&&newGroupBase!=null){if(itemData.group!=undefined){var newOffset=newGroupBase-props.groupOffset;newOffset=Math.max(0,newOffset);newOffset=Math.min(me.groupIds.length-1,newOffset);itemData.group=me.groupIds[newOffset]}}itemData=this._cloneItemData(itemData);me.options.onMoving(itemData,function(itemData){if(itemData){props.item.setData(this._cloneItemData(itemData,\"Date\"))}}.bind(this))}.bind(this));this.body.emitter.emit(\"_change\")}};ItemSet.prototype._moveToGroup=function(item,groupId){var group=this.groups[groupId];if(group&&group.groupId!=item.data.group){var oldGroup=item.parent;oldGroup.remove(item);oldGroup.order();item.data.group=group.groupId;group.add(item);group.order()}};ItemSet.prototype._onDragEnd=function(event){this.touchParams.itemIsDragging=false;if(this.touchParams.itemProps){event.stopPropagation();var me=this;var dataset=this.itemsData.getDataSet();var itemProps=this.touchParams.itemProps;this.touchParams.itemProps=null;itemProps.forEach(function(props){var id=props.item.id;var exists=me.itemsData.get(id,me.itemOptions)!=null;if(!exists){me.options.onAdd(props.item.data,function(itemData){me._removeItem(props.item);if(itemData){me.itemsData.getDataSet().add(itemData)}me.body.emitter.emit(\"_change\")})}else{var itemData=this._cloneItemData(props.item.data);me.options.onMove(itemData,function(itemData){if(itemData){itemData[dataset._fieldId]=id;dataset.update(itemData)}else{props.item.setData(props.data);me.body.emitter.emit(\"_change\")}})}}.bind(this))}};ItemSet.prototype._onGroupClick=function(event){var group=this.groupFromTarget(event);if(!group||!group.nestedGroups)return;var groupsData=this.groupsData.getDataSet();var nestingGroup=groupsData.get(group.groupId);if(nestingGroup.showNested==undefined){nestingGroup.showNested=true}nestingGroup.showNested=!nestingGroup.showNested;var nestedGroups=groupsData.get(group.nestedGroups).map(function(nestedGroup){nestedGroup.visible=nestingGroup.showNested;return nestedGroup});groupsData.update(nestedGroups.concat(nestingGroup));if(nestingGroup.showNested){util.removeClassName(group.dom.label,\"collapsed\");util.addClassName(group.dom.label,\"expanded\")}else{util.removeClassName(group.dom.label,\"expanded\");var collapsedDirClassName=this.options.rtl?\"collapsed-rtl\":\"collapsed\";util.addClassName(group.dom.label,collapsedDirClassName)}};ItemSet.prototype._onGroupDragStart=function(event){if(this.options.groupEditable.order){this.groupTouchParams.group=this.groupFromTarget(event);if(this.groupTouchParams.group){event.stopPropagation();this.groupTouchParams.originalOrder=this.groupsData.getIds({order:this.options.groupOrder})}}};ItemSet.prototype._onGroupDrag=function(event){if(this.options.groupEditable.order&&this.groupTouchParams.group){event.stopPropagation();var groupsData=this.groupsData;if(this.groupsData instanceof DataView){groupsData=this.groupsData.getDataSet()}var group=this.groupFromTarget(event);if(group&&group.height!=this.groupTouchParams.group.height){var movingUp=group.top<this.groupTouchParams.group.top;var clientY=event.center?event.center.y:event.clientY;var targetGroupTop=util.getAbsoluteTop(group.dom.foreground);var draggedGroupHeight=this.groupTouchParams.group.height;if(movingUp){if(targetGroupTop+draggedGroupHeight<clientY){return}}else{var targetGroupHeight=group.height;if(targetGroupTop+targetGroupHeight-draggedGroupHeight>clientY){return}}}if(group&&group!=this.groupTouchParams.group){var targetGroup=groupsData.get(group.groupId);var draggedGroup=groupsData.get(this.groupTouchParams.group.groupId);if(draggedGroup&&targetGroup){this.options.groupOrderSwap(draggedGroup,targetGroup,groupsData);groupsData.update(draggedGroup);groupsData.update(targetGroup)}var newOrder=groupsData.getIds({order:this.options.groupOrder});if(!util.equalArray(newOrder,this.groupTouchParams.originalOrder)){var origOrder=this.groupTouchParams.originalOrder;var draggedId=this.groupTouchParams.group.groupId;var numGroups=Math.min(origOrder.length,newOrder.length);var curPos=0;var newOffset=0;var orgOffset=0;while(curPos<numGroups){while(curPos+newOffset<numGroups&&curPos+orgOffset<numGroups&&newOrder[curPos+newOffset]==origOrder[curPos+orgOffset]){curPos++}if(curPos+newOffset>=numGroups){break}if(newOrder[curPos+newOffset]==draggedId){newOffset=1}else if(origOrder[curPos+orgOffset]==draggedId){orgOffset=1}else{var slippedPosition=newOrder.indexOf(origOrder[curPos+orgOffset]);var switchGroup=groupsData.get(newOrder[curPos+newOffset]);var shouldBeGroup=groupsData.get(origOrder[curPos+orgOffset]);this.options.groupOrderSwap(switchGroup,shouldBeGroup,groupsData);groupsData.update(switchGroup);groupsData.update(shouldBeGroup);var switchGroupId=newOrder[curPos+newOffset];newOrder[curPos+newOffset]=origOrder[curPos+orgOffset];newOrder[slippedPosition]=switchGroupId;curPos++}}}}}};ItemSet.prototype._onGroupDragEnd=function(event){if(this.options.groupEditable.order&&this.groupTouchParams.group){event.stopPropagation();var me=this;var id=me.groupTouchParams.group.groupId;var dataset=me.groupsData.getDataSet();var groupData=util.extend({},dataset.get(id));me.options.onMoveGroup(groupData,function(groupData){if(groupData){groupData[dataset._fieldId]=id;dataset.update(groupData)}else{var newOrder=dataset.getIds({order:me.options.groupOrder});if(!util.equalArray(newOrder,me.groupTouchParams.originalOrder)){var origOrder=me.groupTouchParams.originalOrder;var numGroups=Math.min(origOrder.length,newOrder.length);var curPos=0;while(curPos<numGroups){while(curPos<numGroups&&newOrder[curPos]==origOrder[curPos]){curPos++}if(curPos>=numGroups){break}var slippedPosition=newOrder.indexOf(origOrder[curPos]);var switchGroup=dataset.get(newOrder[curPos]);var shouldBeGroup=dataset.get(origOrder[curPos]);me.options.groupOrderSwap(switchGroup,shouldBeGroup,dataset);dataset.update(switchGroup);dataset.update(shouldBeGroup);var switchGroupId=newOrder[curPos];newOrder[curPos]=origOrder[curPos];newOrder[slippedPosition]=switchGroupId;curPos++}}}});me.body.emitter.emit(\"groupDragged\",{groupId:id})}};ItemSet.prototype._onSelectItem=function(event){if(!this.options.selectable)return;var ctrlKey=event.srcEvent&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey);var shiftKey=event.srcEvent&&event.srcEvent.shiftKey;if(ctrlKey||shiftKey){this._onMultiSelectItem(event);return}var oldSelection=this.getSelection();var item=this.itemFromTarget(event);var selection=item?[item.id]:[];this.setSelection(selection);var newSelection=this.getSelection();if(newSelection.length>0||oldSelection.length>0){this.body.emitter.emit(\"select\",{items:newSelection,event:event})}};ItemSet.prototype._onMouseOver=function(event){var item=this.itemFromTarget(event);if(!item)return;var related=this.itemFromRelatedTarget(event);if(item===related){return}var title=item.getTitle();if(this.options.showTooltips&&title){if(this.popup==null){this.popup=new Popup(this.body.dom.root,this.options.tooltip.overflowMethod||\"flip\")}this.popup.setText(title);var container=this.body.dom.centerContainer;this.popup.setPosition(event.clientX-util.getAbsoluteLeft(container)+container.offsetLeft,event.clientY-util.getAbsoluteTop(container)+container.offsetTop);this.popup.show()}else{if(this.popup!=null){this.popup.hide()}}this.body.emitter.emit(\"itemover\",{item:item.id,event:event})};ItemSet.prototype._onMouseOut=function(event){var item=this.itemFromTarget(event);if(!item)return;var related=this.itemFromRelatedTarget(event);if(item===related){return}if(this.popup!=null){this.popup.hide()}this.body.emitter.emit(\"itemout\",{item:item.id,event:event})};ItemSet.prototype._onMouseMove=function(event){var item=this.itemFromTarget(event);if(!item)return;if(this.options.showTooltips&&this.options.tooltip.followMouse){if(this.popup){if(!this.popup.hidden){var container=this.body.dom.centerContainer;this.popup.setPosition(event.clientX-util.getAbsoluteLeft(container)+container.offsetLeft,event.clientY-util.getAbsoluteTop(container)+container.offsetTop);this.popup.show()}}}};ItemSet.prototype._onMouseWheel=function(event){if(this.touchParams.itemIsDragging){this._onDragEnd(event)}};ItemSet.prototype._onUpdateItem=function(item){if(!this.options.selectable)return;if(!this.options.editable.add)return;var me=this;if(item){var itemData=me.itemsData.get(item.id);this.options.onUpdate(itemData,function(itemData){if(itemData){me.itemsData.getDataSet().update(itemData)}})}};ItemSet.prototype._onDropObjectOnItem=function(event){var item=this.itemFromTarget(event);var objectData=JSON.parse(event.dataTransfer.getData(\"text\"));this.options.onDropObjectOnItem(objectData,item)};ItemSet.prototype._onAddItem=function(event){if(!this.options.selectable)return;if(!this.options.editable.add)return;var me=this;var snap=this.options.snap||null;var xAbs;var x;if(this.options.rtl){xAbs=util.getAbsoluteRight(this.dom.frame);x=xAbs-event.center.x}else{xAbs=util.getAbsoluteLeft(this.dom.frame);x=event.center.x-xAbs}var start=this.body.util.toTime(x);var scale=this.body.util.getScale();var step=this.body.util.getStep();var end;var newItemData;if(event.type==\"drop\"){newItemData=JSON.parse(event.dataTransfer.getData(\"text\"));newItemData.content=newItemData.content?newItemData.content:\"new item\";newItemData.start=newItemData.start?newItemData.start:snap?snap(start,scale,step):start;newItemData.type=newItemData.type||\"box\";newItemData[this.itemsData._fieldId]=newItemData.id||util.randomUUID();if(newItemData.type==\"range\"&&!newItemData.end){end=this.body.util.toTime(x+this.props.width/5);newItemData.end=snap?snap(end,scale,step):end}}else{newItemData={start:snap?snap(start,scale,step):start,content:\"new item\"};newItemData[this.itemsData._fieldId]=util.randomUUID();if(this.options.type===\"range\"){\nend=this.body.util.toTime(x+this.props.width/5);newItemData.end=snap?snap(end,scale,step):end}}var group=this.groupFromTarget(event);if(group){newItemData.group=group.groupId}newItemData=this._cloneItemData(newItemData);this.options.onAdd(newItemData,function(item){if(item){me.itemsData.getDataSet().add(item);if(event.type==\"drop\"){me.setSelection([item.id])}}})};ItemSet.prototype._onMultiSelectItem=function(event){if(!this.options.selectable)return;var item=this.itemFromTarget(event);if(item){var selection=this.options.multiselect?this.getSelection():[];var shiftKey=event.srcEvent&&event.srcEvent.shiftKey||false;if(shiftKey&&this.options.multiselect){var itemGroup=this.itemsData.get(item.id).group;var lastSelectedGroup=undefined;if(this.options.multiselectPerGroup){if(selection.length>0){lastSelectedGroup=this.itemsData.get(selection[0]).group}}if(!this.options.multiselectPerGroup||lastSelectedGroup==undefined||lastSelectedGroup==itemGroup){selection.push(item.id)}var range=ItemSet._getItemRange(this.itemsData.get(selection,this.itemOptions));if(!this.options.multiselectPerGroup||lastSelectedGroup==itemGroup){selection=[];for(var id in this.items){if(this.items.hasOwnProperty(id)){var _item=this.items[id];var start=_item.data.start;var end=_item.data.end!==undefined?_item.data.end:start;if(start>=range.min&&end<=range.max&&(!this.options.multiselectPerGroup||lastSelectedGroup==this.itemsData.get(_item.id).group)&&!(_item instanceof BackgroundItem)){selection.push(_item.id)}}}}}else{var index=selection.indexOf(item.id);if(index==-1){selection.push(item.id)}else{selection.splice(index,1)}}this.setSelection(selection);this.body.emitter.emit(\"select\",{items:this.getSelection(),event:event})}};ItemSet._getItemRange=function(itemsData){var max=null;var min=null;itemsData.forEach(function(data){if(min==null||data.start<min){min=data.start}if(data.end!=undefined){if(max==null||data.end>max){max=data.end}}else{if(max==null||data.start>max){max=data.start}}});return{min:min,max:max}};ItemSet.prototype.itemFromElement=function(element){var cur=element;while(cur){if(cur.hasOwnProperty(\"timeline-item\")){return cur[\"timeline-item\"]}cur=cur.parentNode}return null};ItemSet.prototype.itemFromTarget=function(event){return this.itemFromElement(event.target)};ItemSet.prototype.itemFromRelatedTarget=function(event){return this.itemFromElement(event.relatedTarget)};ItemSet.prototype.groupFromTarget=function(event){var clientY=event.center?event.center.y:event.clientY;var groupIds=this.groupIds;if(groupIds.length<=0&&this.groupsData){groupIds=this.groupsData.getIds({order:this.options.groupOrder})}for(var i=0;i<groupIds.length;i++){var groupId=groupIds[i];var group=this.groups[groupId];var foreground=group.dom.foreground;var top=util.getAbsoluteTop(foreground);if(clientY>top&&clientY<top+foreground.offsetHeight){return group}if(this.options.orientation.item===\"top\"){if(i===this.groupIds.length-1&&clientY>top){return group}}else{if(i===0&&clientY<top+foreground.offset){return group}}}return null};ItemSet.itemSetFromTarget=function(event){var target=event.target;while(target){if(target.hasOwnProperty(\"timeline-itemset\")){return target[\"timeline-itemset\"]}target=target.parentNode}return null};ItemSet.prototype._cloneItemData=function(itemData,type){var clone=util.extend({},itemData);if(!type){type=this.itemsData.getDataSet()._options.type}if(clone.start!=undefined){clone.start=util.convert(clone.start,type&&type.start||\"Date\")}if(clone.end!=undefined){clone.end=util.convert(clone.end,type&&type.end||\"Date\")}return clone};module.exports=ItemSet},function(module,exports,__webpack_require__){\"use strict\";var EPSILON=.001;exports.orderByStart=function(items){items.sort(function(a,b){return a.data.start-b.data.start})};exports.orderByEnd=function(items){items.sort(function(a,b){var aTime=\"end\"in a.data?a.data.end:a.data.start,bTime=\"end\"in b.data?b.data.end:b.data.start;return aTime-bTime})};exports.stack=function(items,margin,force){if(force){for(var i=0;i<items.length;i++){items[i].top=null}}for(var i=0;i<items.length;i++){var item=items[i];if(item.stack&&item.top===null){item.top=margin.axis;do{var collidingItem=null;for(var j=0,jj=items.length;j<jj;j++){var other=items[j];if(other.top!==null&&other!==item&&other.stack&&exports.collision(item,other,margin.item,other.options.rtl)){collidingItem=other;break}}if(collidingItem!=null){item.top=collidingItem.top+collidingItem.height+margin.item.vertical}}while(collidingItem)}}};exports.substack=function(items,margin,subgroup){for(var i=0;i<items.length;i++){items[i].top=null}var subgroupHeight=subgroup.height;for(i=0;i<items.length;i++){var item=items[i];if(item.stack&&item.top===null){item.top=item.baseTop;do{var collidingItem=null;for(var j=0,jj=items.length;j<jj;j++){var other=items[j];if(other.top!==null&&other!==item&&exports.collision(item,other,margin.item,other.options.rtl)){collidingItem=other;break}}if(collidingItem!=null){item.top=collidingItem.top+collidingItem.height+margin.item.vertical}if(item.top+item.height>subgroupHeight){subgroupHeight=item.top+item.height}}while(collidingItem)}}subgroup.height=subgroupHeight-subgroup.top+.5*margin.item.vertical};exports.nostack=function(items,margin,subgroups,stackSubgroups){for(var i=0;i<items.length;i++){if(items[i].data.subgroup==undefined){items[i].top=margin.item.vertical}else if(items[i].data.subgroup!==undefined&&stackSubgroups){var newTop=0;for(var subgroup in subgroups){if(subgroups.hasOwnProperty(subgroup)){if(subgroups[subgroup].visible==true&&subgroups[subgroup].index<subgroups[items[i].data.subgroup].index){newTop+=subgroups[subgroup].height;subgroups[items[i].data.subgroup].top=newTop}}}items[i].top=newTop+.5*margin.item.vertical}}if(!stackSubgroups){exports.stackSubgroups(items,margin,subgroups)}};exports.stackSubgroups=function(items,margin,subgroups){for(var subgroup in subgroups){if(subgroups.hasOwnProperty(subgroup)){subgroups[subgroup].top=0;do{var collidingItem=null;for(var otherSubgroup in subgroups){if(subgroups[otherSubgroup].top!==null&&otherSubgroup!==subgroup&&subgroups[subgroup].index>subgroups[otherSubgroup].index&&exports.collisionByTimes(subgroups[subgroup],subgroups[otherSubgroup])){collidingItem=subgroups[otherSubgroup];break}}if(collidingItem!=null){subgroups[subgroup].top=collidingItem.top+collidingItem.height}}while(collidingItem)}}for(var i=0;i<items.length;i++){if(items[i].data.subgroup!==undefined){items[i].top=subgroups[items[i].data.subgroup].top+.5*margin.item.vertical}}};exports.stackSubgroupsWithInnerStack=function(subgroupItems,margin,subgroups){var doSubStack=false;var subgroupOrder=[];for(var subgroup in subgroups){if(subgroups[subgroup].hasOwnProperty(\"index\")){subgroupOrder[subgroups[subgroup].index]=subgroup}else{subgroupOrder.push(subgroup)}}for(var j=0;j<subgroupOrder.length;j++){subgroup=subgroupOrder[j];if(subgroups.hasOwnProperty(subgroup)){doSubStack=doSubStack||subgroups[subgroup].stack;subgroups[subgroup].top=0;for(var otherSubgroup in subgroups){if(subgroups[otherSubgroup].visible&&subgroups[subgroup].index>subgroups[otherSubgroup].index){subgroups[subgroup].top+=subgroups[otherSubgroup].height}}var items=subgroupItems[subgroup];for(var i=0;i<items.length;i++){if(items[i].data.subgroup!==undefined){items[i].top=subgroups[items[i].data.subgroup].top+.5*margin.item.vertical;if(subgroups[subgroup].stack){items[i].baseTop=items[i].top}}}if(doSubStack&&subgroups[subgroup].stack){exports.substack(subgroupItems[subgroup],margin,subgroups[subgroup])}}}};exports.collision=function(a,b,margin,rtl){if(rtl){return a.right-margin.horizontal+EPSILON<b.right+b.width&&a.right+a.width+margin.horizontal-EPSILON>b.right&&a.top-margin.vertical+EPSILON<b.top+b.height&&a.top+a.height+margin.vertical-EPSILON>b.top}else{return a.left-margin.horizontal+EPSILON<b.left+b.width&&a.left+a.width+margin.horizontal-EPSILON>b.left&&a.top-margin.vertical+EPSILON<b.top+b.height&&a.top+a.height+margin.vertical-EPSILON>b.top}};exports.collisionByTimes=function(a,b){return a.start<=b.start&&a.end>=b.start&&a.top<b.top+b.height&&a.top+a.height>b.top||b.start<=a.start&&b.end>=a.start&&b.top<a.top+a.height&&b.top+b.height>a.top}},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function BoxItem(data,conversion,options){this.props={dot:{width:0,height:0},line:{width:0,height:0}};this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data)}}Item.call(this,data,conversion,options)}BoxItem.prototype=new Item(null,null,null);BoxItem.prototype.isVisible=function(range){var isVisible;var align=this.options.align;var widthInMs=this.width*range.getMillisecondsPerPixel();if(align==\"right\"){isVisible=this.data.start.getTime()>range.start&&this.data.start.getTime()-widthInMs<range.end}else if(align==\"left\"){isVisible=this.data.start.getTime()+widthInMs>range.start&&this.data.start.getTime()<range.end}else{isVisible=this.data.start.getTime()+widthInMs/2>range.start&&this.data.start.getTime()-widthInMs/2<range.end}return isVisible};BoxItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"DIV\");this.dom.content=document.createElement(\"DIV\");this.dom.content.className=\"vis-item-content\";this.dom.box.appendChild(this.dom.content);this.dom.line=document.createElement(\"DIV\");this.dom.line.className=\"vis-line\";this.dom.dot=document.createElement(\"DIV\");this.dom.dot.className=\"vis-dot\";this.dom.box[\"timeline-item\"]=this;this.dirty=true}};BoxItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var foreground=this.parent.dom.foreground;if(!foreground)throw new Error(\"Cannot redraw item: parent has no foreground container element\");foreground.appendChild(this.dom.box)}if(!this.dom.line.parentNode){var background=this.parent.dom.background;if(!background)throw new Error(\"Cannot redraw item: parent has no background container element\");background.appendChild(this.dom.line)}if(!this.dom.dot.parentNode){var axis=this.parent.dom.axis;if(!background)throw new Error(\"Cannot redraw item: parent has no axis container element\");axis.appendChild(this.dom.dot)}this.displayed=true};BoxItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.box);this._updateStyle(this.dom.box);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.box.className=\"vis-item vis-box\"+className;this.dom.line.className=\"vis-item vis-line\"+className;this.dom.dot.className=\"vis-item vis-dot\"+className}};BoxItem.prototype._getDomComponentsSizes=function(){return{previous:{right:this.dom.box.style.right,left:this.dom.box.style.left},dot:{height:this.dom.dot.offsetHeight,width:this.dom.dot.offsetWidth},line:{width:this.dom.line.offsetWidth},box:{width:this.dom.box.offsetWidth,height:this.dom.box.offsetHeight}}};BoxItem.prototype._updateDomComponentsSizes=function(sizes){if(this.options.rtl){this.dom.box.style.right=\"0px\"}else{this.dom.box.style.left=\"0px\"}this.props.dot.height=sizes.dot.height;this.props.dot.width=sizes.dot.width;this.props.line.width=sizes.line.width;this.width=sizes.box.width;this.height=sizes.box.height;if(this.options.rtl){this.dom.box.style.right=sizes.previous.right}else{this.dom.box.style.left=sizes.previous.left}this.dirty=false};BoxItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.box);this._repaintDragCenter();this._repaintDeleteButton(this.dom.box)};BoxItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};BoxItem.prototype.show=function(){if(!this.displayed){this.redraw()}};BoxItem.prototype.hide=function(){if(this.displayed){var dom=this.dom;if(dom.box.parentNode)dom.box.parentNode.removeChild(dom.box);if(dom.line.parentNode)dom.line.parentNode.removeChild(dom.line);if(dom.dot.parentNode)dom.dot.parentNode.removeChild(dom.dot);this.displayed=false}};BoxItem.prototype.repositionX=function(){var start=this.conversion.toScreen(this.data.start);var align=this.options.align;if(align==\"right\"){if(this.options.rtl){this.right=start-this.width;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start-this.props.line.width+\"px\";this.dom.dot.style.right=start-this.props.line.width/2-this.props.dot.width/2+\"px\"}else{this.left=start-this.width;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start-this.props.line.width+\"px\";this.dom.dot.style.left=start-this.props.line.width/2-this.props.dot.width/2+\"px\"}}else if(align==\"left\"){if(this.options.rtl){this.right=start;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start+\"px\";this.dom.dot.style.right=start+this.props.line.width/2-this.props.dot.width/2+\"px\"}else{this.left=start;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start+\"px\";this.dom.dot.style.left=start+this.props.line.width/2-this.props.dot.width/2+\"px\"}}else{if(this.options.rtl){this.right=start-this.width/2;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start-this.props.line.width+\"px\";this.dom.dot.style.right=start-this.props.dot.width/2+\"px\"}else{this.left=start-this.width/2;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start-this.props.line.width/2+\"px\";this.dom.dot.style.left=start-this.props.dot.width/2+\"px\"}}};BoxItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var box=this.dom.box;var line=this.dom.line;var dot=this.dom.dot;if(orientation==\"top\"){box.style.top=(this.top||0)+\"px\";line.style.top=\"0\";line.style.height=this.parent.top+this.top+1+\"px\";line.style.bottom=\"\"}else{var itemSetHeight=this.parent.itemSet.props.height;var lineHeight=itemSetHeight-this.parent.top-this.parent.height+this.top;box.style.top=(this.parent.height-this.top-this.height||0)+\"px\";line.style.top=itemSetHeight-lineHeight+\"px\";line.style.bottom=\"0\"}dot.style.top=-this.props.dot.height/2+\"px\"};BoxItem.prototype.getWidthLeft=function(){return this.width/2};BoxItem.prototype.getWidthRight=function(){return this.width/2};module.exports=BoxItem},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function PointItem(data,conversion,options){this.props={dot:{top:0,width:0,height:0},content:{height:0,marginLeft:0,marginRight:0}};this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data)}}Item.call(this,data,conversion,options)}PointItem.prototype=new Item(null,null,null);PointItem.prototype.isVisible=function(range){var widthInMs=this.width*range.getMillisecondsPerPixel();return this.data.start.getTime()+widthInMs>range.start&&this.data.start<range.end};PointItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.point=document.createElement(\"div\");this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.point.appendChild(this.dom.content);this.dom.dot=document.createElement(\"div\");this.dom.point.appendChild(this.dom.dot);this.dom.point[\"timeline-item\"]=this;this.dirty=true}};PointItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.point.parentNode){var foreground=this.parent.dom.foreground;if(!foreground){throw new Error(\"Cannot redraw item: parent has no foreground container element\")}foreground.appendChild(this.dom.point)}this.displayed=true};PointItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.point);this._updateStyle(this.dom.point);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.point.className=\"vis-item vis-point\"+className;this.dom.dot.className=\"vis-item vis-dot\"+className}};PointItem.prototype._getDomComponentsSizes=function(){return{dot:{width:this.dom.dot.offsetWidth,height:this.dom.dot.offsetHeight},content:{width:this.dom.content.offsetWidth,height:this.dom.content.offsetHeight},point:{width:this.dom.point.offsetWidth,height:this.dom.point.offsetHeight}}};PointItem.prototype._updateDomComponentsSizes=function(sizes){this.props.dot.width=sizes.dot.width;this.props.dot.height=sizes.dot.height;this.props.content.height=sizes.content.height;if(this.options.rtl){this.dom.content.style.marginRight=2*this.props.dot.width+\"px\"}else{this.dom.content.style.marginLeft=2*this.props.dot.width+\"px\"}this.width=sizes.point.width;this.height=sizes.point.height;this.dom.dot.style.top=(this.height-this.props.dot.height)/2+\"px\";if(this.options.rtl){this.dom.dot.style.right=this.props.dot.width/2+\"px\"}else{this.dom.dot.style.left=this.props.dot.width/2+\"px\"}this.dirty=false};PointItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.point);this._repaintDragCenter();this._repaintDeleteButton(this.dom.point)};PointItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};PointItem.prototype.show=function(){if(!this.displayed){this.redraw()}};PointItem.prototype.hide=function(){if(this.displayed){if(this.dom.point.parentNode){this.dom.point.parentNode.removeChild(this.dom.point)}this.displayed=false}};PointItem.prototype.repositionX=function(){var start=this.conversion.toScreen(this.data.start);if(this.options.rtl){this.right=start-this.props.dot.width;this.dom.point.style.right=this.right+\"px\"}else{this.left=start-this.props.dot.width;this.dom.point.style.left=this.left+\"px\"}};PointItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var point=this.dom.point;if(orientation==\"top\"){point.style.top=this.top+\"px\"}else{point.style.top=this.parent.height-this.top-this.height+\"px\"}};PointItem.prototype.getWidthLeft=function(){return this.props.dot.width};PointItem.prototype.getWidthRight=function(){return this.props.dot.width};module.exports=PointItem},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);var BackgroundGroup=__webpack_require__(69);var RangeItem=__webpack_require__(70);function BackgroundItem(data,conversion,options){this.props={content:{width:0}};this.overflow=false;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data.id)}if(data.end==undefined){throw new Error('Property \"end\" missing in item '+data.id)}}Item.call(this,data,conversion,options)}BackgroundItem.prototype=new Item(null,null,null);BackgroundItem.prototype.baseClassName=\"vis-item vis-background\";BackgroundItem.prototype.stack=false;BackgroundItem.prototype.isVisible=function(range){return this.data.start<range.end&&this.data.end>range.start};BackgroundItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"div\");this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-item-overflow\";this.dom.box.appendChild(this.dom.frame);this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.frame.appendChild(this.dom.content);this.dirty=true}};BackgroundItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var background=this.parent.dom.background;if(!background){throw new Error(\"Cannot redraw item: parent has no background container element\")}background.appendChild(this.dom.box)}this.displayed=true};BackgroundItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.content);this._updateStyle(this.dom.box);var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\");this.dom.box.className=this.baseClassName+className}};BackgroundItem.prototype._getDomComponentsSizes=function(){this.overflow=window.getComputedStyle(this.dom.content).overflow!==\"hidden\";return{content:{width:this.dom.content.offsetWidth}}};BackgroundItem.prototype._updateDomComponentsSizes=function(sizes){this.props.content.width=sizes.content.width;this.height=0;this.dirty=false};BackgroundItem.prototype._repaintDomAdditionals=function(){};BackgroundItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes.bind(this)()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};BackgroundItem.prototype.show=RangeItem.prototype.show;BackgroundItem.prototype.hide=RangeItem.prototype.hide;BackgroundItem.prototype.repositionX=RangeItem.prototype.repositionX;BackgroundItem.prototype.repositionY=function(margin){var height;var orientation=this.options.orientation.item;if(this.data.subgroup!==undefined){var itemSubgroup=this.data.subgroup;this.dom.box.style.height=this.parent.subgroups[itemSubgroup].height+\"px\";if(orientation==\"top\"){this.dom.box.style.top=this.parent.top+this.parent.subgroups[itemSubgroup].top+\"px\"}else{this.dom.box.style.top=this.parent.top+this.parent.height-this.parent.subgroups[itemSubgroup].top-this.parent.subgroups[itemSubgroup].height+\"px\"}this.dom.box.style.bottom=\"\"}else{if(this.parent instanceof BackgroundGroup){height=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height);this.dom.box.style.bottom=orientation==\"bottom\"?\"0\":\"\";this.dom.box.style.top=orientation==\"top\"?\"0\":\"\"}else{height=this.parent.height;this.dom.box.style.top=this.parent.top+\"px\";this.dom.box.style.bottom=\"\"}}this.dom.box.style.height=height+\"px\"};module.exports=BackgroundItem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Popup=function(){function Popup(container,overflowMethod){(0,_classCallCheck3[\"default\"])(this,Popup);this.container=container;this.overflowMethod=overflowMethod||\"cap\";this.x=0;this.y=0;this.padding=5;this.hidden=false;this.frame=document.createElement(\"div\");this.frame.className=\"vis-tooltip\";this.container.appendChild(this.frame)}(0,_createClass3[\"default\"])(Popup,[{key:\"setPosition\",value:function setPosition(x,y){this.x=parseInt(x);this.y=parseInt(y)}},{key:\"setText\",value:function setText(content){if(content instanceof Element){this.frame.innerHTML=\"\";this.frame.appendChild(content)}else{this.frame.innerHTML=content}}},{key:\"show\",value:function show(doShow){if(doShow===undefined){doShow=true}if(doShow===true){var height=this.frame.clientHeight;var width=this.frame.clientWidth;var maxHeight=this.frame.parentNode.clientHeight;var maxWidth=this.frame.parentNode.clientWidth;var left=0,top=0;if(this.overflowMethod==\"flip\"){var isLeft=false,isTop=true;if(this.y-height<this.padding){isTop=false}if(this.x+width>maxWidth-this.padding){isLeft=true}if(isLeft){left=this.x-width}else{left=this.x}if(isTop){top=this.y-height}else{top=this.y}}else{top=this.y-height;if(top+height+this.padding>maxHeight){top=maxHeight-height-this.padding}if(top<this.padding){top=this.padding}left=this.x;if(left+width+this.padding>maxWidth){left=maxWidth-width-this.padding}if(left<this.padding){left=this.padding}}this.frame.style.left=left+\"px\";this.frame.style.top=top+\"px\";this.frame.style.visibility=\"visible\";this.hidden=false}else{this.hide()}}},{key:\"hide\",value:function hide(){this.hidden=true;this.frame.style.left=\"0\";this.frame.style.top=\"0\";this.frame.style.visibility=\"hidden\"}},{key:\"destroy\",value:function destroy(){this.frame.parentNode.removeChild(this.frame)}}]);return Popup}();exports[\"default\"]=Popup},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var date=\"date\";var object=\"object\";var dom=\"dom\";var moment=\"moment\";var any=\"any\";var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,function:\"function\"},container:{dom:dom},__type__:{object:object,boolean:bool,function:\"function\"}},align:{string:string},rtl:{boolean:bool,undefined:\"undefined\"},rollingMode:{follow:{boolean:bool},offset:{number:number,undefined:\"undefined\"},__type__:{object:object}},verticalScroll:{boolean:bool,undefined:\"undefined\"},horizontalScroll:{boolean:bool,undefined:\"undefined\"},autoResize:{boolean:bool},throttleRedraw:{number:number},clickToUse:{boolean:bool},dataAttributes:{string:string,array:array},editable:{add:{boolean:bool,undefined:\"undefined\"},remove:{boolean:bool,undefined:\"undefined\"},updateGroup:{boolean:bool,undefined:\"undefined\"},updateTime:{boolean:bool,undefined:\"undefined\"},overrideItems:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},end:{number:number,date:date,string:string,moment:moment},format:{minorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},week:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object,function:\"function\"}},majorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},week:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object,function:\"function\"}},__type__:{object:object}},moment:{function:\"function\"},groupOrder:{string:string,function:\"function\"},groupEditable:{add:{boolean:bool,undefined:\"undefined\"},remove:{boolean:bool,undefined:\"undefined\"},order:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},groupOrderSwap:{function:\"function\"},height:{string:string,number:number},hiddenDates:{start:{date:date,number:number,string:string,moment:moment},end:{date:date,number:number,string:string,moment:moment},repeat:{string:string},__type__:{object:object,array:array}},itemsAlwaysDraggable:{item:{boolean:bool,undefined:\"undefined\"},range:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},limitSize:{boolean:bool},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},margin:{axis:{number:number},item:{horizontal:{number:number,undefined:\"undefined\"},vertical:{number:number,undefined:\"undefined\"},__type__:{object:object,number:number}},__type__:{object:object,number:number}},max:{date:date,number:number,string:string,moment:moment},maxHeight:{number:number,string:string},maxMinorChars:{number:number},min:{date:date,number:number,string:string,moment:moment},minHeight:{number:number,string:string},moveable:{boolean:bool},multiselect:{boolean:bool},multiselectPerGroup:{boolean:bool},onAdd:{function:\"function\"},onDropObjectOnItem:{function:\"function\"},onUpdate:{function:\"function\"},onMove:{function:\"function\"},onMoving:{function:\"function\"},onRemove:{function:\"function\"},onAddGroup:{function:\"function\"},onMoveGroup:{function:\"function\"},onRemoveGroup:{function:\"function\"},onInitialDrawComplete:{function:\"function\"},order:{function:\"function\"},orientation:{axis:{string:string,undefined:\"undefined\"},item:{string:string,undefined:\"undefined\"},__type__:{string:string,object:object}},selectable:{boolean:bool},showCurrentTime:{boolean:bool},showMajorLabels:{boolean:bool},showMinorLabels:{boolean:bool},stack:{boolean:bool},stackSubgroups:{boolean:bool},snap:{function:\"function\",null:\"null\"},start:{date:date,number:number,string:string,moment:moment},template:{function:\"function\"},groupTemplate:{function:\"function\"},visibleFrameTemplate:{string:string,function:\"function\"},showTooltips:{boolean:bool},tooltip:{followMouse:{boolean:bool},overflowMethod:{string:[\"cap\",\"flip\"]},__type__:{object:object}},tooltipOnItemUpdateTime:{template:{function:\"function\"},__type__:{boolean:bool,object:object}},timeAxis:{scale:{string:string,undefined:\"undefined\"},step:{number:number,undefined:\"undefined\"},__type__:{object:object}},type:{string:string},width:{string:string,number:number},zoomable:{boolean:bool},zoomKey:{string:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"]},zoomMax:{number:number},zoomMin:{number:number},__type__:{object:object}};var configureOptions={global:{align:[\"center\",\"left\",\"right\"],direction:false,autoResize:true,clickToUse:false,editable:{add:false,remove:false,updateGroup:false,updateTime:false},end:\"\",format:{minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",week:\"w\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",week:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}},groupsDraggable:false,height:\"\",locale:\"\",margin:{axis:[20,0,100,1],item:{horizontal:[10,0,100,1],vertical:[10,0,100,1]}},max:\"\",maxHeight:\"\",maxMinorChars:[7,0,20,1],min:\"\",minHeight:\"\",moveable:false,multiselect:false,multiselectPerGroup:false,orientation:{axis:[\"both\",\"bottom\",\"top\"],item:[\"bottom\",\"top\"]},selectable:true,showCurrentTime:false,showMajorLabels:true,showMinorLabels:true,stack:true,stackSubgroups:true,start:\"\",showTooltips:true,tooltip:{followMouse:false,overflowMethod:\"flip\"},tooltipOnItemUpdateTime:false,type:[\"box\",\"point\",\"range\",\"background\"],width:\"100%\",zoomable:true,zoomKey:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1]}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Component=__webpack_require__(16);var DataAxis=__webpack_require__(107);var GraphGroup=__webpack_require__(109);var Legend=__webpack_require__(112);var Bars=__webpack_require__(110)\n;var Lines=__webpack_require__(111);var Points=__webpack_require__(72);var UNGROUPED=\"__ungrouped__\";function LineGraph(body,options){this.id=util.randomUUID();this.body=body;this.defaultOptions={yAxisOrientation:\"left\",defaultGroup:\"default\",sort:true,sampling:true,stack:false,graphHeight:\"400px\",shaded:{enabled:false,orientation:\"bottom\"},style:\"line\",barChart:{width:50,sideBySide:false,align:\"center\"},interpolation:{enabled:true,parametrization:\"centripetal\",alpha:.5},drawPoints:{enabled:true,size:6,style:\"square\"},dataAxis:{},legend:{},groups:{visibility:{}}};this.options=util.extend({},this.defaultOptions);this.dom={};this.props={};this.hammer=null;this.groups={};this.abortedGraphUpdate=false;this.updateSVGheight=false;this.updateSVGheightOnResize=false;this.forceGraphUpdate=true;var me=this;this.itemsData=null;this.groupsData=null;this.itemListeners={add:function add(event,params,senderId){me._onAdd(params.items)},update:function update(event,params,senderId){me._onUpdate(params.items)},remove:function remove(event,params,senderId){me._onRemove(params.items)}};this.groupListeners={add:function add(event,params,senderId){me._onAddGroups(params.items)},update:function update(event,params,senderId){me._onUpdateGroups(params.items)},remove:function remove(event,params,senderId){me._onRemoveGroups(params.items)}};this.items={};this.selection=[];this.lastStart=this.body.range.start;this.touchParams={};this.svgElements={};this.setOptions(options);this.groupsUsingDefaultStyles=[0];this.body.emitter.on(\"rangechanged\",function(){me.lastStart=me.body.range.start;me.svg.style.left=util.option.asSize(-me.props.width);me.forceGraphUpdate=true;me.redraw.call(me)});this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups}}LineGraph.prototype=new Component;LineGraph.prototype._create=function(){var frame=document.createElement(\"div\");frame.className=\"vis-line-graph\";this.dom.frame=frame;this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"relative\";this.svg.style.height=(\"\"+this.options.graphHeight).replace(\"px\",\"\")+\"px\";this.svg.style.display=\"block\";frame.appendChild(this.svg);this.options.dataAxis.orientation=\"left\";this.yAxisLeft=new DataAxis(this.body,this.options.dataAxis,this.svg,this.options.groups);this.options.dataAxis.orientation=\"right\";this.yAxisRight=new DataAxis(this.body,this.options.dataAxis,this.svg,this.options.groups);delete this.options.dataAxis.orientation;this.legendLeft=new Legend(this.body,this.options.legend,\"left\",this.options.groups);this.legendRight=new Legend(this.body,this.options.legend,\"right\",this.options.groups);this.show()};LineGraph.prototype.setOptions=function(options){if(options){var fields=[\"sampling\",\"defaultGroup\",\"stack\",\"height\",\"graphHeight\",\"yAxisOrientation\",\"style\",\"barChart\",\"dataAxis\",\"sort\",\"groups\"];if(options.graphHeight===undefined&&options.height!==undefined){this.updateSVGheight=true;this.updateSVGheightOnResize=true}else if(this.body.domProps.centerContainer.height!==undefined&&options.graphHeight!==undefined){if(parseInt((options.graphHeight+\"\").replace(\"px\",\"\"))<this.body.domProps.centerContainer.height){this.updateSVGheight=true}}util.selectiveDeepExtend(fields,this.options,options);util.mergeOptions(this.options,options,\"interpolation\");util.mergeOptions(this.options,options,\"drawPoints\");util.mergeOptions(this.options,options,\"shaded\");util.mergeOptions(this.options,options,\"legend\");if(options.interpolation){if((0,_typeof3[\"default\"])(options.interpolation)==\"object\"){if(options.interpolation.parametrization){if(options.interpolation.parametrization==\"uniform\"){this.options.interpolation.alpha=0}else if(options.interpolation.parametrization==\"chordal\"){this.options.interpolation.alpha=1}else{this.options.interpolation.parametrization=\"centripetal\";this.options.interpolation.alpha=.5}}}}if(this.yAxisLeft){if(options.dataAxis!==undefined){this.yAxisLeft.setOptions(this.options.dataAxis);this.yAxisRight.setOptions(this.options.dataAxis)}}if(this.legendLeft){if(options.legend!==undefined){this.legendLeft.setOptions(this.options.legend);this.legendRight.setOptions(this.options.legend)}}if(this.groups.hasOwnProperty(UNGROUPED)){this.groups[UNGROUPED].setOptions(options)}}if(this.dom.frame){this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})}};LineGraph.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}};LineGraph.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}};LineGraph.prototype.setItems=function(items){var me=this,ids,oldItemsData=this.itemsData;if(!items){this.itemsData=null}else if(items instanceof DataSet||items instanceof DataView){this.itemsData=items}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(oldItemsData){util.forEach(this.itemListeners,function(callback,event){oldItemsData.off(event,callback)});ids=oldItemsData.getIds();this._onRemove(ids)}if(this.itemsData){var id=this.id;util.forEach(this.itemListeners,function(callback,event){me.itemsData.on(event,callback,id)});ids=this.itemsData.getIds();this._onAdd(ids)}};LineGraph.prototype.setGroups=function(groups){var me=this;var ids;if(this.groupsData){util.forEach(this.groupListeners,function(callback,event){me.groupsData.off(event,callback)});ids=this.groupsData.getIds();this.groupsData=null;for(var i=0;i<ids.length;i++){this._removeGroup(ids[i])}}if(!groups){this.groupsData=null}else if(groups instanceof DataSet||groups instanceof DataView){this.groupsData=groups}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(this.groupsData){var id=this.id;util.forEach(this.groupListeners,function(callback,event){me.groupsData.on(event,callback,id)});ids=this.groupsData.getIds();this._onAddGroups(ids)}};LineGraph.prototype._onUpdate=function(ids){this._updateAllGroupData(ids)};LineGraph.prototype._onAdd=function(ids){this._onUpdate(ids)};LineGraph.prototype._onRemove=function(ids){this._onUpdate(ids)};LineGraph.prototype._onUpdateGroups=function(groupIds){this._updateAllGroupData(null,groupIds)};LineGraph.prototype._onAddGroups=function(groupIds){this._onUpdateGroups(groupIds)};LineGraph.prototype._onRemoveGroups=function(groupIds){for(var i=0;i<groupIds.length;i++){this._removeGroup(groupIds[i])}this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})};LineGraph.prototype._removeGroup=function(groupId){if(this.groups.hasOwnProperty(groupId)){if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.removeGroup(groupId);this.legendRight.removeGroup(groupId);this.legendRight.redraw()}else{this.yAxisLeft.removeGroup(groupId);this.legendLeft.removeGroup(groupId);this.legendLeft.redraw()}delete this.groups[groupId]}};LineGraph.prototype._updateGroup=function(group,groupId){if(!this.groups.hasOwnProperty(groupId)){this.groups[groupId]=new GraphGroup(group,groupId,this.options,this.groupsUsingDefaultStyles);if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.addGroup(groupId,this.groups[groupId]);this.legendRight.addGroup(groupId,this.groups[groupId])}else{this.yAxisLeft.addGroup(groupId,this.groups[groupId]);this.legendLeft.addGroup(groupId,this.groups[groupId])}}else{this.groups[groupId].update(group);if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.updateGroup(groupId,this.groups[groupId]);this.legendRight.updateGroup(groupId,this.groups[groupId]);this.yAxisLeft.removeGroup(groupId);this.legendLeft.removeGroup(groupId)}else{this.yAxisLeft.updateGroup(groupId,this.groups[groupId]);this.legendLeft.updateGroup(groupId,this.groups[groupId]);this.yAxisRight.removeGroup(groupId);this.legendRight.removeGroup(groupId)}}this.legendLeft.redraw();this.legendRight.redraw()};LineGraph.prototype._updateAllGroupData=function(ids,groupIds){if(this.itemsData!=null){var groupsContent={};var items=this.itemsData.get();var fieldId=this.itemsData._fieldId;var idMap={};if(ids){ids.map(function(id){idMap[id]=id})}var groupCounts={};for(var i=0;i<items.length;i++){var item=items[i];var groupId=item.group;if(groupId===null||groupId===undefined){groupId=UNGROUPED}groupCounts.hasOwnProperty(groupId)?groupCounts[groupId]++:groupCounts[groupId]=1}var existingItemsMap={};if(!groupIds&&ids){for(groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){group=this.groups[groupId];var existing_items=group.getItems();groupsContent[groupId]=existing_items.filter(function(item){existingItemsMap[item[fieldId]]=item[fieldId];return item[fieldId]!==idMap[item[fieldId]]});var newLength=groupCounts[groupId];groupCounts[groupId]-=groupsContent[groupId].length;if(groupsContent[groupId].length<newLength){groupsContent[groupId][newLength-1]={}}}}}for(i=0;i<items.length;i++){item=items[i];groupId=item.group;if(groupId===null||groupId===undefined){groupId=UNGROUPED}if(!groupIds&&ids&&item[fieldId]!==idMap[item[fieldId]]&&existingItemsMap.hasOwnProperty(item[fieldId])){continue}if(!groupsContent.hasOwnProperty(groupId)){groupsContent[groupId]=new Array(groupCounts[groupId])}var extended=util.bridgeObject(item);extended.x=util.convert(item.x,\"Date\");extended.end=util.convert(item.end,\"Date\");extended.orginalY=item.y;extended.y=Number(item.y);extended[fieldId]=item[fieldId];var index=groupsContent[groupId].length-groupCounts[groupId]--;groupsContent[groupId][index]=extended}for(groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){if(!groupsContent.hasOwnProperty(groupId)){groupsContent[groupId]=new Array(0)}}}for(groupId in groupsContent){if(groupsContent.hasOwnProperty(groupId)){if(groupsContent[groupId].length==0){if(this.groups.hasOwnProperty(groupId)){this._removeGroup(groupId)}}else{var group=undefined;if(this.groupsData!=undefined){group=this.groupsData.get(groupId)}if(group==undefined){group={id:groupId,content:this.options.defaultGroup+groupId}}this._updateGroup(group,groupId);this.groups[groupId].setItems(groupsContent[groupId])}}}this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})}};LineGraph.prototype.redraw=function(){var resized=false;this.props.width=this.dom.frame.offsetWidth;this.props.height=this.body.domProps.centerContainer.height-this.body.domProps.border.top-this.body.domProps.border.bottom;resized=this._isResized()||resized;var visibleInterval=this.body.range.end-this.body.range.start;var zoomed=visibleInterval!=this.lastVisibleInterval;this.lastVisibleInterval=visibleInterval;if(resized==true){this.svg.style.width=util.option.asSize(3*this.props.width);this.svg.style.left=util.option.asSize(-this.props.width);if((this.options.height+\"\").indexOf(\"%\")!=-1||this.updateSVGheightOnResize==true){this.updateSVGheight=true}}if(this.updateSVGheight==true){if(this.options.graphHeight!=this.props.height+\"px\"){this.options.graphHeight=this.props.height+\"px\";this.svg.style.height=this.props.height+\"px\"}this.updateSVGheight=false}else{this.svg.style.height=(\"\"+this.options.graphHeight).replace(\"px\",\"\")+\"px\"}if(resized==true||zoomed==true||this.abortedGraphUpdate==true||this.forceGraphUpdate==true){resized=this._updateGraph()||resized;this.forceGraphUpdate=false}else{if(this.lastStart!=0){var offset=this.body.range.start-this.lastStart;var range=this.body.range.end-this.body.range.start;if(this.props.width!=0){var rangePerPixelInv=this.props.width/range;var xOffset=offset*rangePerPixelInv;this.svg.style.left=-this.props.width-xOffset+\"px\"}}}this.legendLeft.redraw();this.legendRight.redraw();return resized};LineGraph.prototype._getSortedGroupIds=function(){var grouplist=[];for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){var group=this.groups[groupId];if(group.visible==true&&(this.options.groups.visibility[groupId]===undefined||this.options.groups.visibility[groupId]==true)){grouplist.push({id:groupId,zIndex:group.options.zIndex})}}}util.insertSort(grouplist,function(a,b){var az=a.zIndex;var bz=b.zIndex;if(az===undefined)az=0;if(bz===undefined)bz=0;return az==bz?0:az<bz?-1:1});var groupIds=new Array(grouplist.length);for(var i=0;i<grouplist.length;i++){groupIds[i]=grouplist[i].id}return groupIds};LineGraph.prototype._updateGraph=function(){DOMutil.prepareElements(this.svgElements);if(this.props.width!=0&&this.itemsData!=null){var group,i;var groupRanges={};var changeCalled=false;var minDate=this.body.util.toGlobalTime(-this.body.domProps.root.width);var maxDate=this.body.util.toGlobalTime(2*this.body.domProps.root.width);var groupIds=this._getSortedGroupIds();if(groupIds.length>0){var groupsData={};this._getRelevantData(groupIds,groupsData,minDate,maxDate);this._applySampling(groupIds,groupsData);for(i=0;i<groupIds.length;i++){this._convertXcoordinates(groupsData[groupIds[i]])}this._getYRanges(groupIds,groupsData,groupRanges);changeCalled=this._updateYAxis(groupIds,groupRanges);if(changeCalled==true){DOMutil.cleanupElements(this.svgElements);this.abortedGraphUpdate=true;return true}this.abortedGraphUpdate=false;var below=undefined;for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(this.options.stack===true&&this.options.style===\"line\"){if(group.options.excludeFromStacking==undefined||!group.options.excludeFromStacking){if(below!=undefined){this._stack(groupsData[group.id],groupsData[below.id]);if(group.options.shaded.enabled==true&&group.options.shaded.orientation!==\"group\"){if(group.options.shaded.orientation==\"top\"&&below.options.shaded.orientation!==\"group\"){below.options.shaded.orientation=\"group\";below.options.shaded.groupId=group.id}else{group.options.shaded.orientation=\"group\";group.options.shaded.groupId=below.id}}}below=group}}this._convertYcoordinates(groupsData[groupIds[i]],group)}var paths={};for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(group.options.style===\"line\"&&group.options.shaded.enabled==true){var dataset=groupsData[groupIds[i]];if(dataset==null||dataset.length==0){continue}if(!paths.hasOwnProperty(groupIds[i])){paths[groupIds[i]]=Lines.calcPath(dataset,group)}if(group.options.shaded.orientation===\"group\"){var subGroupId=group.options.shaded.groupId;if(groupIds.indexOf(subGroupId)===-1){console.log(group.id+\": Unknown shading group target given:\"+subGroupId);continue}if(!paths.hasOwnProperty(subGroupId)){paths[subGroupId]=Lines.calcPath(groupsData[subGroupId],this.groups[subGroupId])}Lines.drawShading(paths[groupIds[i]],group,paths[subGroupId],this.framework)}else{Lines.drawShading(paths[groupIds[i]],group,undefined,this.framework)}}}Bars.draw(groupIds,groupsData,this.framework);for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(groupsData[groupIds[i]].length>0){switch(group.options.style){case\"line\":if(!paths.hasOwnProperty(groupIds[i])){paths[groupIds[i]]=Lines.calcPath(groupsData[groupIds[i]],group)}Lines.draw(paths[groupIds[i]],group,this.framework);case\"point\":case\"points\":if(group.options.style==\"point\"||group.options.style==\"points\"||group.options.drawPoints.enabled==true){Points.draw(groupsData[groupIds[i]],group,this.framework)}break;case\"bar\":default:}}}}}DOMutil.cleanupElements(this.svgElements);return false};LineGraph.prototype._stack=function(data,subData){var index,dx,dy,subPrevPoint,subNextPoint;index=0;for(var j=0;j<data.length;j++){subPrevPoint=undefined;subNextPoint=undefined;for(var k=index;k<subData.length;k++){if(subData[k].x===data[j].x){subPrevPoint=subData[k];subNextPoint=subData[k];index=k;break}else if(subData[k].x>data[j].x){subNextPoint=subData[k];if(k==0){subPrevPoint=subNextPoint}else{subPrevPoint=subData[k-1]}index=k;break}}if(subNextPoint===undefined){subPrevPoint=subData[subData.length-1];subNextPoint=subData[subData.length-1]}dx=subNextPoint.x-subPrevPoint.x;dy=subNextPoint.y-subPrevPoint.y;if(dx==0){data[j].y=data[j].orginalY+subNextPoint.y}else{data[j].y=data[j].orginalY+dy/dx*(data[j].x-subPrevPoint.x)+subPrevPoint.y}}};LineGraph.prototype._getRelevantData=function(groupIds,groupsData,minDate,maxDate){var group,i,j,item;if(groupIds.length>0){for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];var itemsData=group.getItems();if(group.options.sort==true){var dateComparator=function dateComparator(a,b){return a.getTime()==b.getTime()?0:a<b?-1:1};var first=Math.max(0,util.binarySearchValue(itemsData,minDate,\"x\",\"before\",dateComparator));var last=Math.min(itemsData.length,util.binarySearchValue(itemsData,maxDate,\"x\",\"after\",dateComparator)+1);if(last<=0){last=itemsData.length}var dataContainer=new Array(last-first);for(j=first;j<last;j++){item=group.itemsData[j];dataContainer[j-first]=item}groupsData[groupIds[i]]=dataContainer}else{groupsData[groupIds[i]]=group.itemsData}}}};LineGraph.prototype._applySampling=function(groupIds,groupsData){var group;if(groupIds.length>0){for(var i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(group.options.sampling==true){var dataContainer=groupsData[groupIds[i]];if(dataContainer.length>0){var increment=1;var amountOfPoints=dataContainer.length;var xDistance=this.body.util.toGlobalScreen(dataContainer[dataContainer.length-1].x)-this.body.util.toGlobalScreen(dataContainer[0].x);var pointsPerPixel=amountOfPoints/xDistance;increment=Math.min(Math.ceil(.2*amountOfPoints),Math.max(1,Math.round(pointsPerPixel)));var sampledData=new Array(amountOfPoints);for(var j=0;j<amountOfPoints;j+=increment){var idx=Math.round(j/increment);sampledData[idx]=dataContainer[j]}groupsData[groupIds[i]]=sampledData.splice(0,Math.round(amountOfPoints/increment))}}}}};LineGraph.prototype._getYRanges=function(groupIds,groupsData,groupRanges){var groupData,group,i;var combinedDataLeft=[];var combinedDataRight=[];var options;if(groupIds.length>0){for(i=0;i<groupIds.length;i++){groupData=groupsData[groupIds[i]];options=this.groups[groupIds[i]].options;if(groupData.length>0){group=this.groups[groupIds[i]];if(options.stack===true&&options.style===\"bar\"){if(options.yAxisOrientation===\"left\"){combinedDataLeft=combinedDataLeft.concat(groupData)}else{combinedDataRight=combinedDataRight.concat(groupData)}}else{groupRanges[groupIds[i]]=group.getYRange(groupData,groupIds[i])}}}Bars.getStackedYRange(combinedDataLeft,groupRanges,groupIds,\"__barStackLeft\",\"left\");Bars.getStackedYRange(combinedDataRight,groupRanges,groupIds,\"__barStackRight\",\"right\")}};LineGraph.prototype._updateYAxis=function(groupIds,groupRanges){var resized=false;var yAxisLeftUsed=false;var yAxisRightUsed=false;var minLeft=1e9,minRight=1e9,maxLeft=-1e9,maxRight=-1e9,minVal,maxVal;if(groupIds.length>0){for(var i=0;i<groupIds.length;i++){var group=this.groups[groupIds[i]];if(group&&group.options.yAxisOrientation!=\"right\"){yAxisLeftUsed=true;minLeft=1e9;maxLeft=-1e9}else if(group&&group.options.yAxisOrientation){yAxisRightUsed=true;minRight=1e9;maxRight=-1e9}}for(i=0;i<groupIds.length;i++){if(groupRanges.hasOwnProperty(groupIds[i])){if(groupRanges[groupIds[i]].ignore!==true){minVal=groupRanges[groupIds[i]].min;maxVal=groupRanges[groupIds[i]].max;if(groupRanges[groupIds[i]].yAxisOrientation!=\"right\"){yAxisLeftUsed=true;minLeft=minLeft>minVal?minVal:minLeft;maxLeft=maxLeft<maxVal?maxVal:maxLeft}else{yAxisRightUsed=true;minRight=minRight>minVal?minVal:minRight;maxRight=maxRight<maxVal?maxVal:maxRight}}}}if(yAxisLeftUsed==true){this.yAxisLeft.setRange(minLeft,maxLeft)}if(yAxisRightUsed==true){this.yAxisRight.setRange(minRight,maxRight)}}resized=this._toggleAxisVisiblity(yAxisLeftUsed,this.yAxisLeft)||resized;resized=this._toggleAxisVisiblity(yAxisRightUsed,this.yAxisRight)||resized;if(yAxisRightUsed==true&&yAxisLeftUsed==true){this.yAxisLeft.drawIcons=true;this.yAxisRight.drawIcons=true}else{this.yAxisLeft.drawIcons=false;this.yAxisRight.drawIcons=false}this.yAxisRight.master=!yAxisLeftUsed;this.yAxisRight.masterAxis=this.yAxisLeft;if(this.yAxisRight.master==false){if(yAxisRightUsed==true){this.yAxisLeft.lineOffset=this.yAxisRight.width}else{this.yAxisLeft.lineOffset=0}resized=this.yAxisLeft.redraw()||resized;resized=this.yAxisRight.redraw()||resized}else{resized=this.yAxisRight.redraw()||resized}var tempGroups=[\"__barStackLeft\",\"__barStackRight\",\"__lineStackLeft\",\"__lineStackRight\"];for(i=0;i<tempGroups.length;i++){if(groupIds.indexOf(tempGroups[i])!=-1){groupIds.splice(groupIds.indexOf(tempGroups[i]),1)}}return resized};LineGraph.prototype._toggleAxisVisiblity=function(axisUsed,axis){var changed=false;if(axisUsed==false){if(axis.dom.frame.parentNode&&axis.hidden==false){axis.hide();changed=true}}else{if(!axis.dom.frame.parentNode&&axis.hidden==true){axis.show();changed=true}}return changed};LineGraph.prototype._convertXcoordinates=function(datapoints){var toScreen=this.body.util.toScreen;for(var i=0;i<datapoints.length;i++){datapoints[i].screen_x=toScreen(datapoints[i].x)+this.props.width;datapoints[i].screen_y=datapoints[i].y;if(datapoints[i].end!=undefined){datapoints[i].screen_end=toScreen(datapoints[i].end)+this.props.width}else{datapoints[i].screen_end=undefined}}};LineGraph.prototype._convertYcoordinates=function(datapoints,group){var axis=this.yAxisLeft;var svgHeight=Number(this.svg.style.height.replace(\"px\",\"\"));if(group.options.yAxisOrientation==\"right\"){axis=this.yAxisRight}for(var i=0;i<datapoints.length;i++){datapoints[i].screen_y=Math.round(axis.convertValue(datapoints[i].y))}group.setZeroPosition(Math.min(svgHeight,axis.convertValue(0)))};module.exports=LineGraph},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var Component=__webpack_require__(16);var DataScale=__webpack_require__(108);function DataAxis(body,options,svg,linegraphOptions){this.id=util.randomUUID();this.body=body;this.defaultOptions={orientation:\"left\",showMinorLabels:true,showMajorLabels:true,icons:false,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:\"40px\",visible:true,alignZeros:true,left:{range:{min:undefined,max:undefined},format:function format(value){return\"\"+parseFloat(value.toPrecision(3))},title:{text:undefined,style:undefined}},right:{range:{min:undefined,max:undefined},format:function format(value){return\"\"+parseFloat(value.toPrecision(3))},title:{text:undefined,style:undefined}}};this.linegraphOptions=linegraphOptions;this.linegraphSVG=svg;this.props={};this.DOMelements={lines:{},labels:{},title:{}};this.dom={};this.scale=undefined;this.range={start:0,end:0};this.options=util.extend({},this.defaultOptions);this.conversionFactor=1;this.setOptions(options);this.width=Number((\"\"+this.options.width).replace(\"px\",\"\"));this.minWidth=this.width;this.height=this.linegraphSVG.getBoundingClientRect().height;this.hidden=false;this.stepPixels=25;this.zeroCrossing=-1;this.amountOfSteps=-1;this.lineOffset=0;this.master=true;this.masterAxis=null;this.svgElements={};this.iconsRemoved=false;this.groups={};this.amountOfGroups=0;this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};var me=this;this.body.emitter.on(\"verticalDrag\",function(){me.dom.lineContainer.style.top=me.body.domProps.scrollTop+\"px\"})}DataAxis.prototype=new Component;DataAxis.prototype.addGroup=function(label,graphOptions){if(!this.groups.hasOwnProperty(label)){this.groups[label]=graphOptions}this.amountOfGroups+=1};DataAxis.prototype.updateGroup=function(label,graphOptions){if(!this.groups.hasOwnProperty(label)){this.amountOfGroups+=1}this.groups[label]=graphOptions};DataAxis.prototype.removeGroup=function(label){if(this.groups.hasOwnProperty(label)){delete this.groups[label];this.amountOfGroups-=1}};DataAxis.prototype.setOptions=function(options){if(options){var redraw=false;if(this.options.orientation!=options.orientation&&options.orientation!==undefined){redraw=true}var fields=[\"orientation\",\"showMinorLabels\",\"showMajorLabels\",\"icons\",\"majorLinesOffset\",\"minorLinesOffset\",\"labelOffsetX\",\"labelOffsetY\",\"iconWidth\",\"width\",\"visible\",\"left\",\"right\",\"alignZeros\"];util.selectiveDeepExtend(fields,this.options,options);this.minWidth=Number((\"\"+this.options.width).replace(\"px\",\"\"));if(redraw===true&&this.dom.frame){this.hide();this.show()}}};DataAxis.prototype._create=function(){this.dom.frame=document.createElement(\"div\");this.dom.frame.style.width=this.options.width;this.dom.frame.style.height=this.height;this.dom.lineContainer=document.createElement(\"div\");this.dom.lineContainer.style.width=\"100%\";this.dom.lineContainer.style.height=this.height;this.dom.lineContainer.style.position=\"relative\";this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"absolute\";this.svg.style.top=\"0px\";this.svg.style.height=\"100%\";this.svg.style.width=\"100%\";this.svg.style.display=\"block\";this.dom.frame.appendChild(this.svg)};DataAxis.prototype._redrawGroupIcons=function(){DOMutil.prepareElements(this.svgElements);var x;var iconWidth=this.options.iconWidth;var iconHeight=15;var iconOffset=4;var y=iconOffset+.5*iconHeight;if(this.options.orientation===\"left\"){x=iconOffset}else{x=this.width-iconWidth-iconOffset}var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible===true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]===true)){this.groups[groupId].getLegend(iconWidth,iconHeight,this.framework,x,y);y+=iconHeight+iconOffset}}DOMutil.cleanupElements(this.svgElements);this.iconsRemoved=false};DataAxis.prototype._cleanupIcons=function(){if(this.iconsRemoved===false){DOMutil.prepareElements(this.svgElements);DOMutil.cleanupElements(this.svgElements);this.iconsRemoved=true}};DataAxis.prototype.show=function(){this.hidden=false;if(!this.dom.frame.parentNode){if(this.options.orientation===\"left\"){this.body.dom.left.appendChild(this.dom.frame)}else{this.body.dom.right.appendChild(this.dom.frame)}}if(!this.dom.lineContainer.parentNode){this.body.dom.backgroundHorizontal.appendChild(this.dom.lineContainer)}};DataAxis.prototype.hide=function(){this.hidden=true;if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}if(this.dom.lineContainer.parentNode){this.dom.lineContainer.parentNode.removeChild(this.dom.lineContainer)}};DataAxis.prototype.setRange=function(start,end){this.range.start=start;this.range.end=end};DataAxis.prototype.redraw=function(){var resized=false;var activeGroups=0;this.dom.lineContainer.style.top=this.body.domProps.scrollTop+\"px\";for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){if(this.groups[groupId].visible===true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]===true)){activeGroups++}}}if(this.amountOfGroups===0||activeGroups===0){this.hide()}else{this.show();this.height=Number(this.linegraphSVG.style.height.replace(\"px\",\"\"));this.dom.lineContainer.style.height=this.height+\"px\";this.width=this.options.visible===true?Number((\"\"+this.options.width).replace(\"px\",\"\")):0;var props=this.props;var frame=this.dom.frame;frame.className=\"vis-data-axis\";this._calculateCharSize();var orientation=this.options.orientation;var showMinorLabels=this.options.showMinorLabels;var showMajorLabels=this.options.showMajorLabels;props.minorLabelHeight=showMinorLabels?props.minorCharHeight:0;props.majorLabelHeight=showMajorLabels?props.majorCharHeight:0;props.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset;props.minorLineHeight=1;props.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset;props.majorLineHeight=1;if(orientation===\"left\"){frame.style.top=\"0\";frame.style.left=\"0\";frame.style.bottom=\"\";frame.style.width=this.width+\"px\";frame.style.height=this.height+\"px\";this.props.width=this.body.domProps.left.width;this.props.height=this.body.domProps.left.height}else{frame.style.top=\"\";frame.style.bottom=\"0\";frame.style.left=\"0\";frame.style.width=this.width+\"px\";frame.style.height=this.height+\"px\";this.props.width=this.body.domProps.right.width;this.props.height=this.body.domProps.right.height}resized=this._redrawLabels();resized=this._isResized()||resized;if(this.options.icons===true){this._redrawGroupIcons()}else{this._cleanupIcons()}this._redrawTitle(orientation)}return resized};DataAxis.prototype._redrawLabels=function(){var _this=this;var resized=false;DOMutil.prepareElements(this.DOMelements.lines);DOMutil.prepareElements(this.DOMelements.labels);var orientation=this.options[\"orientation\"];var customRange=this.options[orientation].range!=undefined?this.options[orientation].range:{};var autoScaleEnd=true;if(customRange.max!=undefined){this.range.end=customRange.max;autoScaleEnd=false}var autoScaleStart=true;if(customRange.min!=undefined){this.range.start=customRange.min;autoScaleStart=false}this.scale=new DataScale(this.range.start,this.range.end,autoScaleStart,autoScaleEnd,this.dom.frame.offsetHeight,this.props.majorCharHeight,this.options.alignZeros,this.options[orientation].format);if(this.master===false&&this.masterAxis!=undefined){this.scale.followScale(this.masterAxis.scale)}this.maxLabelSize=0;var lines=this.scale.getLines();lines.forEach(function(line){var y=line.y;var isMajor=line.major;if(_this.options[\"showMinorLabels\"]&&isMajor===false){_this._redrawLabel(y-2,line.val,orientation,\"vis-y-axis vis-minor\",_this.props.minorCharHeight)}if(isMajor){if(y>=0){_this._redrawLabel(y-2,line.val,orientation,\"vis-y-axis vis-major\",_this.props.majorCharHeight)}}if(_this.master===true){if(isMajor){_this._redrawLine(y,orientation,\"vis-grid vis-horizontal vis-major\",_this.options.majorLinesOffset,_this.props.majorLineWidth)}else{_this._redrawLine(y,orientation,\"vis-grid vis-horizontal vis-minor\",_this.options.minorLinesOffset,_this.props.minorLineWidth)}}});var titleWidth=0;if(this.options[orientation].title!==undefined&&this.options[orientation].title.text!==undefined){titleWidth=this.props.titleCharHeight}var offset=this.options.icons===true?Math.max(this.options.iconWidth,titleWidth)+this.options.labelOffsetX+15:titleWidth+this.options.labelOffsetX+15;if(this.maxLabelSize>this.width-offset&&this.options.visible===true){this.width=this.maxLabelSize+offset;this.options.width=this.width+\"px\";DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);this.redraw();resized=true}else if(this.maxLabelSize<this.width-offset&&this.options.visible===true&&this.width>this.minWidth){this.width=Math.max(this.minWidth,this.maxLabelSize+offset);this.options.width=this.width+\"px\";DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);this.redraw();resized=true}else{DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);resized=false}return resized};DataAxis.prototype.convertValue=function(value){return this.scale.convertValue(value)};DataAxis.prototype.screenToValue=function(x){return this.scale.screenToValue(x)};DataAxis.prototype._redrawLabel=function(y,text,orientation,className,characterHeight){var label=DOMutil.getDOMElement(\"div\",this.DOMelements.labels,this.dom.frame);label.className=className;label.innerHTML=text;if(orientation===\"left\"){label.style.left=\"-\"+this.options.labelOffsetX+\"px\";label.style.textAlign=\"right\"}else{label.style.right=\"-\"+this.options.labelOffsetX+\"px\";label.style.textAlign=\"left\"}label.style.top=y-.5*characterHeight+this.options.labelOffsetY+\"px\";text+=\"\";var largestWidth=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);if(this.maxLabelSize<text.length*largestWidth){this.maxLabelSize=text.length*largestWidth}};DataAxis.prototype._redrawLine=function(y,orientation,className,offset,width){if(this.master===true){\nvar line=DOMutil.getDOMElement(\"div\",this.DOMelements.lines,this.dom.lineContainer);line.className=className;line.innerHTML=\"\";if(orientation===\"left\"){line.style.left=this.width-offset+\"px\"}else{line.style.right=this.width-offset+\"px\"}line.style.width=width+\"px\";line.style.top=y+\"px\"}};DataAxis.prototype._redrawTitle=function(orientation){DOMutil.prepareElements(this.DOMelements.title);if(this.options[orientation].title!==undefined&&this.options[orientation].title.text!==undefined){var title=DOMutil.getDOMElement(\"div\",this.DOMelements.title,this.dom.frame);title.className=\"vis-y-axis vis-title vis-\"+orientation;title.innerHTML=this.options[orientation].title.text;if(this.options[orientation].title.style!==undefined){util.addCssText(title,this.options[orientation].title.style)}if(orientation===\"left\"){title.style.left=this.props.titleCharHeight+\"px\"}else{title.style.right=this.props.titleCharHeight+\"px\"}title.style.width=this.height+\"px\"}DOMutil.cleanupElements(this.DOMelements.title)};DataAxis.prototype._calculateCharSize=function(){if(!(\"minorCharHeight\"in this.props)){var textMinor=document.createTextNode(\"0\");var measureCharMinor=document.createElement(\"div\");measureCharMinor.className=\"vis-y-axis vis-minor vis-measure\";measureCharMinor.appendChild(textMinor);this.dom.frame.appendChild(measureCharMinor);this.props.minorCharHeight=measureCharMinor.clientHeight;this.props.minorCharWidth=measureCharMinor.clientWidth;this.dom.frame.removeChild(measureCharMinor)}if(!(\"majorCharHeight\"in this.props)){var textMajor=document.createTextNode(\"0\");var measureCharMajor=document.createElement(\"div\");measureCharMajor.className=\"vis-y-axis vis-major vis-measure\";measureCharMajor.appendChild(textMajor);this.dom.frame.appendChild(measureCharMajor);this.props.majorCharHeight=measureCharMajor.clientHeight;this.props.majorCharWidth=measureCharMajor.clientWidth;this.dom.frame.removeChild(measureCharMajor)}if(!(\"titleCharHeight\"in this.props)){var textTitle=document.createTextNode(\"0\");var measureCharTitle=document.createElement(\"div\");measureCharTitle.className=\"vis-y-axis vis-title vis-measure\";measureCharTitle.appendChild(textTitle);this.dom.frame.appendChild(measureCharTitle);this.props.titleCharHeight=measureCharTitle.clientHeight;this.props.titleCharWidth=measureCharTitle.clientWidth;this.dom.frame.removeChild(measureCharTitle)}};module.exports=DataAxis},function(module,exports,__webpack_require__){\"use strict\";function DataScale(start,end,autoScaleStart,autoScaleEnd,containerHeight,majorCharHeight){var zeroAlign=arguments.length>6&&arguments[6]!==undefined?arguments[6]:false;var formattingFunction=arguments.length>7&&arguments[7]!==undefined?arguments[7]:false;this.majorSteps=[1,2,5,10];this.minorSteps=[.25,.5,1,2];this.customLines=null;this.containerHeight=containerHeight;this.majorCharHeight=majorCharHeight;this._start=start;this._end=end;this.scale=1;this.minorStepIdx=-1;this.magnitudefactor=1;this.determineScale();this.zeroAlign=zeroAlign;this.autoScaleStart=autoScaleStart;this.autoScaleEnd=autoScaleEnd;this.formattingFunction=formattingFunction;if(autoScaleStart||autoScaleEnd){var me=this;var roundToMinor=function roundToMinor(value){var rounded=value-value%(me.magnitudefactor*me.minorSteps[me.minorStepIdx]);if(value%(me.magnitudefactor*me.minorSteps[me.minorStepIdx])>.5*(me.magnitudefactor*me.minorSteps[me.minorStepIdx])){return rounded+me.magnitudefactor*me.minorSteps[me.minorStepIdx]}else{return rounded}};if(autoScaleStart){this._start-=this.magnitudefactor*2*this.minorSteps[this.minorStepIdx];this._start=roundToMinor(this._start)}if(autoScaleEnd){this._end+=this.magnitudefactor*this.minorSteps[this.minorStepIdx];this._end=roundToMinor(this._end)}this.determineScale()}}DataScale.prototype.setCharHeight=function(majorCharHeight){this.majorCharHeight=majorCharHeight};DataScale.prototype.setHeight=function(containerHeight){this.containerHeight=containerHeight};DataScale.prototype.determineScale=function(){var range=this._end-this._start;this.scale=this.containerHeight/range;var minimumStepValue=this.majorCharHeight/this.scale;var orderOfMagnitude=range>0?Math.round(Math.log(range)/Math.LN10):0;this.minorStepIdx=-1;this.magnitudefactor=Math.pow(10,orderOfMagnitude);var start=0;if(orderOfMagnitude<0){start=orderOfMagnitude}var solutionFound=false;for(var l=start;Math.abs(l)<=Math.abs(orderOfMagnitude);l++){this.magnitudefactor=Math.pow(10,l);for(var j=0;j<this.minorSteps.length;j++){var stepSize=this.magnitudefactor*this.minorSteps[j];if(stepSize>=minimumStepValue){solutionFound=true;this.minorStepIdx=j;break}}if(solutionFound===true){break}}};DataScale.prototype.is_major=function(value){return value%(this.magnitudefactor*this.majorSteps[this.minorStepIdx])===0};DataScale.prototype.getStep=function(){return this.magnitudefactor*this.minorSteps[this.minorStepIdx]};DataScale.prototype.getFirstMajor=function(){var majorStep=this.magnitudefactor*this.majorSteps[this.minorStepIdx];return this.convertValue(this._start+(majorStep-this._start%majorStep)%majorStep)};DataScale.prototype.formatValue=function(current){var returnValue=current.toPrecision(5);if(typeof this.formattingFunction===\"function\"){returnValue=this.formattingFunction(current)}if(typeof returnValue===\"number\"){return\"\"+returnValue}else if(typeof returnValue===\"string\"){return returnValue}else{return current.toPrecision(5)}};DataScale.prototype.getLines=function(){var lines=[];var step=this.getStep();var bottomOffset=(step-this._start%step)%step;for(var i=this._start+bottomOffset;this._end-i>1e-5;i+=step){if(i!=this._start){lines.push({major:this.is_major(i),y:this.convertValue(i),val:this.formatValue(i)})}}return lines};DataScale.prototype.followScale=function(other){var oldStepIdx=this.minorStepIdx;var oldStart=this._start;var oldEnd=this._end;var me=this;var increaseMagnitude=function increaseMagnitude(){me.magnitudefactor*=2};var decreaseMagnitude=function decreaseMagnitude(){me.magnitudefactor/=2};if(other.minorStepIdx<=1&&this.minorStepIdx<=1||other.minorStepIdx>1&&this.minorStepIdx>1){}else if(other.minorStepIdx<this.minorStepIdx){this.minorStepIdx=1;if(oldStepIdx==2){increaseMagnitude()}else{increaseMagnitude();increaseMagnitude()}}else{this.minorStepIdx=2;if(oldStepIdx==1){decreaseMagnitude()}else{decreaseMagnitude();decreaseMagnitude()}}var otherZero=other.convertValue(0);var otherStep=other.getStep()*other.scale;var done=false;var count=0;while(!done&&count++<5){this.scale=otherStep/(this.minorSteps[this.minorStepIdx]*this.magnitudefactor);var newRange=this.containerHeight/this.scale;this._start=oldStart;this._end=this._start+newRange;var myOriginalZero=this._end*this.scale;var majorStep=this.magnitudefactor*this.majorSteps[this.minorStepIdx];var majorOffset=this.getFirstMajor()-other.getFirstMajor();if(this.zeroAlign){var zeroOffset=otherZero-myOriginalZero;this._end+=zeroOffset/this.scale;this._start=this._end-newRange}else{if(!this.autoScaleStart){this._start+=majorStep-majorOffset/this.scale;this._end=this._start+newRange}else{this._start-=majorOffset/this.scale;this._end=this._start+newRange}}if(!this.autoScaleEnd&&this._end>oldEnd+1e-5){decreaseMagnitude();done=false;continue}if(!this.autoScaleStart&&this._start<oldStart-1e-5){if(this.zeroAlign&&oldStart>=0){console.warn(\"Can't adhere to given 'min' range, due to zeroalign\")}else{decreaseMagnitude();done=false;continue}}if(this.autoScaleStart&&this.autoScaleEnd&&newRange<oldEnd-oldStart){increaseMagnitude();done=false;continue}done=true}};DataScale.prototype.convertValue=function(value){return this.containerHeight-(value-this._start)*this.scale};DataScale.prototype.screenToValue=function(pixels){return(this.containerHeight-pixels)/this.scale+this._start};module.exports=DataScale},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Bars=__webpack_require__(110);var Lines=__webpack_require__(111);var Points=__webpack_require__(72);function GraphGroup(group,groupId,options,groupsUsingDefaultStyles){this.id=groupId;var fields=[\"sampling\",\"style\",\"sort\",\"yAxisOrientation\",\"barChart\",\"drawPoints\",\"shaded\",\"interpolation\",\"zIndex\",\"excludeFromStacking\",\"excludeFromLegend\"];this.options=util.selectiveBridgeObject(fields,options);this.usingDefaultStyle=group.className===undefined;this.groupsUsingDefaultStyles=groupsUsingDefaultStyles;this.zeroPosition=0;this.update(group);if(this.usingDefaultStyle==true){this.groupsUsingDefaultStyles[0]+=1}this.itemsData=[];this.visible=group.visible===undefined?true:group.visible}GraphGroup.prototype.setItems=function(items){if(items!=null){this.itemsData=items;if(this.options.sort==true){util.insertSort(this.itemsData,function(a,b){return a.x>b.x?1:-1})}}else{this.itemsData=[]}};GraphGroup.prototype.getItems=function(){return this.itemsData};GraphGroup.prototype.setZeroPosition=function(pos){this.zeroPosition=pos};GraphGroup.prototype.setOptions=function(options){if(options!==undefined){var fields=[\"sampling\",\"style\",\"sort\",\"yAxisOrientation\",\"barChart\",\"zIndex\",\"excludeFromStacking\",\"excludeFromLegend\"];util.selectiveDeepExtend(fields,this.options,options);if(typeof options.drawPoints==\"function\"){options.drawPoints={onRender:options.drawPoints}}util.mergeOptions(this.options,options,\"interpolation\");util.mergeOptions(this.options,options,\"drawPoints\");util.mergeOptions(this.options,options,\"shaded\");if(options.interpolation){if((0,_typeof3[\"default\"])(options.interpolation)==\"object\"){if(options.interpolation.parametrization){if(options.interpolation.parametrization==\"uniform\"){this.options.interpolation.alpha=0}else if(options.interpolation.parametrization==\"chordal\"){this.options.interpolation.alpha=1}else{this.options.interpolation.parametrization=\"centripetal\";this.options.interpolation.alpha=.5}}}}}};GraphGroup.prototype.update=function(group){this.group=group;this.content=group.content||\"graph\";this.className=group.className||this.className||\"vis-graph-group\"+this.groupsUsingDefaultStyles[0]%10;this.visible=group.visible===undefined?true:group.visible;this.style=group.style;this.setOptions(group.options)};GraphGroup.prototype.getLegend=function(iconWidth,iconHeight,framework,x,y){if(framework==undefined||framework==null){var svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");framework={svg:svg,svgElements:{},options:this.options,groups:[this]}}if(x==undefined||x==null){x=0}if(y==undefined||y==null){y=.5*iconHeight}switch(this.options.style){case\"line\":Lines.drawIcon(this,x,y,iconWidth,iconHeight,framework);break;case\"points\":case\"point\":Points.drawIcon(this,x,y,iconWidth,iconHeight,framework);break;case\"bar\":Bars.drawIcon(this,x,y,iconWidth,iconHeight,framework);break}return{icon:framework.svg,label:this.content,orientation:this.options.yAxisOrientation}};GraphGroup.prototype.getYRange=function(groupData){var yMin=groupData[0].y;var yMax=groupData[0].y;for(var j=0;j<groupData.length;j++){yMin=yMin>groupData[j].y?groupData[j].y:yMin;yMax=yMax<groupData[j].y?groupData[j].y:yMax}return{min:yMin,max:yMax,yAxisOrientation:this.options.yAxisOrientation}};module.exports=GraphGroup},function(module,exports,__webpack_require__){\"use strict\";var DOMutil=__webpack_require__(14);var Points=__webpack_require__(72);function Bargraph(groupId,options){}Bargraph.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");var barWidth=Math.round(.3*iconWidth);var originalWidth=group.options.barChart.width;var scale=originalWidth/barWidth;var bar1Height=Math.round(.4*iconHeight);var bar2Height=Math.round(.75*iconHeight);var offset=Math.round((iconWidth-2*barWidth)/3);DOMutil.drawBar(x+.5*barWidth+offset,y+fillHeight-bar1Height-1,barWidth,bar1Height,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);DOMutil.drawBar(x+1.5*barWidth+offset+2,y+fillHeight-bar2Height-1,barWidth,bar2Height,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);if(group.options.drawPoints.enabled==true){var groupTemplate={style:group.options.drawPoints.style,styles:group.options.drawPoints.styles,size:group.options.drawPoints.size/scale,className:group.className};DOMutil.drawPoint(x+.5*barWidth+offset,y+fillHeight-bar1Height-1,groupTemplate,framework.svgElements,framework.svg);DOMutil.drawPoint(x+1.5*barWidth+offset+2,y+fillHeight-bar2Height-1,groupTemplate,framework.svgElements,framework.svg)}};Bargraph.draw=function(groupIds,processedGroupData,framework){var combinedData=[];var intersections={};var coreDistance;var key,drawData;var group;var i,j;var barPoints=0;for(i=0;i<groupIds.length;i++){group=framework.groups[groupIds[i]];if(group.options.style===\"bar\"){if(group.visible===true&&(framework.options.groups.visibility[groupIds[i]]===undefined||framework.options.groups.visibility[groupIds[i]]===true)){for(j=0;j<processedGroupData[groupIds[i]].length;j++){combinedData.push({screen_x:processedGroupData[groupIds[i]][j].screen_x,screen_end:processedGroupData[groupIds[i]][j].screen_end,screen_y:processedGroupData[groupIds[i]][j].screen_y,x:processedGroupData[groupIds[i]][j].x,end:processedGroupData[groupIds[i]][j].end,y:processedGroupData[groupIds[i]][j].y,groupId:groupIds[i],label:processedGroupData[groupIds[i]][j].label});barPoints+=1}}}}if(barPoints===0){return}combinedData.sort(function(a,b){if(a.screen_x===b.screen_x){return a.groupId<b.groupId?-1:1}else{return a.screen_x-b.screen_x}});Bargraph._getDataIntersections(intersections,combinedData);for(i=0;i<combinedData.length;i++){group=framework.groups[combinedData[i].groupId];var minWidth=group.options.barChart.minWidth!=undefined?group.options.barChart.minWidth:.1*group.options.barChart.width;key=combinedData[i].screen_x;var heightOffset=0;if(intersections[key]===undefined){if(i+1<combinedData.length){coreDistance=Math.abs(combinedData[i+1].screen_x-key)}drawData=Bargraph._getSafeDrawData(coreDistance,group,minWidth)}else{var nextKey=i+(intersections[key].amount-intersections[key].resolved);if(nextKey<combinedData.length){coreDistance=Math.abs(combinedData[nextKey].screen_x-key)}drawData=Bargraph._getSafeDrawData(coreDistance,group,minWidth);intersections[key].resolved+=1;if(group.options.stack===true&&group.options.excludeFromStacking!==true){if(combinedData[i].screen_y<group.zeroPosition){heightOffset=intersections[key].accumulatedNegative;intersections[key].accumulatedNegative+=group.zeroPosition-combinedData[i].screen_y}else{heightOffset=intersections[key].accumulatedPositive;intersections[key].accumulatedPositive+=group.zeroPosition-combinedData[i].screen_y}}else if(group.options.barChart.sideBySide===true){drawData.width=drawData.width/intersections[key].amount;drawData.offset+=intersections[key].resolved*drawData.width-.5*drawData.width*(intersections[key].amount+1)}}var dataWidth=drawData.width;var start=combinedData[i].screen_x;if(combinedData[i].screen_end!=undefined){dataWidth=combinedData[i].screen_end-combinedData[i].screen_x;start+=dataWidth*.5}else{start+=drawData.offset}DOMutil.drawBar(start,combinedData[i].screen_y-heightOffset,dataWidth,group.zeroPosition-combinedData[i].screen_y,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);if(group.options.drawPoints.enabled===true){var pointData={screen_x:combinedData[i].screen_x,screen_y:combinedData[i].screen_y-heightOffset,x:combinedData[i].x,y:combinedData[i].y,groupId:combinedData[i].groupId,label:combinedData[i].label};Points.draw([pointData],group,framework,drawData.offset)}}};Bargraph._getDataIntersections=function(intersections,combinedData){var coreDistance;for(var i=0;i<combinedData.length;i++){if(i+1<combinedData.length){coreDistance=Math.abs(combinedData[i+1].screen_x-combinedData[i].screen_x)}if(i>0){coreDistance=Math.min(coreDistance,Math.abs(combinedData[i-1].screen_x-combinedData[i].screen_x))}if(coreDistance===0){if(intersections[combinedData[i].screen_x]===undefined){intersections[combinedData[i].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}}intersections[combinedData[i].screen_x].amount+=1}}};Bargraph._getSafeDrawData=function(coreDistance,group,minWidth){var width,offset;if(coreDistance<group.options.barChart.width&&coreDistance>0){width=coreDistance<minWidth?minWidth:coreDistance;offset=0;if(group.options.barChart.align===\"left\"){offset-=.5*coreDistance}else if(group.options.barChart.align===\"right\"){offset+=.5*coreDistance}}else{width=group.options.barChart.width;offset=0;if(group.options.barChart.align===\"left\"){offset-=.5*group.options.barChart.width}else if(group.options.barChart.align===\"right\"){offset+=.5*group.options.barChart.width}}return{width:width,offset:offset}};Bargraph.getStackedYRange=function(combinedData,groupRanges,groupIds,groupLabel,orientation){if(combinedData.length>0){combinedData.sort(function(a,b){if(a.screen_x===b.screen_x){return a.groupId<b.groupId?-1:1}else{return a.screen_x-b.screen_x}});var intersections={};Bargraph._getDataIntersections(intersections,combinedData);groupRanges[groupLabel]=Bargraph._getStackedYRange(intersections,combinedData);groupRanges[groupLabel].yAxisOrientation=orientation;groupIds.push(groupLabel)}};Bargraph._getStackedYRange=function(intersections,combinedData){var key;var yMin=combinedData[0].screen_y;var yMax=combinedData[0].screen_y;for(var i=0;i<combinedData.length;i++){key=combinedData[i].screen_x;if(intersections[key]===undefined){yMin=yMin>combinedData[i].screen_y?combinedData[i].screen_y:yMin;yMax=yMax<combinedData[i].screen_y?combinedData[i].screen_y:yMax}else{if(combinedData[i].screen_y<0){intersections[key].accumulatedNegative+=combinedData[i].screen_y}else{intersections[key].accumulatedPositive+=combinedData[i].screen_y}}}for(var xpos in intersections){if(intersections.hasOwnProperty(xpos)){yMin=yMin>intersections[xpos].accumulatedNegative?intersections[xpos].accumulatedNegative:yMin;yMin=yMin>intersections[xpos].accumulatedPositive?intersections[xpos].accumulatedPositive:yMin;yMax=yMax<intersections[xpos].accumulatedNegative?intersections[xpos].accumulatedNegative:yMax;yMax=yMax<intersections[xpos].accumulatedPositive?intersections[xpos].accumulatedPositive:yMax}}return{min:yMin,max:yMax}};module.exports=Bargraph},function(module,exports,__webpack_require__){\"use strict\";var DOMutil=__webpack_require__(14);function Line(groupId,options){}Line.calcPath=function(dataset,group){if(dataset!=null){if(dataset.length>0){var d=[];if(group.options.interpolation.enabled==true){d=Line._catmullRom(dataset,group)}else{d=Line._linear(dataset)}return d}}};Line.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var path,fillPath;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");path=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);path.setAttributeNS(null,\"class\",group.className);if(group.style!==undefined){path.setAttributeNS(null,\"style\",group.style)}path.setAttributeNS(null,\"d\",\"M\"+x+\",\"+y+\" L\"+(x+iconWidth)+\",\"+y+\"\");if(group.options.shaded.enabled==true){fillPath=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);if(group.options.shaded.orientation==\"top\"){fillPath.setAttributeNS(null,\"d\",\"M\"+x+\", \"+(y-fillHeight)+\"L\"+x+\",\"+y+\" L\"+(x+iconWidth)+\",\"+y+\" L\"+(x+iconWidth)+\",\"+(y-fillHeight))}else{fillPath.setAttributeNS(null,\"d\",\"M\"+x+\",\"+y+\" \"+\"L\"+x+\",\"+(y+fillHeight)+\" \"+\"L\"+(x+iconWidth)+\",\"+(y+fillHeight)+\"L\"+(x+iconWidth)+\",\"+y)}fillPath.setAttributeNS(null,\"class\",group.className+\" vis-icon-fill\");if(group.options.shaded.style!==undefined&&group.options.shaded.style!==\"\"){fillPath.setAttributeNS(null,\"style\",group.options.shaded.style)}}if(group.options.drawPoints.enabled==true){var groupTemplate={style:group.options.drawPoints.style,styles:group.options.drawPoints.styles,size:group.options.drawPoints.size,className:group.className};DOMutil.drawPoint(x+.5*iconWidth,y,groupTemplate,framework.svgElements,framework.svg)}};Line.drawShading=function(pathArray,group,subPathArray,framework){if(group.options.shaded.enabled==true){var svgHeight=Number(framework.svg.style.height.replace(\"px\",\"\"));var fillPath=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);var type=\"L\";if(group.options.interpolation.enabled==true){type=\"C\"}var dFill;var zero=0;if(group.options.shaded.orientation==\"top\"){zero=0}else if(group.options.shaded.orientation==\"bottom\"){zero=svgHeight}else{zero=Math.min(Math.max(0,group.zeroPosition),svgHeight)}if(group.options.shaded.orientation==\"group\"&&subPathArray!=null&&subPathArray!=undefined){dFill=\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false)+\" L\"+subPathArray[subPathArray.length-1][0]+\",\"+subPathArray[subPathArray.length-1][1]+\" \"+this.serializePath(subPathArray,type,true)+subPathArray[0][0]+\",\"+subPathArray[0][1]+\" Z\"}else{dFill=\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false)+\" V\"+zero+\" H\"+pathArray[0][0]+\" Z\"}fillPath.setAttributeNS(null,\"class\",group.className+\" vis-fill\");if(group.options.shaded.style!==undefined){fillPath.setAttributeNS(null,\"style\",group.options.shaded.style)}fillPath.setAttributeNS(null,\"d\",dFill)}};Line.draw=function(pathArray,group,framework){if(pathArray!=null&&pathArray!=undefined){var path=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);path.setAttributeNS(null,\"class\",group.className);if(group.style!==undefined){path.setAttributeNS(null,\"style\",group.style)}var type=\"L\";if(group.options.interpolation.enabled==true){type=\"C\"}path.setAttributeNS(null,\"d\",\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false))}};Line.serializePath=function(pathArray,type,inverse){if(pathArray.length<2){return\"\"}var d=type;var i;if(inverse){for(i=pathArray.length-2;i>0;i--){d+=pathArray[i][0]+\",\"+pathArray[i][1]+\" \"}}else{for(i=1;i<pathArray.length;i++){d+=pathArray[i][0]+\",\"+pathArray[i][1]+\" \"}}return d};Line._catmullRomUniform=function(data){var p0,p1,p2,p3,bp1,bp2;var d=[];d.push([Math.round(data[0].screen_x),Math.round(data[0].screen_y)]);var normalization=1/6;var length=data.length;for(var i=0;i<length-1;i++){p0=i==0?data[0]:data[i-1];p1=data[i];p2=data[i+1];p3=i+2<length?data[i+2]:p2;bp1={screen_x:(-p0.screen_x+6*p1.screen_x+p2.screen_x)*normalization,screen_y:(-p0.screen_y+6*p1.screen_y+p2.screen_y)*normalization};bp2={screen_x:(p1.screen_x+6*p2.screen_x-p3.screen_x)*normalization,screen_y:(p1.screen_y+6*p2.screen_y-p3.screen_y)*normalization};d.push([bp1.screen_x,bp1.screen_y]);d.push([bp2.screen_x,bp2.screen_y]);d.push([p2.screen_x,p2.screen_y])}return d};Line._catmullRom=function(data,group){var alpha=group.options.interpolation.alpha;if(alpha==0||alpha===undefined){return this._catmullRomUniform(data)}else{var p0,p1,p2,p3,bp1,bp2,d1,d2,d3,A,B,N,M;var d3powA,d2powA,d3pow2A,d2pow2A,d1pow2A,d1powA;var d=[];d.push([Math.round(data[0].screen_x),Math.round(data[0].screen_y)]);var length=data.length;for(var i=0;i<length-1;i++){p0=i==0?data[0]:data[i-1];p1=data[i];p2=data[i+1];p3=i+2<length?data[i+2]:p2;d1=Math.sqrt(Math.pow(p0.screen_x-p1.screen_x,2)+Math.pow(p0.screen_y-p1.screen_y,2));d2=Math.sqrt(Math.pow(p1.screen_x-p2.screen_x,2)+Math.pow(p1.screen_y-p2.screen_y,2));d3=Math.sqrt(Math.pow(p2.screen_x-p3.screen_x,2)+Math.pow(p2.screen_y-p3.screen_y,2));d3powA=Math.pow(d3,alpha);d3pow2A=Math.pow(d3,2*alpha);d2powA=Math.pow(d2,alpha);d2pow2A=Math.pow(d2,2*alpha);d1powA=Math.pow(d1,alpha);d1pow2A=Math.pow(d1,2*alpha);A=2*d1pow2A+3*d1powA*d2powA+d2pow2A;B=2*d3pow2A+3*d3powA*d2powA+d2pow2A;N=3*d1powA*(d1powA+d2powA);if(N>0){N=1/N}M=3*d3powA*(d3powA+d2powA);if(M>0){M=1/M}bp1={screen_x:(-d2pow2A*p0.screen_x+A*p1.screen_x+d1pow2A*p2.screen_x)*N,screen_y:(-d2pow2A*p0.screen_y+A*p1.screen_y+d1pow2A*p2.screen_y)*N};bp2={screen_x:(d3pow2A*p1.screen_x+B*p2.screen_x-d2pow2A*p3.screen_x)*M,screen_y:(d3pow2A*p1.screen_y+B*p2.screen_y-d2pow2A*p3.screen_y)*M};if(bp1.screen_x==0&&bp1.screen_y==0){bp1=p1}if(bp2.screen_x==0&&bp2.screen_y==0){bp2=p2}d.push([bp1.screen_x,bp1.screen_y]);d.push([bp2.screen_x,bp2.screen_y]);d.push([p2.screen_x,p2.screen_y])}return d}};Line._linear=function(data){var d=[];for(var i=0;i<data.length;i++){d.push([data[i].screen_x,data[i].screen_y])}return d};module.exports=Line},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var Component=__webpack_require__(16);function Legend(body,options,side,linegraphOptions){this.body=body;this.defaultOptions={enabled:false,icons:true,iconSize:20,iconSpacing:6,left:{visible:true,position:\"top-left\"},right:{visible:true,position:\"top-right\"}};this.side=side;this.options=util.extend({},this.defaultOptions);this.linegraphOptions=linegraphOptions;this.svgElements={};this.dom={};this.groups={};this.amountOfGroups=0;this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};this.setOptions(options)}Legend.prototype=new Component;Legend.prototype.clear=function(){this.groups={};this.amountOfGroups=0};Legend.prototype.addGroup=function(label,graphOptions){if(graphOptions.options.excludeFromLegend!=true){if(!this.groups.hasOwnProperty(label)){this.groups[label]=graphOptions}this.amountOfGroups+=1}};Legend.prototype.updateGroup=function(label,graphOptions){this.groups[label]=graphOptions};Legend.prototype.removeGroup=function(label){if(this.groups.hasOwnProperty(label)){delete this.groups[label];this.amountOfGroups-=1}};Legend.prototype._create=function(){this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-legend\";this.dom.frame.style.position=\"absolute\";this.dom.frame.style.top=\"10px\";this.dom.frame.style.display=\"block\";this.dom.textArea=document.createElement(\"div\");this.dom.textArea.className=\"vis-legend-text\";this.dom.textArea.style.position=\"relative\";this.dom.textArea.style.top=\"0px\";this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"absolute\";this.svg.style.top=0+\"px\";this.svg.style.width=this.options.iconSize+5+\"px\";this.svg.style.height=\"100%\";this.dom.frame.appendChild(this.svg);this.dom.frame.appendChild(this.dom.textArea)};Legend.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}};Legend.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}};Legend.prototype.setOptions=function(options){var fields=[\"enabled\",\"orientation\",\"icons\",\"left\",\"right\"];util.selectiveDeepExtend(fields,this.options,options)};Legend.prototype.redraw=function(){var activeGroups=0;var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){activeGroups++}}if(this.options[this.side].visible==false||this.amountOfGroups==0||this.options.enabled==false||activeGroups==0){this.hide()}else{this.show();if(this.options[this.side].position==\"top-left\"||this.options[this.side].position==\"bottom-left\"){this.dom.frame.style.left=\"4px\";this.dom.frame.style.textAlign=\"left\";this.dom.textArea.style.textAlign=\"left\";this.dom.textArea.style.left=this.options.iconSize+15+\"px\";this.dom.textArea.style.right=\"\";this.svg.style.left=0+\"px\";this.svg.style.right=\"\"}else{this.dom.frame.style.right=\"4px\";this.dom.frame.style.textAlign=\"right\";this.dom.textArea.style.textAlign=\"right\";this.dom.textArea.style.right=this.options.iconSize+15+\"px\";this.dom.textArea.style.left=\"\";this.svg.style.right=0+\"px\";this.svg.style.left=\"\"}if(this.options[this.side].position==\"top-left\"||this.options[this.side].position==\"top-right\"){this.dom.frame.style.top=4-Number(this.body.dom.center.style.top.replace(\"px\",\"\"))+\"px\";this.dom.frame.style.bottom=\"\"}else{var scrollableHeight=this.body.domProps.center.height-this.body.domProps.centerContainer.height;this.dom.frame.style.bottom=4+scrollableHeight+Number(this.body.dom.center.style.top.replace(\"px\",\"\"))+\"px\";this.dom.frame.style.top=\"\"}if(this.options.icons==false){this.dom.frame.style.width=this.dom.textArea.offsetWidth+10+\"px\";this.dom.textArea.style.right=\"\";this.dom.textArea.style.left=\"\";this.svg.style.width=\"0px\"}else{this.dom.frame.style.width=this.options.iconSize+15+this.dom.textArea.offsetWidth+10+\"px\";this.drawLegendIcons()}var content=\"\";for(i=0;i<groupArray.length;i++){groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){content+=this.groups[groupId].content+\"<br />\"}}this.dom.textArea.innerHTML=content;this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+\"px\"}};Legend.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});DOMutil.resetElements(this.svgElements);var padding=window.getComputedStyle(this.dom.frame).paddingTop;var iconOffset=Number(padding.replace(\"px\",\"\"));var x=iconOffset;var iconWidth=this.options.iconSize;var iconHeight=.75*this.options.iconSize;var y=iconOffset+.5*iconHeight+3;this.svg.style.width=iconWidth+5+iconOffset+\"px\";for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){this.groups[groupId].getLegend(iconWidth,iconHeight,this.framework,x,y);y+=iconHeight+this.options.iconSpacing}}}};module.exports=Legend},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var date=\"date\";var object=\"object\";var dom=\"dom\";var moment=\"moment\";var any=\"any\";var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,function:\"function\"},container:{dom:dom},__type__:{object:object,boolean:bool,function:\"function\"}},yAxisOrientation:{string:[\"left\",\"right\"]},defaultGroup:{string:string},sort:{boolean:bool},sampling:{boolean:bool},stack:{boolean:bool},graphHeight:{string:string,number:number},shaded:{enabled:{boolean:bool},orientation:{string:[\"bottom\",\"top\",\"zero\",\"group\"]},groupId:{object:object},__type__:{boolean:bool,object:object}},style:{string:[\"line\",\"bar\",\"points\"]},barChart:{width:{number:number},minWidth:{number:number},sideBySide:{boolean:bool},align:{string:[\"left\",\"center\",\"right\"]},__type__:{object:object}},interpolation:{enabled:{boolean:bool},parametrization:{string:[\"centripetal\",\"chordal\",\"uniform\"]},alpha:{number:number},__type__:{object:object,boolean:bool}},drawPoints:{enabled:{boolean:bool},onRender:{function:\"function\"},size:{number:number},style:{string:[\"square\",\"circle\"]},__type__:{object:object,boolean:bool,function:\"function\"}},dataAxis:{showMinorLabels:{boolean:bool},showMajorLabels:{boolean:bool},icons:{boolean:bool},width:{string:string,number:number},visible:{boolean:bool},alignZeros:{boolean:bool},left:{range:{min:{\nnumber:number,undefined:\"undefined\"},max:{number:number,undefined:\"undefined\"},__type__:{object:object}},format:{function:\"function\"},title:{text:{string:string,number:number,undefined:\"undefined\"},style:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},right:{range:{min:{number:number,undefined:\"undefined\"},max:{number:number,undefined:\"undefined\"},__type__:{object:object}},format:{function:\"function\"},title:{text:{string:string,number:number,undefined:\"undefined\"},style:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},__type__:{object:object}},legend:{enabled:{boolean:bool},icons:{boolean:bool},left:{visible:{boolean:bool},position:{string:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},__type__:{object:object}},right:{visible:{boolean:bool},position:{string:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},__type__:{object:object}},__type__:{object:object,boolean:bool}},groups:{visibility:{any:any},__type__:{object:object}},autoResize:{boolean:bool},throttleRedraw:{number:number},clickToUse:{boolean:bool},end:{number:number,date:date,string:string,moment:moment},format:{minorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object}},majorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},moment:{function:\"function\"},height:{string:string,number:number},hiddenDates:{start:{date:date,number:number,string:string,moment:moment},end:{date:date,number:number,string:string,moment:moment},repeat:{string:string},__type__:{object:object,array:array}},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},max:{date:date,number:number,string:string,moment:moment},maxHeight:{number:number,string:string},maxMinorChars:{number:number},min:{date:date,number:number,string:string,moment:moment},minHeight:{number:number,string:string},moveable:{boolean:bool},multiselect:{boolean:bool},orientation:{string:string},showCurrentTime:{boolean:bool},showMajorLabels:{boolean:bool},showMinorLabels:{boolean:bool},start:{date:date,number:number,string:string,moment:moment},timeAxis:{scale:{string:string,undefined:\"undefined\"},step:{number:number,undefined:\"undefined\"},__type__:{object:object}},width:{string:string,number:number},zoomable:{boolean:bool},zoomKey:{string:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"]},zoomMax:{number:number},zoomMin:{number:number},zIndex:{number:number},__type__:{object:object}};var configureOptions={global:{sort:true,sampling:true,stack:false,shaded:{enabled:false,orientation:[\"zero\",\"top\",\"bottom\",\"group\"]},style:[\"line\",\"bar\",\"points\"],barChart:{width:[50,5,100,5],minWidth:[50,5,100,5],sideBySide:false,align:[\"left\",\"center\",\"right\"]},interpolation:{enabled:true,parametrization:[\"centripetal\",\"chordal\",\"uniform\"]},drawPoints:{enabled:true,size:[6,2,30,1],style:[\"square\",\"circle\"]},dataAxis:{showMinorLabels:true,showMajorLabels:true,icons:false,width:[40,0,200,1],visible:true,alignZeros:true,left:{title:{text:\"\",style:\"\"}},right:{title:{text:\"\",style:\"\"}}},legend:{enabled:false,icons:true,left:{visible:true,position:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},right:{visible:true,position:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]}},autoResize:true,clickToUse:false,end:\"\",format:{minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}},height:\"\",locale:\"\",max:\"\",maxHeight:\"\",maxMinorChars:[7,0,20,1],min:\"\",minHeight:\"\",moveable:true,orientation:[\"both\",\"bottom\",\"top\"],showCurrentTime:false,showMajorLabels:true,showMinorLabels:true,start:\"\",width:\"100%\",zoomable:true,zoomKey:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1],zIndex:0}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function parseDOT(data){dot=data;return parseGraph()}var NODE_ATTR_MAPPING={fontsize:\"font.size\",fontcolor:\"font.color\",labelfontcolor:\"font.color\",fontname:\"font.face\",color:[\"color.border\",\"color.background\"],fillcolor:\"color.background\",tooltip:\"title\",labeltooltip:\"title\"};var EDGE_ATTR_MAPPING=(0,_create2[\"default\"])(NODE_ATTR_MAPPING);EDGE_ATTR_MAPPING.color=\"color.color\";EDGE_ATTR_MAPPING.style=\"dashes\";var TOKENTYPE={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3};var DELIMITERS={\"{\":true,\"}\":true,\"[\":true,\"]\":true,\";\":true,\"=\":true,\",\":true,\"->\":true,\"--\":true};var dot=\"\";var index=0;var c=\"\";var token=\"\";var tokenType=TOKENTYPE.NULL;function first(){index=0;c=dot.charAt(0)}function next(){index++;c=dot.charAt(index)}function nextPreview(){return dot.charAt(index+1)}var regexAlphaNumeric=/[a-zA-Z_0-9.:#]/;function isAlphaNumeric(c){return regexAlphaNumeric.test(c)}function merge(a,b){if(!a){a={}}if(b){for(var name in b){if(b.hasOwnProperty(name)){a[name]=b[name]}}}return a}function setValue(obj,path,value){var keys=path.split(\".\");var o=obj;while(keys.length){var key=keys.shift();if(keys.length){if(!o[key]){o[key]={}}o=o[key]}else{o[key]=value}}}function addNode(graph,node){var i,len;var current=null;var graphs=[graph];var root=graph;while(root.parent){graphs.push(root.parent);root=root.parent}if(root.nodes){for(i=0,len=root.nodes.length;i<len;i++){if(node.id===root.nodes[i].id){current=root.nodes[i];break}}}if(!current){current={id:node.id};if(graph.node){current.attr=merge(current.attr,graph.node)}}for(i=graphs.length-1;i>=0;i--){var g=graphs[i];if(!g.nodes){g.nodes=[]}if(g.nodes.indexOf(current)===-1){g.nodes.push(current)}}if(node.attr){current.attr=merge(current.attr,node.attr)}}function addEdge(graph,edge){if(!graph.edges){graph.edges=[]}graph.edges.push(edge);if(graph.edge){var attr=merge({},graph.edge);edge.attr=merge(attr,edge.attr)}}function createEdge(graph,from,to,type,attr){var edge={from:from,to:to,type:type};if(graph.edge){edge.attr=merge({},graph.edge)}edge.attr=merge(edge.attr||{},attr);return edge}function getToken(){tokenType=TOKENTYPE.NULL;token=\"\";while(c===\" \"||c===\"\\t\"||c===\"\\n\"||c===\"\\r\"){next()}do{var isComment=false;if(c===\"#\"){var i=index-1;while(dot.charAt(i)===\" \"||dot.charAt(i)===\"\\t\"){i--}if(dot.charAt(i)===\"\\n\"||dot.charAt(i)===\"\"){while(c!=\"\"&&c!=\"\\n\"){next()}isComment=true}}if(c===\"/\"&&nextPreview()===\"/\"){while(c!=\"\"&&c!=\"\\n\"){next()}isComment=true}if(c===\"/\"&&nextPreview()===\"*\"){while(c!=\"\"){if(c===\"*\"&&nextPreview()===\"/\"){next();next();break}else{next()}}isComment=true}while(c===\" \"||c===\"\\t\"||c===\"\\n\"||c===\"\\r\"){next()}}while(isComment);if(c===\"\"){tokenType=TOKENTYPE.DELIMITER;return}var c2=c+nextPreview();if(DELIMITERS[c2]){tokenType=TOKENTYPE.DELIMITER;token=c2;next();next();return}if(DELIMITERS[c]){tokenType=TOKENTYPE.DELIMITER;token=c;next();return}if(isAlphaNumeric(c)||c===\"-\"){token+=c;next();while(isAlphaNumeric(c)){token+=c;next()}if(token===\"false\"){token=false}else if(token===\"true\"){token=true}else if(!isNaN(Number(token))){token=Number(token)}tokenType=TOKENTYPE.IDENTIFIER;return}if(c==='\"'){next();while(c!=\"\"&&(c!='\"'||c==='\"'&&nextPreview()==='\"')){if(c==='\"'){token+=c;next()}else if(c===\"\\\\\"&&nextPreview()===\"n\"){token+=\"\\n\";next()}else{token+=c}next()}if(c!='\"'){throw newSyntaxError('End of string \" expected')}next();tokenType=TOKENTYPE.IDENTIFIER;return}tokenType=TOKENTYPE.UNKNOWN;while(c!=\"\"){token+=c;next()}throw new SyntaxError('Syntax error in part \"'+chop(token,30)+'\"')}function parseGraph(){var graph={};first();getToken();if(token===\"strict\"){graph.strict=true;getToken()}if(token===\"graph\"||token===\"digraph\"){graph.type=token;getToken()}if(tokenType===TOKENTYPE.IDENTIFIER){graph.id=token;getToken()}if(token!=\"{\"){throw newSyntaxError(\"Angle bracket { expected\")}getToken();parseStatements(graph);if(token!=\"}\"){throw newSyntaxError(\"Angle bracket } expected\")}getToken();if(token!==\"\"){throw newSyntaxError(\"End of file expected\")}getToken();delete graph.node;delete graph.edge;delete graph.graph;return graph}function parseStatements(graph){while(token!==\"\"&&token!=\"}\"){parseStatement(graph);if(token===\";\"){getToken()}}}function parseStatement(graph){var subgraph=parseSubgraph(graph);if(subgraph){parseEdge(graph,subgraph);return}var attr=parseAttributeStatement(graph);if(attr){return}if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier expected\")}var id=token;getToken();if(token===\"=\"){getToken();if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier expected\")}graph[id]=token;getToken()}else{parseNodeStatement(graph,id)}}function parseSubgraph(graph){var subgraph=null;if(token===\"subgraph\"){subgraph={};subgraph.type=\"subgraph\";getToken();if(tokenType===TOKENTYPE.IDENTIFIER){subgraph.id=token;getToken()}}if(token===\"{\"){getToken();if(!subgraph){subgraph={}}subgraph.parent=graph;subgraph.node=graph.node;subgraph.edge=graph.edge;subgraph.graph=graph.graph;parseStatements(subgraph);if(token!=\"}\"){throw newSyntaxError(\"Angle bracket } expected\")}getToken();delete subgraph.node;delete subgraph.edge;delete subgraph.graph;delete subgraph.parent;if(!graph.subgraphs){graph.subgraphs=[]}graph.subgraphs.push(subgraph)}return subgraph}function parseAttributeStatement(graph){if(token===\"node\"){getToken();graph.node=parseAttributeList();return\"node\"}else if(token===\"edge\"){getToken();graph.edge=parseAttributeList();return\"edge\"}else if(token===\"graph\"){getToken();graph.graph=parseAttributeList();return\"graph\"}return null}function parseNodeStatement(graph,id){var node={id:id};var attr=parseAttributeList();if(attr){node.attr=attr}addNode(graph,node);parseEdge(graph,id)}function parseEdge(graph,from){while(token===\"->\"||token===\"--\"){var to;var type=token;getToken();var subgraph=parseSubgraph(graph);if(subgraph){to=subgraph}else{if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier or subgraph expected\")}to=token;addNode(graph,{id:to});getToken()}var attr=parseAttributeList();var edge=createEdge(graph,from,to,type,attr);addEdge(graph,edge);from=to}}function parseAttributeList(){var attr=null;var edgeStyles={dashed:true,solid:false,dotted:[1,5]};while(token===\"[\"){getToken();attr={};while(token!==\"\"&&token!=\"]\"){if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Attribute name expected\")}var name=token;getToken();if(token!=\"=\"){throw newSyntaxError(\"Equal sign = expected\")}getToken();if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Attribute value expected\")}var value=token;if(name===\"style\"){value=edgeStyles[value]}setValue(attr,name,value);getToken();if(token==\",\"){getToken()}}if(token!=\"]\"){throw newSyntaxError(\"Bracket ] expected\")}getToken()}return attr}function newSyntaxError(message){return new SyntaxError(message+', got \"'+chop(token,30)+'\" (char '+index+\")\")}function chop(text,maxLength){return text.length<=maxLength?text:text.substr(0,27)+\"...\"}function forEach2(array1,array2,fn){if(Array.isArray(array1)){array1.forEach(function(elem1){if(Array.isArray(array2)){array2.forEach(function(elem2){fn(elem1,elem2)})}else{fn(elem1,array2)}})}else{if(Array.isArray(array2)){array2.forEach(function(elem2){fn(array1,elem2)})}else{fn(array1,array2)}}}function setProp(object,path,value){var names=path.split(\".\");var prop=names.pop();var obj=object;for(var i=0;i<names.length;i++){var name=names[i];if(!(name in obj)){obj[name]={}}obj=obj[name]}obj[prop]=value;return object}function convertAttr(attr,mapping){var converted={};for(var prop in attr){if(attr.hasOwnProperty(prop)){var visProp=mapping[prop];if(Array.isArray(visProp)){visProp.forEach(function(visPropI){setProp(converted,visPropI,attr[prop])})}else if(typeof visProp===\"string\"){setProp(converted,visProp,attr[prop])}else{setProp(converted,prop,attr[prop])}}}return converted}function DOTToGraph(data){var dotData=parseDOT(data);var graphData={nodes:[],edges:[],options:{}};if(dotData.nodes){dotData.nodes.forEach(function(dotNode){var graphNode={id:dotNode.id,label:String(dotNode.label||dotNode.id)};merge(graphNode,convertAttr(dotNode.attr,NODE_ATTR_MAPPING));if(graphNode.image){graphNode.shape=\"image\"}graphData.nodes.push(graphNode)})}if(dotData.edges){var convertEdge=function convertEdge(dotEdge){var graphEdge={from:dotEdge.from,to:dotEdge.to};merge(graphEdge,convertAttr(dotEdge.attr,EDGE_ATTR_MAPPING));graphEdge.arrows=dotEdge.type===\"->\"?\"to\":undefined;return graphEdge};dotData.edges.forEach(function(dotEdge){var from,to;if(dotEdge.from instanceof Object){from=dotEdge.from.nodes}else{from={id:dotEdge.from}}if(dotEdge.to instanceof Object){to=dotEdge.to.nodes}else{to={id:dotEdge.to}}if(dotEdge.from instanceof Object&&dotEdge.from.edges){dotEdge.from.edges.forEach(function(subEdge){var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)})}forEach2(from,to,function(from,to){var subEdge=createEdge(graphData,from.id,to.id,dotEdge.type,dotEdge.attr);var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)});if(dotEdge.to instanceof Object&&dotEdge.to.edges){dotEdge.to.edges.forEach(function(subEdge){var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)})}})}if(dotData.attr){graphData.options=dotData.attr}return graphData}exports.parseDOT=parseDOT;exports.DOTToGraph=DOTToGraph},function(module,exports,__webpack_require__){\"use strict\";function parseGephi(gephiJSON,optionsObj){var edges=[];var nodes=[];var options={edges:{inheritColor:false},nodes:{fixed:false,parseColor:false}};if(optionsObj!==undefined){if(optionsObj.fixed!==undefined){options.nodes.fixed=optionsObj.fixed}if(optionsObj.parseColor!==undefined){options.nodes.parseColor=optionsObj.parseColor}if(optionsObj.inheritColor!==undefined){options.edges.inheritColor=optionsObj.inheritColor}}var gEdges=gephiJSON.edges;var gNodes=gephiJSON.nodes;for(var i=0;i<gEdges.length;i++){var edge={};var gEdge=gEdges[i];edge[\"id\"]=gEdge.id;edge[\"from\"]=gEdge.source;edge[\"to\"]=gEdge.target;edge[\"attributes\"]=gEdge.attributes;edge[\"label\"]=gEdge.label;edge[\"title\"]=gEdge.attributes!==undefined?gEdge.attributes.title:undefined;if(gEdge[\"type\"]===\"Directed\"){edge[\"arrows\"]=\"to\"}if(gEdge.color&&options.inheritColor===false){edge[\"color\"]=gEdge.color}edges.push(edge)}for(var j=0;j<gNodes.length;j++){var node={};var gNode=gNodes[j];node[\"id\"]=gNode.id;node[\"attributes\"]=gNode.attributes;node[\"x\"]=gNode.x;node[\"y\"]=gNode.y;node[\"label\"]=gNode.label;node[\"title\"]=gNode.attributes!==undefined?gNode.attributes.title:gNode.title;if(options.nodes.parseColor===true){node[\"color\"]=gNode.color}else{node[\"color\"]=gNode.color!==undefined?{background:gNode.color,border:gNode.color,highlight:{background:gNode.color,border:gNode.color},hover:{background:gNode.color,border:gNode.color}}:undefined}node[\"size\"]=gNode.size;node[\"fixed\"]=options.nodes.fixed&&gNode.x!==undefined&&gNode.y!==undefined;nodes.push(node)}return{nodes:nodes,edges:edges}}exports.parseGephi=parseGephi},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _CachedImage=__webpack_require__(185);var _CachedImage2=_interopRequireDefault(_CachedImage);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Images=function(){function Images(callback){(0,_classCallCheck3[\"default\"])(this,Images);this.images={};this.imageBroken={};this.callback=callback}(0,_createClass3[\"default\"])(Images,[{key:\"_tryloadBrokenUrl\",value:function _tryloadBrokenUrl(url,brokenUrl,imageToLoadBrokenUrlOn){if(url===undefined||imageToLoadBrokenUrlOn===undefined)return;if(brokenUrl===undefined){console.warn(\"No broken url image defined\");return}imageToLoadBrokenUrlOn.onerror=function(){console.error(\"Could not load brokenImage:\",brokenUrl)};imageToLoadBrokenUrlOn.image.src=brokenUrl}},{key:\"_redrawWithImage\",value:function _redrawWithImage(imageToRedrawWith){if(this.callback){this.callback(imageToRedrawWith)}}},{key:\"load\",value:function load(url,brokenUrl){var _this=this;var cachedImage=this.images[url];if(cachedImage)return cachedImage;var img=new _CachedImage2[\"default\"];this.images[url]=img;img.image.onload=function(){_this._fixImageCoordinates(img.image);img.init();_this._redrawWithImage(img)};img.image.onerror=function(){console.error(\"Could not load image:\",url);_this._tryloadBrokenUrl(url,brokenUrl,img)};img.image.src=url;return img}},{key:\"_fixImageCoordinates\",value:function _fixImageCoordinates(imageToCache){if(imageToCache.width===0){document.body.appendChild(imageToCache);imageToCache.width=imageToCache.offsetWidth;imageToCache.height=imageToCache.offsetHeight;document.body.removeChild(imageToCache)}}}]);return Images}();exports[\"default\"]=Images},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ComponentUtil=__webpack_require__(48)[\"default\"];var LabelSplitter=__webpack_require__(191)[\"default\"];var multiFontStyle=[\"bold\",\"ital\",\"boldital\",\"mono\"];var Label=function(){function Label(body,options){var edgelabel=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;(0,_classCallCheck3[\"default\"])(this,Label);this.body=body;this.pointToSelf=false;this.baseSize=undefined;this.fontOptions={};this.setOptions(options);this.size={top:0,left:0,width:0,height:0,yLine:0};this.isEdgeLabel=edgelabel}(0,_createClass3[\"default\"])(Label,[{key:\"setOptions\",value:function setOptions(options){this.elementOptions=options;this.initFontOptions(options.font);if(ComponentUtil.isValidLabel(options.label)){this.labelDirty=true}else{options.label=\"\"}if(options.font!==undefined&&options.font!==null){if(typeof options.font===\"string\"){this.baseSize=this.fontOptions.size}else if((0,_typeof3[\"default\"])(options.font)===\"object\"){var size=options.font.size;if(size!==undefined){this.baseSize=size}}}}},{key:\"initFontOptions\",value:function initFontOptions(newFontOptions){var _this=this;util.forEach(multiFontStyle,function(style){_this.fontOptions[style]={}});if(Label.parseFontString(this.fontOptions,newFontOptions)){this.fontOptions.vadjust=0;return}util.forEach(newFontOptions,function(prop,n){if(prop!==undefined&&prop!==null&&(typeof prop===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(prop))!==\"object\"){_this.fontOptions[n]=prop}})}},{key:\"constrain\",value:function constrain(pile){var fontOptions={constrainWidth:false,maxWdt:-1,minWdt:-1,constrainHeight:false,minHgt:-1,valign:\"middle\"};var widthConstraint=util.topMost(pile,\"widthConstraint\");if(typeof widthConstraint===\"number\"){fontOptions.maxWdt=Number(widthConstraint);fontOptions.minWdt=Number(widthConstraint)}else if((typeof widthConstraint===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(widthConstraint))===\"object\"){var widthConstraintMaximum=util.topMost(pile,[\"widthConstraint\",\"maximum\"]);if(typeof widthConstraintMaximum===\"number\"){fontOptions.maxWdt=Number(widthConstraintMaximum)}var widthConstraintMinimum=util.topMost(pile,[\"widthConstraint\",\"minimum\"]);if(typeof widthConstraintMinimum===\"number\"){fontOptions.minWdt=Number(widthConstraintMinimum)}}var heightConstraint=util.topMost(pile,\"heightConstraint\");if(typeof heightConstraint===\"number\"){fontOptions.minHgt=Number(heightConstraint)}else if((typeof heightConstraint===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(heightConstraint))===\"object\"){var heightConstraintMinimum=util.topMost(pile,[\"heightConstraint\",\"minimum\"]);if(typeof heightConstraintMinimum===\"number\"){fontOptions.minHgt=Number(heightConstraintMinimum)}var heightConstraintValign=util.topMost(pile,[\"heightConstraint\",\"valign\"]);if(typeof heightConstraintValign===\"string\"){if(heightConstraintValign===\"top\"||heightConstraintValign===\"bottom\"){fontOptions.valign=heightConstraintValign}}}return fontOptions}},{key:\"update\",value:function update(options,pile){this.setOptions(options,true);this.propagateFonts(pile);util.deepExtend(this.fontOptions,this.constrain(pile));this.fontOptions.chooser=ComponentUtil.choosify(\"label\",pile)}},{key:\"adjustSizes\",value:function adjustSizes(margins){var widthBias=margins?margins.right+margins.left:0;if(this.fontOptions.constrainWidth){this.fontOptions.maxWdt-=widthBias;this.fontOptions.minWdt-=widthBias}var heightBias=margins?margins.top+margins.bottom:0;if(this.fontOptions.constrainHeight){this.fontOptions.minHgt-=heightBias}}},{key:\"addFontOptionsToPile\",value:function addFontOptionsToPile(dstPile,srcPile){for(var i=0;i<srcPile.length;++i){this.addFontToPile(dstPile,srcPile[i])}}},{key:\"addFontToPile\",value:function addFontToPile(pile,options){if(options===undefined)return;if(options.font===undefined||options.font===null)return;var item=options.font;pile.push(item)}},{key:\"getBasicOptions\",value:function getBasicOptions(pile){var ret={};for(var n=0;n<pile.length;++n){var fontOptions=pile[n];var tmpShorthand={};if(Label.parseFontString(tmpShorthand,fontOptions)){fontOptions=tmpShorthand}util.forEach(fontOptions,function(opt,name){if(opt===undefined)return;if(ret.hasOwnProperty(name))return;if(multiFontStyle.indexOf(name)!==-1){ret[name]={}}else{ret[name]=opt}})}return ret}},{key:\"getFontOption\",value:function getFontOption(pile,multiName,option){var multiFont=void 0;for(var n=0;n<pile.length;++n){var fontOptions=pile[n];if(fontOptions.hasOwnProperty(multiName)){multiFont=fontOptions[multiName];if(multiFont===undefined||multiFont===null)continue;var tmpShorthand={};if(Label.parseFontString(tmpShorthand,multiFont)){multiFont=tmpShorthand}if(multiFont.hasOwnProperty(option)){return multiFont[option]}}}if(this.fontOptions.hasOwnProperty(option)){return this.fontOptions[option]}throw new Error(\"Did not find value for multi-font for property: '\"+option+\"'\")}},{key:\"getFontOptions\",value:function getFontOptions(pile,multiName){var result={};var optionNames=[\"color\",\"size\",\"face\",\"mod\",\"vadjust\"];for(var i=0;i<optionNames.length;++i){var mod=optionNames[i];result[mod]=this.getFontOption(pile,multiName,mod)}return result}},{key:\"propagateFonts\",value:function propagateFonts(pile){var _this2=this;var fontPile=[];this.addFontOptionsToPile(fontPile,pile);this.fontOptions=this.getBasicOptions(fontPile);var _loop=function _loop(i){var mod=multiFontStyle[i];var modOptions=_this2.fontOptions[mod];var tmpMultiFontOptions=_this2.getFontOptions(fontPile,mod);util.forEach(tmpMultiFontOptions,function(option,n){modOptions[n]=option});modOptions.size=Number(modOptions.size);modOptions.vadjust=Number(modOptions.vadjust)};for(var i=0;i<multiFontStyle.length;++i){_loop(i)}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover){var baseline=arguments.length>5&&arguments[5]!==undefined?arguments[5]:\"middle\";if(this.elementOptions.label===undefined)return;var viewFontSize=this.fontOptions.size*this.body.view.scale;if(this.elementOptions.label&&viewFontSize<this.elementOptions.scaling.label.drawThreshold-1)return;if(viewFontSize>=this.elementOptions.scaling.label.maxVisible){viewFontSize=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale}this.calculateLabelSize(ctx,selected,hover,x,y,baseline);this._drawBackground(ctx);this._drawText(ctx,x,this.size.yLine,baseline,viewFontSize)}},{key:\"_drawBackground\",value:function _drawBackground(ctx){if(this.fontOptions.background!==undefined&&this.fontOptions.background!==\"none\"){ctx.fillStyle=this.fontOptions.background;var size=this.getSize();ctx.fillRect(size.left,size.top,size.width,size.height)}}},{key:\"_drawText\",value:function _drawText(ctx,x,y){var baseline=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\"middle\";var viewFontSize=arguments[4];var _setAlignment2=this._setAlignment(ctx,x,y,baseline);var _setAlignment3=(0,_slicedToArray3[\"default\"])(_setAlignment2,2);x=_setAlignment3[0];y=_setAlignment3[1];ctx.textAlign=\"left\";x=x-this.size.width/2;if(this.fontOptions.valign&&this.size.height>this.size.labelHeight){if(this.fontOptions.valign===\"top\"){y-=(this.size.height-this.size.labelHeight)/2}if(this.fontOptions.valign===\"bottom\"){y+=(this.size.height-this.size.labelHeight)/2}}for(var i=0;i<this.lineCount;i++){var line=this.lines[i];if(line&&line.blocks){var width=0;if(this.isEdgeLabel||this.fontOptions.align===\"center\"){width+=(this.size.width-line.width)/2}else if(this.fontOptions.align===\"right\"){width+=this.size.width-line.width}for(var j=0;j<line.blocks.length;j++){var block=line.blocks[j];ctx.font=block.font;var _getColor2=this._getColor(block.color,viewFontSize,block.strokeColor),_getColor3=(0,_slicedToArray3[\"default\"])(_getColor2,2),fontColor=_getColor3[0],strokeColor=_getColor3[1];if(block.strokeWidth>0){ctx.lineWidth=block.strokeWidth;ctx.strokeStyle=strokeColor;ctx.lineJoin=\"round\"}ctx.fillStyle=fontColor;if(block.strokeWidth>0){ctx.strokeText(block.text,x+width,y+block.vadjust)}ctx.fillText(block.text,x+width,y+block.vadjust);width+=block.width}y+=line.height}}}},{key:\"_setAlignment\",value:function _setAlignment(ctx,x,y,baseline){if(this.isEdgeLabel&&this.fontOptions.align!==\"horizontal\"&&this.pointToSelf===false){x=0;y=0;var lineMargin=2;if(this.fontOptions.align===\"top\"){ctx.textBaseline=\"alphabetic\";y-=2*lineMargin}else if(this.fontOptions.align===\"bottom\"){ctx.textBaseline=\"hanging\";y+=2*lineMargin}else{ctx.textBaseline=\"middle\"}}else{ctx.textBaseline=baseline}return[x,y]}},{key:\"_getColor\",value:function _getColor(color,viewFontSize,initialStrokeColor){var fontColor=color||\"#000000\";var strokeColor=initialStrokeColor||\"#ffffff\";if(viewFontSize<=this.elementOptions.scaling.label.drawThreshold){var opacity=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-viewFontSize)));fontColor=util.overrideOpacity(fontColor,opacity);strokeColor=util.overrideOpacity(strokeColor,opacity)}return[fontColor,strokeColor]}},{key:\"getTextSize\",value:function getTextSize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;this._processLabel(ctx,selected,hover);return{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}},{key:\"getSize\",value:function getSize(){var lineMargin=2;var x=this.size.left;var y=this.size.top-.5*lineMargin;if(this.isEdgeLabel){var x2=-this.size.width*.5;switch(this.fontOptions.align){case\"middle\":x=x2;y=-this.size.height*.5;break;case\"top\":x=x2;y=-(this.size.height+lineMargin);break;case\"bottom\":x=x2;y=lineMargin;break}}var ret={left:x,top:y,width:this.size.width,height:this.size.height};return ret}},{key:\"calculateLabelSize\",value:function calculateLabelSize(ctx,selected,hover){var x=arguments.length>3&&arguments[3]!==undefined?arguments[3]:0;var y=arguments.length>4&&arguments[4]!==undefined?arguments[4]:0;var baseline=arguments.length>5&&arguments[5]!==undefined?arguments[5]:\"middle\";this._processLabel(ctx,selected,hover);this.size.left=x-this.size.width*.5;this.size.top=y-this.size.height*.5;this.size.yLine=y+(1-this.lineCount)*.5*this.fontOptions.size;if(baseline===\"hanging\"){this.size.top+=.5*this.fontOptions.size;this.size.top+=4;this.size.yLine+=4}}},{key:\"getFormattingValues\",value:function getFormattingValues(ctx,selected,hover,mod){var getValue=function getValue(fontOptions,mod,option){if(mod===\"normal\"){if(option===\"mod\")return\"\";return fontOptions[option]}if(fontOptions[mod][option]!==undefined){return fontOptions[mod][option]}else{return fontOptions[option]}};var values={color:getValue(this.fontOptions,mod,\"color\"),size:getValue(this.fontOptions,mod,\"size\"),face:getValue(this.fontOptions,mod,\"face\"),mod:getValue(this.fontOptions,mod,\"mod\"),vadjust:getValue(this.fontOptions,mod,\"vadjust\"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};if(selected||hover){if(mod===\"normal\"&&this.fontOptions.chooser===true&&this.elementOptions.labelHighlightBold){values.mod=\"bold\"}else{if(typeof this.fontOptions.chooser===\"function\"){this.fontOptions.chooser(values,this.elementOptions.id,selected,hover)}}}var fontString=\"\";if(values.mod!==undefined&&values.mod!==\"\"){fontString+=values.mod+\" \"}fontString+=values.size+\"px \"+values.face;ctx.font=fontString.replace(/\"/g,\"\");values.font=ctx.font;values.height=values.size;return values}},{key:\"differentState\",value:function differentState(selected,hover){return selected!==this.selectedState||hover!==this.hoverState}},{key:\"_processLabelText\",value:function _processLabelText(ctx,selected,hover,inText){var splitter=new LabelSplitter(ctx,this,selected,hover);return splitter.process(inText)}},{key:\"_processLabel\",value:function _processLabel(ctx,selected,hover){if(this.labelDirty===false&&!this.differentState(selected,hover))return;var state=this._processLabelText(ctx,selected,hover,this.elementOptions.label);if(this.fontOptions.minWdt>0&&state.width<this.fontOptions.minWdt){state.width=this.fontOptions.minWdt}this.size.labelHeight=state.height;if(this.fontOptions.minHgt>0&&state.height<this.fontOptions.minHgt){state.height=this.fontOptions.minHgt}this.lines=state.lines;this.lineCount=state.lines.length;this.size.width=state.width;this.size.height=state.height;this.selectedState=selected;this.hoverState=hover;this.labelDirty=false}},{key:\"visible\",value:function visible(){if(this.size.width===0||this.size.height===0||this.elementOptions.label===undefined){return false}var viewFontSize=this.fontOptions.size*this.body.view.scale;if(viewFontSize<this.elementOptions.scaling.label.drawThreshold-1){return false}return true}}],[{key:\"parseFontString\",value:function parseFontString(outOptions,inOptions){if(!inOptions||typeof inOptions!==\"string\")return false;var newOptionsArray=inOptions.split(\" \");outOptions.size=newOptionsArray[0].replace(\"px\",\"\");outOptions.face=newOptionsArray[1];outOptions.color=newOptionsArray[2];return true}}]);return Label}();exports[\"default\"]=Label},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var EndPoints=__webpack_require__(119)[\"default\"];var EdgeBase=function(){function EdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,EdgeBase);this.body=body;this.labelModule=labelModule\n;this.options={};this.setOptions(options);this.colorDirty=true;this.color={};this.selectionWidth=2;this.hoverWidth=1.5;this.fromPoint=this.from;this.toPoint=this.to}(0,_createClass3[\"default\"])(EdgeBase,[{key:\"connect\",value:function connect(){this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to]}},{key:\"cleanup\",value:function cleanup(){return false}},{key:\"setOptions\",value:function setOptions(options){this.options=options;this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];this.id=this.options.id}},{key:\"drawLine\",value:function drawLine(ctx,values,selected,hover,viaNode){ctx.strokeStyle=this.getColor(ctx,values,selected,hover);ctx.lineWidth=values.width;if(values.dashes!==false){this._drawDashedLine(ctx,values,viaNode)}else{this._drawLine(ctx,values,viaNode)}}},{key:\"_drawLine\",value:function _drawLine(ctx,values,viaNode,fromPoint,toPoint){if(this.from!=this.to){this._line(ctx,values,viaNode,fromPoint,toPoint)}else{var _getCircleData2=this._getCircleData(ctx),_getCircleData3=(0,_slicedToArray3[\"default\"])(_getCircleData2,3),x=_getCircleData3[0],y=_getCircleData3[1],radius=_getCircleData3[2];this._circle(ctx,values,x,y,radius)}}},{key:\"_drawDashedLine\",value:function _drawDashedLine(ctx,values,viaNode,fromPoint,toPoint){ctx.lineCap=\"round\";var pattern=[5,5];if(Array.isArray(values.dashes)===true){pattern=values.dashes}if(ctx.setLineDash!==undefined){ctx.save();ctx.setLineDash(pattern);ctx.lineDashOffset=0;if(this.from!=this.to){this._line(ctx,values,viaNode)}else{var _getCircleData4=this._getCircleData(ctx),_getCircleData5=(0,_slicedToArray3[\"default\"])(_getCircleData4,3),x=_getCircleData5[0],y=_getCircleData5[1],radius=_getCircleData5[2];this._circle(ctx,values,x,y,radius)}ctx.setLineDash([0]);ctx.lineDashOffset=0;ctx.restore()}else{if(this.from!=this.to){ctx.dashedLine(this.from.x,this.from.y,this.to.x,this.to.y,pattern)}else{var _getCircleData6=this._getCircleData(ctx),_getCircleData7=(0,_slicedToArray3[\"default\"])(_getCircleData6,3),_x=_getCircleData7[0],_y=_getCircleData7[1],_radius=_getCircleData7[2];this._circle(ctx,values,_x,_y,_radius)}this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}}},{key:\"findBorderPosition\",value:function findBorderPosition(nearNode,ctx,options){if(this.from!=this.to){return this._findBorderPosition(nearNode,ctx,options)}else{return this._findBorderPositionCircle(nearNode,ctx,options)}}},{key:\"findBorderPositions\",value:function findBorderPositions(ctx){var from={};var to={};if(this.from!=this.to){from=this._findBorderPosition(this.from,ctx);to=this._findBorderPosition(this.to,ctx)}else{var _getCircleData$slice=this._getCircleData(ctx).slice(0,2),_getCircleData$slice2=(0,_slicedToArray3[\"default\"])(_getCircleData$slice,2),x=_getCircleData$slice2[0],y=_getCircleData$slice2[1];from=this._findBorderPositionCircle(this.from,ctx,{x:x,y:y,low:.25,high:.6,direction:-1});to=this._findBorderPositionCircle(this.from,ctx,{x:x,y:y,low:.6,high:.8,direction:1})}return{from:from,to:to}}},{key:\"_getCircleData\",value:function _getCircleData(ctx){var x=void 0,y=void 0;var node=this.from;var radius=this.options.selfReferenceSize;if(ctx!==undefined){if(node.shape.width===undefined){node.shape.resize(ctx)}}if(node.shape.width>node.shape.height){x=node.x+node.shape.width*.5;y=node.y-radius}else{x=node.x+radius;y=node.y-node.shape.height*.5}return[x,y,radius]}},{key:\"_pointOnCircle\",value:function _pointOnCircle(x,y,radius,percentage){var angle=percentage*2*Math.PI;return{x:x+radius*Math.cos(angle),y:y-radius*Math.sin(angle)}}},{key:\"_findBorderPositionCircle\",value:function _findBorderPositionCircle(node,ctx,options){var x=options.x;var y=options.y;var low=options.low;var high=options.high;var direction=options.direction;var maxIterations=10;var iteration=0;var radius=this.options.selfReferenceSize;var pos=void 0,angle=void 0,distanceToBorder=void 0,distanceToPoint=void 0,difference=void 0;var threshold=.05;var middle=(low+high)*.5;while(low<=high&&iteration<maxIterations){middle=(low+high)*.5;pos=this._pointOnCircle(x,y,radius,middle);angle=Math.atan2(node.y-pos.y,node.x-pos.x);distanceToBorder=node.distanceToBorder(ctx,angle);distanceToPoint=Math.sqrt(Math.pow(pos.x-node.x,2)+Math.pow(pos.y-node.y,2));difference=distanceToBorder-distanceToPoint;if(Math.abs(difference)<threshold){break}else if(difference>0){if(direction>0){low=middle}else{high=middle}}else{if(direction>0){high=middle}else{low=middle}}iteration++}pos.t=middle;return pos}},{key:\"getLineWidth\",value:function getLineWidth(selected,hover){if(selected===true){return Math.max(this.selectionWidth,.3/this.body.view.scale)}else{if(hover===true){return Math.max(this.hoverWidth,.3/this.body.view.scale)}else{return Math.max(this.options.width,.3/this.body.view.scale)}}}},{key:\"getColor\",value:function getColor(ctx,values,selected,hover){if(values.inheritsColor!==false){if(values.inheritsColor===\"both\"&&this.from.id!==this.to.id){var grd=ctx.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y);var fromColor=void 0,toColor=void 0;fromColor=this.from.options.color.highlight.border;toColor=this.to.options.color.highlight.border;if(this.from.selected===false&&this.to.selected===false){fromColor=util.overrideOpacity(this.from.options.color.border,values.opacity);toColor=util.overrideOpacity(this.to.options.color.border,values.opacity)}else if(this.from.selected===true&&this.to.selected===false){toColor=this.to.options.color.border}else if(this.from.selected===false&&this.to.selected===true){fromColor=this.from.options.color.border}grd.addColorStop(0,fromColor);grd.addColorStop(1,toColor);return grd}if(values.inheritsColor===\"to\"){return util.overrideOpacity(this.to.options.color.border,values.opacity)}else{return util.overrideOpacity(this.from.options.color.border,values.opacity)}}else{return util.overrideOpacity(values.color,values.opacity)}}},{key:\"_circle\",value:function _circle(ctx,values,x,y,radius){this.enableShadow(ctx,values);ctx.beginPath();ctx.arc(x,y,radius,0,2*Math.PI,false);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getDistanceToEdge\",value:function getDistanceToEdge(x1,y1,x2,y2,x3,y3,via,values){var returnValue=0;if(this.from!=this.to){returnValue=this._getDistanceToEdge(x1,y1,x2,y2,x3,y3,via)}else{var _getCircleData8=this._getCircleData(undefined),_getCircleData9=(0,_slicedToArray3[\"default\"])(_getCircleData8,3),x=_getCircleData9[0],y=_getCircleData9[1],radius=_getCircleData9[2];var dx=x-x3;var dy=y-y3;returnValue=Math.abs(Math.sqrt(dx*dx+dy*dy)-radius)}return returnValue}},{key:\"_getDistanceToLine\",value:function _getDistanceToLine(x1,y1,x2,y2,x3,y3){var px=x2-x1;var py=y2-y1;var something=px*px+py*py;var u=((x3-x1)*px+(y3-y1)*py)/something;if(u>1){u=1}else if(u<0){u=0}var x=x1+u*px;var y=y1+u*py;var dx=x-x3;var dy=y-y3;return Math.sqrt(dx*dx+dy*dy)}},{key:\"getArrowData\",value:function getArrowData(ctx,position,viaNode,selected,hover,values){var angle=void 0;var arrowPoint=void 0;var node1=void 0;var node2=void 0;var guideOffset=void 0;var scaleFactor=void 0;var type=void 0;var lineWidth=values.width;if(position===\"from\"){node1=this.from;node2=this.to;guideOffset=.1;scaleFactor=values.fromArrowScale;type=values.fromArrowType}else if(position===\"to\"){node1=this.to;node2=this.from;guideOffset=-.1;scaleFactor=values.toArrowScale;type=values.toArrowType}else{node1=this.to;node2=this.from;scaleFactor=values.middleArrowScale;type=values.middleArrowType}if(node1!=node2){if(position!==\"middle\"){if(this.options.smooth.enabled===true){arrowPoint=this.findBorderPosition(node1,ctx,{via:viaNode});var guidePos=this.getPoint(Math.max(0,Math.min(1,arrowPoint.t+guideOffset)),viaNode);angle=Math.atan2(arrowPoint.y-guidePos.y,arrowPoint.x-guidePos.x)}else{angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);arrowPoint=this.findBorderPosition(node1,ctx)}}else{angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);arrowPoint=this.getPoint(.5,viaNode)}}else{var _getCircleData10=this._getCircleData(ctx),_getCircleData11=(0,_slicedToArray3[\"default\"])(_getCircleData10,3),x=_getCircleData11[0],y=_getCircleData11[1],radius=_getCircleData11[2];if(position===\"from\"){arrowPoint=this.findBorderPosition(this.from,ctx,{x:x,y:y,low:.25,high:.6,direction:-1});angle=arrowPoint.t*-2*Math.PI+1.5*Math.PI+.1*Math.PI}else if(position===\"to\"){arrowPoint=this.findBorderPosition(this.from,ctx,{x:x,y:y,low:.6,high:1,direction:1});angle=arrowPoint.t*-2*Math.PI+1.5*Math.PI-1.1*Math.PI}else{arrowPoint=this._pointOnCircle(x,y,radius,.175);angle=3.9269908169872414}}if(position===\"middle\"&&scaleFactor<0)lineWidth*=-1;var length=15*scaleFactor+3*lineWidth;var xi=arrowPoint.x-length*.9*Math.cos(angle);var yi=arrowPoint.y-length*.9*Math.sin(angle);var arrowCore={x:xi,y:yi};return{point:arrowPoint,core:arrowCore,angle:angle,length:length,type:type}}},{key:\"drawArrowHead\",value:function drawArrowHead(ctx,values,selected,hover,arrowData){ctx.strokeStyle=this.getColor(ctx,values,selected,hover);ctx.fillStyle=ctx.strokeStyle;ctx.lineWidth=values.width;EndPoints.draw(ctx,arrowData);this.enableShadow(ctx,values);ctx.fill();this.disableShadow(ctx,values)}},{key:\"enableShadow\",value:function enableShadow(ctx,values){if(values.shadow===true){ctx.shadowColor=values.shadowColor;ctx.shadowBlur=values.shadowSize;ctx.shadowOffsetX=values.shadowX;ctx.shadowOffsetY=values.shadowY}}},{key:\"disableShadow\",value:function disableShadow(ctx,values){if(values.shadow===true){ctx.shadowColor=\"rgba(0,0,0,0)\";ctx.shadowBlur=0;ctx.shadowOffsetX=0;ctx.shadowOffsetY=0}}}]);return EdgeBase}();exports[\"default\"]=EdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var EndPoint=function(){function EndPoint(){(0,_classCallCheck3[\"default\"])(this,EndPoint)}(0,_createClass3[\"default\"])(EndPoint,null,[{key:\"transform\",value:function transform(points,arrowData){if(!(points instanceof Array)){points=[points]}var x=arrowData.point.x;var y=arrowData.point.y;var angle=arrowData.angle;var length=arrowData.length;for(var i=0;i<points.length;++i){var p=points[i];var xt=p.x*Math.cos(angle)-p.y*Math.sin(angle);var yt=p.x*Math.sin(angle)+p.y*Math.cos(angle);p.x=x+length*xt;p.y=y+length*yt}}},{key:\"drawPath\",value:function drawPath(ctx,points){ctx.beginPath();ctx.moveTo(points[0].x,points[0].y);for(var i=1;i<points.length;++i){ctx.lineTo(points[i].x,points[i].y)}ctx.closePath()}}]);return EndPoint}();var Arrow=function(_EndPoint){(0,_inherits3[\"default\"])(Arrow,_EndPoint);function Arrow(){(0,_classCallCheck3[\"default\"])(this,Arrow);return(0,_possibleConstructorReturn3[\"default\"])(this,(Arrow.__proto__||(0,_getPrototypeOf2[\"default\"])(Arrow)).apply(this,arguments))}(0,_createClass3[\"default\"])(Arrow,null,[{key:\"draw\",value:function draw(ctx,arrowData){var points=[{x:0,y:0},{x:-1,y:.3},{x:-.9,y:0},{x:-1,y:-.3}];EndPoint.transform(points,arrowData);EndPoint.drawPath(ctx,points)}}]);return Arrow}(EndPoint);var Circle=function(){function Circle(){(0,_classCallCheck3[\"default\"])(this,Circle)}(0,_createClass3[\"default\"])(Circle,null,[{key:\"draw\",value:function draw(ctx,arrowData){var point={x:-.4,y:0};EndPoint.transform(point,arrowData);ctx.circle(point.x,point.y,arrowData.length*.4)}}]);return Circle}();var Bar=function(){function Bar(){(0,_classCallCheck3[\"default\"])(this,Bar)}(0,_createClass3[\"default\"])(Bar,null,[{key:\"draw\",value:function draw(ctx,arrowData){var points=[{x:0,y:.5},{x:0,y:-.5},{x:-.15,y:-.5},{x:-.15,y:.5}];EndPoint.transform(points,arrowData);EndPoint.drawPath(ctx,points)}}]);return Bar}();var EndPoints=function(){function EndPoints(){(0,_classCallCheck3[\"default\"])(this,EndPoints)}(0,_createClass3[\"default\"])(EndPoints,null,[{key:\"draw\",value:function draw(ctx,arrowData){var type;if(arrowData.type){type=arrowData.type.toLowerCase()}switch(type){case\"circle\":Circle.draw(ctx,arrowData);break;case\"bar\":Bar.draw(ctx,arrowData);break;case\"arrow\":default:Arrow.draw(ctx,arrowData)}}}]);return EndPoints}();exports[\"default\"]=EndPoints},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BarnesHutSolver=function(){function BarnesHutSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,BarnesHutSolver);this.body=body;this.physicsBody=physicsBody;this.barnesHutTree;this.setOptions(options);this.randomSeed=5}(0,_createClass3[\"default\"])(BarnesHutSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options;this.thetaInversed=1/this.options.theta;this.overlapAvoidanceFactor=1-Math.max(0,Math.min(1,this.options.avoidOverlap))}},{key:\"seededRandom\",value:function seededRandom(){var x=Math.sin(this.randomSeed++)*1e4;return x-Math.floor(x)}},{key:\"solve\",value:function solve(){if(this.options.gravitationalConstant!==0&&this.physicsBody.physicsNodeIndices.length>0){var node=void 0;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var nodeCount=nodeIndices.length;var barnesHutTree=this._formBarnesHutTree(nodes,nodeIndices);this.barnesHutTree=barnesHutTree;for(var i=0;i<nodeCount;i++){node=nodes[nodeIndices[i]];if(node.options.mass>0){this._getForceContributions(barnesHutTree.root,node)}}}}},{key:\"_getForceContributions\",value:function _getForceContributions(parentBranch,node){this._getForceContribution(parentBranch.children.NW,node);this._getForceContribution(parentBranch.children.NE,node);this._getForceContribution(parentBranch.children.SW,node);this._getForceContribution(parentBranch.children.SE,node)}},{key:\"_getForceContribution\",value:function _getForceContribution(parentBranch,node){if(parentBranch.childrenCount>0){var dx=void 0,dy=void 0,distance=void 0;dx=parentBranch.centerOfMass.x-node.x;dy=parentBranch.centerOfMass.y-node.y;distance=Math.sqrt(dx*dx+dy*dy);if(distance*parentBranch.calcSize>this.thetaInversed){this._calculateForces(distance,dx,dy,node,parentBranch)}else{if(parentBranch.childrenCount===4){this._getForceContributions(parentBranch,node)}else{if(parentBranch.children.data.id!=node.id){this._calculateForces(distance,dx,dy,node,parentBranch)}}}}}},{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,node,parentBranch){if(distance===0){distance=.1;dx=distance}if(this.overlapAvoidanceFactor<1&&node.shape.radius){distance=Math.max(.1+this.overlapAvoidanceFactor*node.shape.radius,distance-node.shape.radius)}var gravityForce=this.options.gravitationalConstant*parentBranch.mass*node.options.mass/Math.pow(distance,3);var fx=dx*gravityForce;var fy=dy*gravityForce;this.physicsBody.forces[node.id].x+=fx;this.physicsBody.forces[node.id].y+=fy}},{key:\"_formBarnesHutTree\",value:function _formBarnesHutTree(nodes,nodeIndices){var node=void 0;var nodeCount=nodeIndices.length;var minX=nodes[nodeIndices[0]].x;var minY=nodes[nodeIndices[0]].y;var maxX=nodes[nodeIndices[0]].x;var maxY=nodes[nodeIndices[0]].y;for(var i=1;i<nodeCount;i++){var _node=nodes[nodeIndices[i]];var x=_node.x;var y=_node.y;if(_node.options.mass>0){if(x<minX){minX=x}if(x>maxX){maxX=x}if(y<minY){minY=y}if(y>maxY){maxY=y}}}var sizeDiff=Math.abs(maxX-minX)-Math.abs(maxY-minY);if(sizeDiff>0){minY-=.5*sizeDiff;maxY+=.5*sizeDiff}else{minX+=.5*sizeDiff;maxX-=.5*sizeDiff}var minimumTreeSize=1e-5;var rootSize=Math.max(minimumTreeSize,Math.abs(maxX-minX));var halfRootSize=.5*rootSize;var centerX=.5*(minX+maxX),centerY=.5*(minY+maxY);var barnesHutTree={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:centerX-halfRootSize,maxX:centerX+halfRootSize,minY:centerY-halfRootSize,maxY:centerY+halfRootSize},size:rootSize,calcSize:1/rootSize,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(barnesHutTree.root);for(var _i=0;_i<nodeCount;_i++){node=nodes[nodeIndices[_i]];if(node.options.mass>0){this._placeInTree(barnesHutTree.root,node)}}return barnesHutTree}},{key:\"_updateBranchMass\",value:function _updateBranchMass(parentBranch,node){var centerOfMass=parentBranch.centerOfMass;var totalMass=parentBranch.mass+node.options.mass;var totalMassInv=1/totalMass;centerOfMass.x=centerOfMass.x*parentBranch.mass+node.x*node.options.mass;centerOfMass.x*=totalMassInv;centerOfMass.y=centerOfMass.y*parentBranch.mass+node.y*node.options.mass;centerOfMass.y*=totalMassInv;parentBranch.mass=totalMass;var biggestSize=Math.max(Math.max(node.height,node.radius),node.width);parentBranch.maxWidth=parentBranch.maxWidth<biggestSize?biggestSize:parentBranch.maxWidth}},{key:\"_placeInTree\",value:function _placeInTree(parentBranch,node,skipMassUpdate){if(skipMassUpdate!=true||skipMassUpdate===undefined){this._updateBranchMass(parentBranch,node)}var range=parentBranch.children.NW.range;var region=void 0;if(range.maxX>node.x){if(range.maxY>node.y){region=\"NW\"}else{region=\"SW\"}}else{if(range.maxY>node.y){region=\"NE\"}else{region=\"SE\"}}this._placeInRegion(parentBranch,node,region)}},{key:\"_placeInRegion\",value:function _placeInRegion(parentBranch,node,region){var children=parentBranch.children[region];switch(children.childrenCount){case 0:children.children.data=node;children.childrenCount=1;this._updateBranchMass(children,node);break;case 1:if(children.children.data.x===node.x&&children.children.data.y===node.y){node.x+=this.seededRandom();node.y+=this.seededRandom()}else{this._splitBranch(children);this._placeInTree(children,node)}break;case 4:this._placeInTree(children,node);break}}},{key:\"_splitBranch\",value:function _splitBranch(parentBranch){var containedNode=null;if(parentBranch.childrenCount===1){containedNode=parentBranch.children.data;parentBranch.mass=0;parentBranch.centerOfMass.x=0;parentBranch.centerOfMass.y=0}parentBranch.childrenCount=4;parentBranch.children.data=null;this._insertRegion(parentBranch,\"NW\");this._insertRegion(parentBranch,\"NE\");this._insertRegion(parentBranch,\"SW\");this._insertRegion(parentBranch,\"SE\");if(containedNode!=null){this._placeInTree(parentBranch,containedNode)}}},{key:\"_insertRegion\",value:function _insertRegion(parentBranch,region){var minX=void 0,maxX=void 0,minY=void 0,maxY=void 0;var childSize=.5*parentBranch.size;switch(region){case\"NW\":minX=parentBranch.range.minX;maxX=parentBranch.range.minX+childSize;minY=parentBranch.range.minY;maxY=parentBranch.range.minY+childSize;break;case\"NE\":minX=parentBranch.range.minX+childSize;maxX=parentBranch.range.maxX;minY=parentBranch.range.minY;maxY=parentBranch.range.minY+childSize;break;case\"SW\":minX=parentBranch.range.minX;maxX=parentBranch.range.minX+childSize;minY=parentBranch.range.minY+childSize;maxY=parentBranch.range.maxY;break;case\"SE\":minX=parentBranch.range.minX+childSize;maxX=parentBranch.range.maxX;minY=parentBranch.range.minY+childSize;maxY=parentBranch.range.maxY;break}parentBranch.children[region]={centerOfMass:{x:0,y:0},mass:0,range:{minX:minX,maxX:maxX,minY:minY,maxY:maxY},size:.5*parentBranch.size,calcSize:2*parentBranch.calcSize,children:{data:null},maxWidth:0,level:parentBranch.level+1,childrenCount:0}}},{key:\"_debug\",value:function _debug(ctx,color){if(this.barnesHutTree!==undefined){ctx.lineWidth=1;this._drawBranch(this.barnesHutTree.root,ctx,color)}}},{key:\"_drawBranch\",value:function _drawBranch(branch,ctx,color){if(color===undefined){color=\"#FF0000\"}if(branch.childrenCount===4){this._drawBranch(branch.children.NW,ctx);this._drawBranch(branch.children.NE,ctx);this._drawBranch(branch.children.SE,ctx);this._drawBranch(branch.children.SW,ctx)}ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(branch.range.minX,branch.range.minY);ctx.lineTo(branch.range.maxX,branch.range.minY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.maxX,branch.range.minY);ctx.lineTo(branch.range.maxX,branch.range.maxY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.maxX,branch.range.maxY);ctx.lineTo(branch.range.minX,branch.range.maxY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.minX,branch.range.maxY);ctx.lineTo(branch.range.minX,branch.range.minY);ctx.stroke()}}]);return BarnesHutSolver}();exports[\"default\"]=BarnesHutSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CentralGravitySolver=function(){function CentralGravitySolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,CentralGravitySolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(CentralGravitySolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx=void 0,dy=void 0,distance=void 0,node=void 0;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];node=nodes[nodeId];dx=-node.x;dy=-node.y;distance=Math.sqrt(dx*dx+dy*dy);this._calculateForces(distance,dx,dy,forces,node)}}},{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,forces,node){var gravityForce=distance===0?0:this.options.centralGravity/distance;forces[node.id].x=dx*gravityForce;forces[node.id].y=dy*gravityForce}}]);return CentralGravitySolver}();exports[\"default\"]=CentralGravitySolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var object=\"object\";var dom=\"dom\";var any=\"any\";var endPoints=[\"arrow\",\"circle\",\"bar\"];var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,string:string,array:array,function:\"function\"},container:{dom:dom},showButton:{boolean:bool},__type__:{object:object,boolean:bool,string:string,array:array,function:\"function\"}},edges:{arrows:{to:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},middle:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},from:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},__type__:{string:[\"from\",\"to\",\"middle\"],object:object}},arrowStrikethrough:{boolean:bool},chosen:{label:{boolean:bool,function:\"function\"},edge:{boolean:bool,function:\"function\"},__type__:{object:object,boolean:bool}},color:{color:{string:string},highlight:{string:string},hover:{string:string},inherit:{string:[\"from\",\"to\",\"both\"],boolean:bool},opacity:{number:number},__type__:{object:object,string:string}},dashes:{boolean:bool,array:array},font:{color:{string:string},size:{number:number},face:{string:string},background:{string:string},strokeWidth:{number:number},strokeColor:{string:string},align:{string:[\"horizontal\",\"top\",\"middle\",\"bottom\"]},vadjust:{number:number},multi:{boolean:bool,string:string},bold:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},boldital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},ital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},mono:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},__type__:{object:object,string:string}},hidden:{boolean:bool},hoverWidth:{function:\"function\",number:number},label:{string:string,undefined:\"undefined\"},labelHighlightBold:{boolean:bool},length:{number:number,undefined:\"undefined\"},physics:{boolean:bool},scaling:{min:{number:number},max:{number:number},label:{enabled:{boolean:bool},min:{number:number},max:{number:number},maxVisible:{number:number},drawThreshold:{number:number},__type__:{object:object,boolean:bool}},customScalingFunction:{function:\"function\"},__type__:{object:object}},selectionWidth:{function:\"function\",number:number},selfReferenceSize:{number:number},shadow:{enabled:{boolean:bool},color:{string:string},size:{number:number},x:{number:number},y:{number:number},__type__:{object:object,boolean:bool}},smooth:{enabled:{boolean:bool},type:{string:[\"dynamic\",\"continuous\",\"discrete\",\"diagonalCross\",\"straightCross\",\"horizontal\",\"vertical\",\"curvedCW\",\"curvedCCW\",\"cubicBezier\"]},roundness:{number:number},forceDirection:{string:[\"horizontal\",\"vertical\",\"none\"],boolean:bool},__type__:{object:object,boolean:bool}},title:{string:string,undefined:\"undefined\"},width:{number:number},widthConstraint:{maximum:{number:number},__type__:{object:object,boolean:bool,number:number}},value:{number:number,undefined:\"undefined\"},__type__:{object:object}},groups:{useDefaultGroups:{boolean:bool},__any__:\"get from nodes, will be overwritten below\",__type__:{object:object}},interaction:{dragNodes:{boolean:bool},dragView:{boolean:bool},hideEdgesOnDrag:{boolean:bool},hideNodesOnDrag:{boolean:bool},hover:{boolean:bool},keyboard:{enabled:{boolean:bool},speed:{x:{number:number},y:{number:number},zoom:{number:number},__type__:{object:object}},bindToWindow:{boolean:bool},__type__:{object:object,boolean:bool}},multiselect:{boolean:bool},navigationButtons:{boolean:bool},selectable:{boolean:bool},selectConnectedEdges:{boolean:bool},hoverConnectedEdges:{boolean:bool},tooltipDelay:{number:number},zoomView:{boolean:bool},__type__:{object:object}},layout:{randomSeed:{undefined:\"undefined\",number:number},improvedLayout:{boolean:bool},hierarchical:{enabled:{boolean:bool},levelSeparation:{number:number},nodeSpacing:{number:number},treeSpacing:{number:number},blockShifting:{boolean:bool},edgeMinimization:{boolean:bool},parentCentralization:{boolean:bool},direction:{string:[\"UD\",\"DU\",\"LR\",\"RL\"]},sortMethod:{string:[\"hubsize\",\"directed\"]},__type__:{object:object,boolean:bool}},__type__:{object:object}},manipulation:{enabled:{boolean:bool},initiallyActive:{boolean:bool},addNode:{boolean:bool,function:\"function\"},addEdge:{boolean:bool,function:\"function\"},editNode:{function:\"function\"},editEdge:{editWithoutDrag:{function:\"function\"},__type__:{object:object,boolean:bool,function:\"function\"}},deleteNode:{boolean:bool,function:\"function\"},deleteEdge:{boolean:bool,function:\"function\"},controlNodeStyle:\"get from nodes, will be overwritten below\",__type__:{object:object,boolean:bool}},nodes:{borderWidth:{number:number},borderWidthSelected:{number:number,undefined:\"undefined\"},brokenImage:{string:string,undefined:\"undefined\"},chosen:{label:{boolean:bool,function:\"function\"},node:{boolean:bool,function:\"function\"},__type__:{object:object,boolean:bool}},color:{border:{string:string},background:{string:string},highlight:{border:{string:string},background:{string:string},__type__:{object:object,string:string}},hover:{border:{string:string},background:{string:string},__type__:{object:object,string:string}},__type__:{object:object,string:string}},fixed:{x:{boolean:bool},y:{boolean:bool},__type__:{object:object,boolean:bool}},font:{align:{string:string},color:{string:string},size:{number:number},face:{string:string},background:{string:string},strokeWidth:{number:number},strokeColor:{string:string},vadjust:{number:number},multi:{boolean:bool,string:string},bold:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},boldital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},ital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},mono:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},__type__:{object:object,string:string}},group:{string:string,number:number,undefined:\"undefined\"},heightConstraint:{minimum:{number:number},valign:{string:string},__type__:{object:object,boolean:bool,number:number}},hidden:{boolean:bool},icon:{face:{string:string},code:{string:string},size:{number:number},color:{string:string},__type__:{object:object}},id:{string:string,number:number},image:{selected:{string:string,undefined:\"undefined\"},unselected:{string:string,undefined:\"undefined\"},__type__:{object:object,string:string}},label:{string:string,undefined:\"undefined\"},labelHighlightBold:{boolean:bool},level:{number:number,undefined:\"undefined\"},margin:{top:{number:number},right:{number:number},bottom:{number:number},left:{number:number},__type__:{object:object,number:number}},mass:{number:number},physics:{boolean:bool},scaling:{min:{number:number},max:{number:number},label:{enabled:{boolean:bool},min:{number:number},max:{number:number},maxVisible:{number:number},drawThreshold:{number:number},__type__:{object:object,boolean:bool}},customScalingFunction:{function:\"function\"},__type__:{object:object}},shadow:{enabled:{boolean:bool},color:{string:string},size:{number:number},x:{number:number},y:{number:number},__type__:{object:object,boolean:bool}},shape:{string:[\"ellipse\",\"circle\",\"database\",\"box\",\"text\",\"image\",\"circularImage\",\"diamond\",\"dot\",\"star\",\"triangle\",\"triangleDown\",\"square\",\"icon\",\"hexagon\"]},shapeProperties:{borderDashes:{boolean:bool,array:array},borderRadius:{number:number},interpolation:{boolean:bool},useImageSize:{boolean:bool},useBorderWithImage:{boolean:bool},__type__:{object:object}},size:{number:number},title:{string:string,dom:dom,undefined:\"undefined\"},value:{number:number,undefined:\"undefined\"},widthConstraint:{minimum:{number:number},maximum:{number:number},__type__:{object:object,boolean:bool,number:number}},x:{number:number},y:{number:number},__type__:{object:object}},physics:{enabled:{boolean:bool},barnesHut:{gravitationalConstant:{number:number},centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},damping:{number:number},avoidOverlap:{number:number},__type__:{object:object}},forceAtlas2Based:{gravitationalConstant:{number:number},centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},damping:{number:number},avoidOverlap:{number:number},__type__:{object:object}},repulsion:{centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},nodeDistance:{number:number},damping:{number:number},__type__:{object:object}},hierarchicalRepulsion:{centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},nodeDistance:{number:number},damping:{number:number},__type__:{object:object}},maxVelocity:{number:number},minVelocity:{number:number},solver:{string:[\"barnesHut\",\"repulsion\",\"hierarchicalRepulsion\",\"forceAtlas2Based\"]},stabilization:{enabled:{boolean:bool},iterations:{number:number},updateInterval:{number:number},onlyDynamicEdges:{boolean:bool},\nfit:{boolean:bool},__type__:{object:object,boolean:bool}},timestep:{number:number},adaptiveTimestep:{boolean:bool},__type__:{object:object,boolean:bool}},autoResize:{boolean:bool},clickToUse:{boolean:bool},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},height:{string:string},width:{string:string},__type__:{object:object}};allOptions.groups.__any__=allOptions.nodes;allOptions.manipulation.controlNodeStyle=allOptions.nodes;var configureOptions={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#97C2FC\"],highlight:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#D2E5FF\"]},hover:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#D2E5FF\"]}},fixed:{x:false,y:false},font:{color:[\"color\",\"#343434\"],size:[14,0,100,1],face:[\"arial\",\"verdana\",\"tahoma\"],background:[\"color\",\"none\"],strokeWidth:[0,0,50,1],strokeColor:[\"color\",\"#ffffff\"]},hidden:false,labelHighlightBold:true,physics:true,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:false,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:[\"ellipse\",\"box\",\"circle\",\"database\",\"diamond\",\"dot\",\"square\",\"star\",\"text\",\"triangle\",\"triangleDown\",\"hexagon\"],shapeProperties:{borderDashes:false,borderRadius:[6,0,20,1],interpolation:true,useImageSize:false},size:[25,0,200,1]},edges:{arrows:{to:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"},middle:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"},from:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"}},arrowStrikethrough:true,color:{color:[\"color\",\"#848484\"],highlight:[\"color\",\"#848484\"],hover:[\"color\",\"#848484\"],inherit:[\"from\",\"to\",\"both\",true,false],opacity:[1,0,1,.05]},dashes:false,font:{color:[\"color\",\"#343434\"],size:[14,0,100,1],face:[\"arial\",\"verdana\",\"tahoma\"],background:[\"color\",\"none\"],strokeWidth:[2,0,50,1],strokeColor:[\"color\",\"#ffffff\"],align:[\"horizontal\",\"top\",\"middle\",\"bottom\"]},hidden:false,hoverWidth:[1.5,0,5,.1],labelHighlightBold:true,physics:true,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:true,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:true,type:[\"dynamic\",\"continuous\",\"discrete\",\"diagonalCross\",\"straightCross\",\"horizontal\",\"vertical\",\"curvedCW\",\"curvedCCW\",\"cubicBezier\"],forceDirection:[\"horizontal\",\"vertical\",\"none\"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:false,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:true,edgeMinimization:true,parentCentralization:true,direction:[\"UD\",\"DU\",\"LR\",\"RL\"],sortMethod:[\"hubsize\",\"directed\"]}},interaction:{dragNodes:true,dragView:true,hideEdgesOnDrag:false,hideNodesOnDrag:false,hover:false,keyboard:{enabled:false,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:true},multiselect:false,navigationButtons:false,selectable:true,selectConnectedEdges:true,hoverConnectedEdges:true,tooltipDelay:[300,0,1e3,25],zoomView:true},manipulation:{enabled:false,initiallyActive:false},physics:{enabled:true,barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:[\"barnesHut\",\"forceAtlas2Based\",\"repulsion\",\"hierarchicalRepulsion\"],timestep:[.5,.01,1,.01]}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);util.extend(exports,__webpack_require__(159));util.extend(exports,__webpack_require__(177));util.extend(exports,__webpack_require__(181))},function(module,exports,__webpack_require__){__webpack_require__(49);__webpack_require__(60);module.exports=__webpack_require__(136)},function(module,exports,__webpack_require__){\"use strict\";var addToUnscopables=__webpack_require__(126);var step=__webpack_require__(127);var Iterators=__webpack_require__(31);var toIObject=__webpack_require__(25);module.exports=__webpack_require__(79)(Array,\"Array\",function(iterated,kind){this._t=toIObject(iterated);this._i=0;this._k=kind},function(){var O=this._t;var kind=this._k;var index=this._i++;if(!O||index>=O.length){this._t=undefined;return step(1)}if(kind==\"keys\")return step(0,index);if(kind==\"values\")return step(0,O[index]);return step(0,[index,O[index]])},\"values\");Iterators.Arguments=Iterators.Array;addToUnscopables(\"keys\");addToUnscopables(\"values\");addToUnscopables(\"entries\")},function(module,exports){module.exports=function(){}},function(module,exports){module.exports=function(done,value){return{value:value,done:!!done}}},function(module,exports){module.exports=function(it){if(typeof it!=\"function\")throw TypeError(it+\" is not a function!\");return it}},function(module,exports,__webpack_require__){\"use strict\";var create=__webpack_require__(54);var descriptor=__webpack_require__(39);var setToStringTag=__webpack_require__(59);var IteratorPrototype={};__webpack_require__(26)(IteratorPrototype,__webpack_require__(13)(\"iterator\"),function(){return this});module.exports=function(Constructor,NAME,next){Constructor.prototype=create(IteratorPrototype,{next:descriptor(1,next)});setToStringTag(Constructor,NAME+\" Iterator\")}},function(module,exports,__webpack_require__){var dP=__webpack_require__(20);var anObject=__webpack_require__(27);var getKeys=__webpack_require__(33);module.exports=__webpack_require__(21)?Object.defineProperties:function defineProperties(O,Properties){anObject(O);var keys=getKeys(Properties);var length=keys.length;var i=0;var P;while(length>i)dP.f(O,P=keys[i++],Properties[P]);return O}},function(module,exports,__webpack_require__){var toIObject=__webpack_require__(25);var toLength=__webpack_require__(132);var toAbsoluteIndex=__webpack_require__(133);module.exports=function(IS_INCLUDES){return function($this,el,fromIndex){var O=toIObject($this);var length=toLength(O.length);var index=toAbsoluteIndex(fromIndex,length);var value;if(IS_INCLUDES&&el!=el)while(length>index){value=O[index++];if(value!=value)return true}else for(;length>index;index++)if(IS_INCLUDES||index in O){if(O[index]===el)return IS_INCLUDES||index||0}return!IS_INCLUDES&&-1}}},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var min=Math.min;module.exports=function(it){return it>0?min(toInteger(it),9007199254740991):0}},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var max=Math.max;var min=Math.min;module.exports=function(index,length){index=toInteger(index);return index<0?max(index+length,0):min(index,length)}},function(module,exports,__webpack_require__){var document=__webpack_require__(18).document;module.exports=document&&document.documentElement},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var defined=__webpack_require__(51);module.exports=function(TO_STRING){return function(that,pos){var s=String(defined(that));var i=toInteger(pos);var l=s.length;var a,b;if(i<0||i>=l)return TO_STRING?\"\":undefined;a=s.charCodeAt(i);return a<55296||a>56319||i+1===l||(b=s.charCodeAt(i+1))<56320||b>57343?TO_STRING?s.charAt(i):a:TO_STRING?s.slice(i,i+2):(a-55296<<10)+(b-56320)+65536}}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var get=__webpack_require__(137);module.exports=__webpack_require__(7).getIterator=function(it){var iterFn=get(it);if(typeof iterFn!=\"function\")throw TypeError(it+\" is not iterable!\");return anObject(iterFn.call(it))}},function(module,exports,__webpack_require__){var classof=__webpack_require__(86);var ITERATOR=__webpack_require__(13)(\"iterator\");var Iterators=__webpack_require__(31);module.exports=__webpack_require__(7).getIteratorMethod=function(it){if(it!=undefined)return it[ITERATOR]||it[\"@@iterator\"]||Iterators[classof(it)]}},function(module,exports,__webpack_require__){__webpack_require__(139);var $Object=__webpack_require__(7).Object;module.exports=function create(P,D){return $Object.create(P,D)}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Object\",{create:__webpack_require__(54)})},function(module,exports,__webpack_require__){__webpack_require__(141);module.exports=__webpack_require__(7).Object.keys},function(module,exports,__webpack_require__){var toObject=__webpack_require__(41);var $keys=__webpack_require__(33);__webpack_require__(87)(\"keys\",function(){return function keys(it){return $keys(toObject(it))}})},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(143),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(60);__webpack_require__(49);module.exports=__webpack_require__(61).f(\"iterator\")},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(145),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(146);__webpack_require__(151);__webpack_require__(152);__webpack_require__(153);module.exports=__webpack_require__(7).Symbol},function(module,exports,__webpack_require__){\"use strict\";var global=__webpack_require__(18);var has=__webpack_require__(22);var DESCRIPTORS=__webpack_require__(21);var $export=__webpack_require__(17);var redefine=__webpack_require__(83);var META=__webpack_require__(147).KEY;var $fails=__webpack_require__(28);var shared=__webpack_require__(57);var setToStringTag=__webpack_require__(59);var uid=__webpack_require__(40);var wks=__webpack_require__(13);var wksExt=__webpack_require__(61);var wksDefine=__webpack_require__(62);var enumKeys=__webpack_require__(148);var isArray=__webpack_require__(149);var anObject=__webpack_require__(27);var toIObject=__webpack_require__(25);var toPrimitive=__webpack_require__(53);var createDesc=__webpack_require__(39);var _create=__webpack_require__(54);var gOPNExt=__webpack_require__(150);var $GOPD=__webpack_require__(89);var $DP=__webpack_require__(20);var $keys=__webpack_require__(33);var gOPD=$GOPD.f;var dP=$DP.f;var gOPN=gOPNExt.f;var $Symbol=global.Symbol;var $JSON=global.JSON;var _stringify=$JSON&&$JSON.stringify;var PROTOTYPE=\"prototype\";var HIDDEN=wks(\"_hidden\");var TO_PRIMITIVE=wks(\"toPrimitive\");var isEnum={}.propertyIsEnumerable;var SymbolRegistry=shared(\"symbol-registry\");var AllSymbols=shared(\"symbols\");var OPSymbols=shared(\"op-symbols\");var ObjectProto=Object[PROTOTYPE];var USE_NATIVE=typeof $Symbol==\"function\";var QObject=global.QObject;var setter=!QObject||!QObject[PROTOTYPE]||!QObject[PROTOTYPE].findChild;var setSymbolDesc=DESCRIPTORS&&$fails(function(){return _create(dP({},\"a\",{get:function(){return dP(this,\"a\",{value:7}).a}})).a!=7})?function(it,key,D){var protoDesc=gOPD(ObjectProto,key);if(protoDesc)delete ObjectProto[key];dP(it,key,D);if(protoDesc&&it!==ObjectProto)dP(ObjectProto,key,protoDesc)}:dP;var wrap=function(tag){var sym=AllSymbols[tag]=_create($Symbol[PROTOTYPE]);sym._k=tag;return sym};var isSymbol=USE_NATIVE&&typeof $Symbol.iterator==\"symbol\"?function(it){return typeof it==\"symbol\"}:function(it){return it instanceof $Symbol};var $defineProperty=function defineProperty(it,key,D){if(it===ObjectProto)$defineProperty(OPSymbols,key,D);anObject(it);key=toPrimitive(key,true);anObject(D);if(has(AllSymbols,key)){if(!D.enumerable){if(!has(it,HIDDEN))dP(it,HIDDEN,createDesc(1,{}));it[HIDDEN][key]=true}else{if(has(it,HIDDEN)&&it[HIDDEN][key])it[HIDDEN][key]=false;D=_create(D,{enumerable:createDesc(0,false)})}return setSymbolDesc(it,key,D)}return dP(it,key,D)};var $defineProperties=function defineProperties(it,P){anObject(it);var keys=enumKeys(P=toIObject(P));var i=0;var l=keys.length;var key;while(l>i)$defineProperty(it,key=keys[i++],P[key]);return it};var $create=function create(it,P){return P===undefined?_create(it):$defineProperties(_create(it),P)};var $propertyIsEnumerable=function propertyIsEnumerable(key){var E=isEnum.call(this,key=toPrimitive(key,true));if(this===ObjectProto&&has(AllSymbols,key)&&!has(OPSymbols,key))return false;return E||!has(this,key)||!has(AllSymbols,key)||has(this,HIDDEN)&&this[HIDDEN][key]?E:true};var $getOwnPropertyDescriptor=function getOwnPropertyDescriptor(it,key){it=toIObject(it);key=toPrimitive(key,true);if(it===ObjectProto&&has(AllSymbols,key)&&!has(OPSymbols,key))return;var D=gOPD(it,key);if(D&&has(AllSymbols,key)&&!(has(it,HIDDEN)&&it[HIDDEN][key]))D.enumerable=true;return D};var $getOwnPropertyNames=function getOwnPropertyNames(it){var names=gOPN(toIObject(it));var result=[];var i=0;var key;while(names.length>i){if(!has(AllSymbols,key=names[i++])&&key!=HIDDEN&&key!=META)result.push(key)}return result};var $getOwnPropertySymbols=function getOwnPropertySymbols(it){var IS_OP=it===ObjectProto;var names=gOPN(IS_OP?OPSymbols:toIObject(it));var result=[];var i=0;var key;while(names.length>i){if(has(AllSymbols,key=names[i++])&&(IS_OP?has(ObjectProto,key):true))result.push(AllSymbols[key])}return result};if(!USE_NATIVE){$Symbol=function Symbol(){if(this instanceof $Symbol)throw TypeError(\"Symbol is not a constructor!\");var tag=uid(arguments.length>0?arguments[0]:undefined);var $set=function(value){if(this===ObjectProto)$set.call(OPSymbols,value);if(has(this,HIDDEN)&&has(this[HIDDEN],tag))this[HIDDEN][tag]=false;setSymbolDesc(this,tag,createDesc(1,value))};if(DESCRIPTORS&&setter)setSymbolDesc(ObjectProto,tag,{configurable:true,set:$set});return wrap(tag)};redefine($Symbol[PROTOTYPE],\"toString\",function toString(){return this._k});$GOPD.f=$getOwnPropertyDescriptor;$DP.f=$defineProperty;__webpack_require__(88).f=gOPNExt.f=$getOwnPropertyNames;__webpack_require__(42).f=$propertyIsEnumerable;__webpack_require__(63).f=$getOwnPropertySymbols;if(DESCRIPTORS&&!__webpack_require__(52)){redefine(ObjectProto,\"propertyIsEnumerable\",$propertyIsEnumerable,true)}wksExt.f=function(name){return wrap(wks(name))}}$export($export.G+$export.W+$export.F*!USE_NATIVE,{Symbol:$Symbol});for(var es6Symbols=\"hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables\".split(\",\"),j=0;es6Symbols.length>j;)wks(es6Symbols[j++]);for(var wellKnownSymbols=$keys(wks.store),k=0;wellKnownSymbols.length>k;)wksDefine(wellKnownSymbols[k++]);$export($export.S+$export.F*!USE_NATIVE,\"Symbol\",{for:function(key){return has(SymbolRegistry,key+=\"\")?SymbolRegistry[key]:SymbolRegistry[key]=$Symbol(key)},keyFor:function keyFor(sym){if(!isSymbol(sym))throw TypeError(sym+\" is not a symbol!\");for(var key in SymbolRegistry)if(SymbolRegistry[key]===sym)return key},useSetter:function(){setter=true},useSimple:function(){setter=false}});$export($export.S+$export.F*!USE_NATIVE,\"Object\",{create:$create,defineProperty:$defineProperty,defineProperties:$defineProperties,getOwnPropertyDescriptor:$getOwnPropertyDescriptor,getOwnPropertyNames:$getOwnPropertyNames,getOwnPropertySymbols:$getOwnPropertySymbols});$JSON&&$export($export.S+$export.F*(!USE_NATIVE||$fails(function(){var S=$Symbol();return _stringify([S])!=\"[null]\"||_stringify({a:S})!=\"{}\"||_stringify(Object(S))!=\"{}\"})),\"JSON\",{stringify:function stringify(it){if(it===undefined||isSymbol(it))return;var args=[it];var i=1;var replacer,$replacer;while(arguments.length>i)args.push(arguments[i++]);replacer=args[1];if(typeof replacer==\"function\")$replacer=replacer;if($replacer||!isArray(replacer))replacer=function(key,value){if($replacer)value=$replacer.call(this,key,value);if(!isSymbol(value))return value};args[1]=replacer;return _stringify.apply($JSON,args)}});$Symbol[PROTOTYPE][TO_PRIMITIVE]||__webpack_require__(26)($Symbol[PROTOTYPE],TO_PRIMITIVE,$Symbol[PROTOTYPE].valueOf);setToStringTag($Symbol,\"Symbol\");setToStringTag(Math,\"Math\",true);setToStringTag(global.JSON,\"JSON\",true)},function(module,exports,__webpack_require__){var META=__webpack_require__(40)(\"meta\");var isObject=__webpack_require__(32);var has=__webpack_require__(22);var setDesc=__webpack_require__(20).f;var id=0;var isExtensible=Object.isExtensible||function(){return true};var FREEZE=!__webpack_require__(28)(function(){return isExtensible(Object.preventExtensions({}))});var setMeta=function(it){setDesc(it,META,{value:{i:\"O\"+ ++id,w:{}}})};var fastKey=function(it,create){if(!isObject(it))return typeof it==\"symbol\"?it:(typeof it==\"string\"?\"S\":\"P\")+it;if(!has(it,META)){if(!isExtensible(it))return\"F\";if(!create)return\"E\";setMeta(it)}return it[META].i};var getWeak=function(it,create){if(!has(it,META)){if(!isExtensible(it))return true;if(!create)return false;setMeta(it)}return it[META].w};var onFreeze=function(it){if(FREEZE&&meta.NEED&&isExtensible(it)&&!has(it,META))setMeta(it);return it};var meta=module.exports={KEY:META,NEED:false,fastKey:fastKey,getWeak:getWeak,onFreeze:onFreeze}},function(module,exports,__webpack_require__){var getKeys=__webpack_require__(33);var gOPS=__webpack_require__(63);var pIE=__webpack_require__(42);module.exports=function(it){var result=getKeys(it);var getSymbols=gOPS.f;if(getSymbols){var symbols=getSymbols(it);var isEnum=pIE.f;var i=0;var key;while(symbols.length>i)if(isEnum.call(it,key=symbols[i++]))result.push(key)}return result}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);module.exports=Array.isArray||function isArray(arg){return cof(arg)==\"Array\"}},function(module,exports,__webpack_require__){var toIObject=__webpack_require__(25);var gOPN=__webpack_require__(88).f;var toString={}.toString;var windowNames=typeof window==\"object\"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];var getWindowNames=function(it){try{return gOPN(it)}catch(e){return windowNames.slice()}};module.exports.f=function getOwnPropertyNames(it){return windowNames&&toString.call(it)==\"[object Window]\"?getWindowNames(it):gOPN(toIObject(it))}},function(module,exports){},function(module,exports,__webpack_require__){__webpack_require__(62)(\"asyncIterator\")},function(module,exports,__webpack_require__){__webpack_require__(62)(\"observable\")},function(module,exports,__webpack_require__){(function(module){var require;(function(global,factory){true?module.exports=factory():typeof define===\"function\"&&define.amd?define(factory):global.moment=factory()})(this,function(){\"use strict\";var hookCallback;function hooks(){return hookCallback.apply(null,arguments)}function setHookCallback(callback){hookCallback=callback}function isArray(input){return input instanceof Array||Object.prototype.toString.call(input)===\"[object Array]\"}function isObject(input){return input!=null&&Object.prototype.toString.call(input)===\"[object Object]\"}function isObjectEmpty(obj){if(Object.getOwnPropertyNames){return Object.getOwnPropertyNames(obj).length===0}else{var k;for(k in obj){if(obj.hasOwnProperty(k)){return false}}return true}}function isUndefined(input){return input===void 0}function isNumber(input){return typeof input===\"number\"||Object.prototype.toString.call(input)===\"[object Number]\"}function isDate(input){return input instanceof Date||Object.prototype.toString.call(input)===\"[object Date]\"}function map(arr,fn){var res=[],i;for(i=0;i<arr.length;++i){res.push(fn(arr[i],i))}return res}function hasOwnProp(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function extend(a,b){for(var i in b){if(hasOwnProp(b,i)){a[i]=b[i]}}if(hasOwnProp(b,\"toString\")){a.toString=b.toString}if(hasOwnProp(b,\"valueOf\")){a.valueOf=b.valueOf}return a}function createUTC(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,true).utc()}function defaultParsingFlags(){return{empty:false,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:false,invalidMonth:null,invalidFormat:false,userInvalidated:false,iso:false,parsedDateParts:[],meridiem:null,rfc2822:false,weekdayMismatch:false}}function getParsingFlags(m){if(m._pf==null){m._pf=defaultParsingFlags()}return m._pf}var some;if(Array.prototype.some){some=Array.prototype.some}else{some=function(fun){var t=Object(this);var len=t.length>>>0;for(var i=0;i<len;i++){if(i in t&&fun.call(this,t[i],i,t)){return true}}return false}}function isValid(m){if(m._isValid==null){var flags=getParsingFlags(m);var parsedParts=some.call(flags.parsedDateParts,function(i){return i!=null});var isNowValid=!isNaN(m._d.getTime())&&flags.overflow<0&&!flags.empty&&!flags.invalidMonth&&!flags.invalidWeekday&&!flags.weekdayMismatch&&!flags.nullInput&&!flags.invalidFormat&&!flags.userInvalidated&&(!flags.meridiem||flags.meridiem&&parsedParts);if(m._strict){isNowValid=isNowValid&&flags.charsLeftOver===0&&flags.unusedTokens.length===0&&flags.bigHour===undefined}if(Object.isFrozen==null||!Object.isFrozen(m)){m._isValid=isNowValid}else{return isNowValid}}return m._isValid}function createInvalid(flags){var m=createUTC(NaN);if(flags!=null){extend(getParsingFlags(m),flags)}else{getParsingFlags(m).userInvalidated=true}return m}var momentProperties=hooks.momentProperties=[];function copyConfig(to,from){var i,prop,val;if(!isUndefined(from._isAMomentObject)){to._isAMomentObject=from._isAMomentObject}if(!isUndefined(from._i)){to._i=from._i}if(!isUndefined(from._f)){to._f=from._f}if(!isUndefined(from._l)){to._l=from._l}if(!isUndefined(from._strict)){to._strict=from._strict}if(!isUndefined(from._tzm)){to._tzm=from._tzm}if(!isUndefined(from._isUTC)){to._isUTC=from._isUTC}if(!isUndefined(from._offset)){to._offset=from._offset}if(!isUndefined(from._pf)){to._pf=getParsingFlags(from)}if(!isUndefined(from._locale)){to._locale=from._locale}if(momentProperties.length>0){for(i=0;i<momentProperties.length;i++){prop=momentProperties[i];val=from[prop];if(!isUndefined(val)){to[prop]=val}}}return to}var updateInProgress=false;function Moment(config){copyConfig(this,config);this._d=new Date(config._d!=null?config._d.getTime():NaN);if(!this.isValid()){this._d=new Date(NaN)}if(updateInProgress===false){updateInProgress=true;hooks.updateOffset(this);updateInProgress=false}}function isMoment(obj){return obj instanceof Moment||obj!=null&&obj._isAMomentObject!=null}function absFloor(number){if(number<0){return Math.ceil(number)||0}else{return Math.floor(number)}}function toInt(argumentForCoercion){var coercedNumber=+argumentForCoercion,value=0;if(coercedNumber!==0&&isFinite(coercedNumber)){value=absFloor(coercedNumber)}return value}function compareArrays(array1,array2,dontConvert){var len=Math.min(array1.length,array2.length),lengthDiff=Math.abs(array1.length-array2.length),diffs=0,i;for(i=0;i<len;i++){if(dontConvert&&array1[i]!==array2[i]||!dontConvert&&toInt(array1[i])!==toInt(array2[i])){diffs++}}return diffs+lengthDiff}function warn(msg){if(hooks.suppressDeprecationWarnings===false&&typeof console!==\"undefined\"&&console.warn){console.warn(\"Deprecation warning: \"+msg)}}function deprecate(msg,fn){var firstTime=true;return extend(function(){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(null,msg)}if(firstTime){var args=[];var arg;for(var i=0;i<arguments.length;i++){arg=\"\";if(typeof arguments[i]===\"object\"){arg+=\"\\n[\"+i+\"] \";for(var key in arguments[0]){arg+=key+\": \"+arguments[0][key]+\", \"}arg=arg.slice(0,-2)}else{arg=arguments[i]}args.push(arg)}warn(msg+\"\\nArguments: \"+Array.prototype.slice.call(args).join(\"\")+\"\\n\"+(new Error).stack);firstTime=false}return fn.apply(this,arguments)},fn)}var deprecations={};function deprecateSimple(name,msg){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(name,msg)}if(!deprecations[name]){warn(msg);deprecations[name]=true}}hooks.suppressDeprecationWarnings=false;hooks.deprecationHandler=null;function isFunction(input){return input instanceof Function||Object.prototype.toString.call(input)===\"[object Function]\"}function set(config){var prop,i;for(i in config){prop=config[i];if(isFunction(prop)){this[i]=prop}else{this[\"_\"+i]=prop}}this._config=config;this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+\"|\"+/\\d{1,2}/.source)}function mergeConfigs(parentConfig,childConfig){var res=extend({},parentConfig),prop;for(prop in childConfig){if(hasOwnProp(childConfig,prop)){if(isObject(parentConfig[prop])&&isObject(childConfig[prop])){res[prop]={};extend(res[prop],parentConfig[prop]);extend(res[prop],childConfig[prop])}else if(childConfig[prop]!=null){res[prop]=childConfig[prop]}else{delete res[prop]}}}for(prop in parentConfig){if(hasOwnProp(parentConfig,prop)&&!hasOwnProp(childConfig,prop)&&isObject(parentConfig[prop])){res[prop]=extend({},res[prop])}}return res}function Locale(config){if(config!=null){this.set(config)}}var keys;if(Object.keys){keys=Object.keys}else{keys=function(obj){var i,res=[];for(i in obj){if(hasOwnProp(obj,i)){res.push(i)}}return res}}var defaultCalendar={sameDay:\"[Today at] LT\",nextDay:\"[Tomorrow at] LT\",nextWeek:\"dddd [at] LT\",lastDay:\"[Yesterday at] LT\",lastWeek:\"[Last] dddd [at] LT\",sameElse:\"L\"};function calendar(key,mom,now){var output=this._calendar[key]||this._calendar[\"sameElse\"];return isFunction(output)?output.call(mom,now):output}var defaultLongDateFormat={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"};function longDateFormat(key){var format=this._longDateFormat[key],formatUpper=this._longDateFormat[key.toUpperCase()];if(format||!formatUpper){return format}this._longDateFormat[key]=formatUpper.replace(/MMMM|MM|DD|dddd/g,function(val){return val.slice(1)});return this._longDateFormat[key]}var defaultInvalidDate=\"Invalid date\";function invalidDate(){return this._invalidDate}var defaultOrdinal=\"%d\";var defaultDayOfMonthOrdinalParse=/\\d{1,2}/;function ordinal(number){return this._ordinal.replace(\"%d\",number)}var defaultRelativeTime={future:\"in %s\",past:\"%s ago\",s:\"a few seconds\",ss:\"%d seconds\",m:\"a minute\",mm:\"%d minutes\",h:\"an hour\",hh:\"%d hours\",d:\"a day\",dd:\"%d days\",M:\"a month\",MM:\"%d months\",y:\"a year\",yy:\"%d years\"};function relativeTime(number,withoutSuffix,string,isFuture){var output=this._relativeTime[string];return isFunction(output)?output(number,withoutSuffix,string,isFuture):output.replace(/%d/i,number)}function pastFuture(diff,output){var format=this._relativeTime[diff>0?\"future\":\"past\"];return isFunction(format)?format(output):format.replace(/%s/i,output)}var aliases={};function addUnitAlias(unit,shorthand){var lowerCase=unit.toLowerCase();aliases[lowerCase]=aliases[lowerCase+\"s\"]=aliases[shorthand]=unit}function normalizeUnits(units){return typeof units===\"string\"?aliases[units]||aliases[units.toLowerCase()]:undefined}function normalizeObjectUnits(inputObject){var normalizedInput={},normalizedProp,prop;for(prop in inputObject){if(hasOwnProp(inputObject,prop)){normalizedProp=normalizeUnits(prop);if(normalizedProp){normalizedInput[normalizedProp]=inputObject[prop]}}}return normalizedInput}var priorities={};function addUnitPriority(unit,priority){priorities[unit]=priority}function getPrioritizedUnits(unitsObj){var units=[];for(var u in unitsObj){units.push({unit:u,priority:priorities[u]})}units.sort(function(a,b){return a.priority-b.priority});return units}function zeroFill(number,targetLength,forceSign){var absNumber=\"\"+Math.abs(number),zerosToFill=targetLength-absNumber.length,sign=number>=0;return(sign?forceSign?\"+\":\"\":\"-\")+Math.pow(10,Math.max(0,zerosToFill)).toString().substr(1)+absNumber}var formattingTokens=/(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;var localFormattingTokens=/(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g;var formatFunctions={};var formatTokenFunctions={};function addFormatToken(token,padded,ordinal,callback){var func=callback;if(typeof callback===\"string\"){func=function(){return this[callback]()}}if(token){formatTokenFunctions[token]=func}if(padded){formatTokenFunctions[padded[0]]=function(){return zeroFill(func.apply(this,arguments),padded[1],padded[2])}}if(ordinal){formatTokenFunctions[ordinal]=function(){return this.localeData().ordinal(func.apply(this,arguments),token)}}}function removeFormattingTokens(input){if(input.match(/\\[[\\s\\S]/)){return input.replace(/^\\[|\\]$/g,\"\")}return input.replace(/\\\\/g,\"\")}function makeFormatFunction(format){var array=format.match(formattingTokens),i,length;for(i=0,length=array.length;i<length;i++){if(formatTokenFunctions[array[i]]){array[i]=formatTokenFunctions[array[i]]}else{array[i]=removeFormattingTokens(array[i])}}return function(mom){var output=\"\",i;for(i=0;i<length;i++){output+=isFunction(array[i])?array[i].call(mom,format):array[i]}return output}}function formatMoment(m,format){if(!m.isValid()){return m.localeData().invalidDate()}format=expandFormat(format,m.localeData());formatFunctions[format]=formatFunctions[format]||makeFormatFunction(format);return formatFunctions[format](m)}function expandFormat(format,locale){var i=5;function replaceLongDateFormatTokens(input){return locale.longDateFormat(input)||input}localFormattingTokens.lastIndex=0;while(i>=0&&localFormattingTokens.test(format)){format=format.replace(localFormattingTokens,replaceLongDateFormatTokens);localFormattingTokens.lastIndex=0;i-=1}return format}var match1=/\\d/;var match2=/\\d\\d/;var match3=/\\d{3}/;var match4=/\\d{4}/;var match6=/[+-]?\\d{6}/;var match1to2=/\\d\\d?/;var match3to4=/\\d\\d\\d\\d?/;var match5to6=/\\d\\d\\d\\d\\d\\d?/;var match1to3=/\\d{1,3}/;var match1to4=/\\d{1,4}/;var match1to6=/[+-]?\\d{1,6}/;var matchUnsigned=/\\d+/;var matchSigned=/[+-]?\\d+/;var matchOffset=/Z|[+-]\\d\\d:?\\d\\d/gi;var matchShortOffset=/Z|[+-]\\d\\d(?::?\\d\\d)?/gi;var matchTimestamp=/[+-]?\\d+(\\.\\d{1,3})?/;var matchWord=/[0-9]*['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]+|[\\u0600-\\u06FF\\/]+(\\s*?[\\u0600-\\u06FF]+){1,2}/i;var regexes={};function addRegexToken(token,regex,strictRegex){regexes[token]=isFunction(regex)?regex:function(isStrict,localeData){return isStrict&&strictRegex?strictRegex:regex}}function getParseRegexForToken(token,config){if(!hasOwnProp(regexes,token)){return new RegExp(unescapeFormat(token))}return regexes[token](config._strict,config._locale)}function unescapeFormat(s){return regexEscape(s.replace(\"\\\\\",\"\").replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,function(matched,p1,p2,p3,p4){return p1||p2||p3||p4}))}function regexEscape(s){return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\")}var tokens={};function addParseToken(token,callback){var i,func=callback;if(typeof token===\"string\"){token=[token]}if(isNumber(callback)){func=function(input,array){array[callback]=toInt(input)}}for(i=0;i<token.length;i++){tokens[token[i]]=func}}function addWeekParseToken(token,callback){addParseToken(token,function(input,array,config,token){config._w=config._w||{};callback(input,config._w,config,token)})}function addTimeToArrayFromToken(token,input,config){if(input!=null&&hasOwnProp(tokens,token)){tokens[token](input,config._a,config,token)}}var YEAR=0;var MONTH=1;var DATE=2;var HOUR=3;var MINUTE=4;var SECOND=5;var MILLISECOND=6;var WEEK=7;var WEEKDAY=8;addFormatToken(\"Y\",0,0,function(){var y=this.year();return y<=9999?\"\"+y:\"+\"+y});addFormatToken(0,[\"YY\",2],0,function(){return this.year()%100});addFormatToken(0,[\"YYYY\",4],0,\"year\");addFormatToken(0,[\"YYYYY\",5],0,\"year\");addFormatToken(0,[\"YYYYYY\",6,true],0,\"year\");addUnitAlias(\"year\",\"y\");addUnitPriority(\"year\",1);addRegexToken(\"Y\",matchSigned)\n;addRegexToken(\"YY\",match1to2,match2);addRegexToken(\"YYYY\",match1to4,match4);addRegexToken(\"YYYYY\",match1to6,match6);addRegexToken(\"YYYYYY\",match1to6,match6);addParseToken([\"YYYYY\",\"YYYYYY\"],YEAR);addParseToken(\"YYYY\",function(input,array){array[YEAR]=input.length===2?hooks.parseTwoDigitYear(input):toInt(input)});addParseToken(\"YY\",function(input,array){array[YEAR]=hooks.parseTwoDigitYear(input)});addParseToken(\"Y\",function(input,array){array[YEAR]=parseInt(input,10)});function daysInYear(year){return isLeapYear(year)?366:365}function isLeapYear(year){return year%4===0&&year%100!==0||year%400===0}hooks.parseTwoDigitYear=function(input){return toInt(input)+(toInt(input)>68?1900:2e3)};var getSetYear=makeGetSet(\"FullYear\",true);function getIsLeapYear(){return isLeapYear(this.year())}function makeGetSet(unit,keepTime){return function(value){if(value!=null){set$1(this,unit,value);hooks.updateOffset(this,keepTime);return this}else{return get(this,unit)}}}function get(mom,unit){return mom.isValid()?mom._d[\"get\"+(mom._isUTC?\"UTC\":\"\")+unit]():NaN}function set$1(mom,unit,value){if(mom.isValid()&&!isNaN(value)){if(unit===\"FullYear\"&&isLeapYear(mom.year())){mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+unit](value,mom.month(),daysInMonth(value,mom.month()))}else{mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+unit](value)}}}function stringGet(units){units=normalizeUnits(units);if(isFunction(this[units])){return this[units]()}return this}function stringSet(units,value){if(typeof units===\"object\"){units=normalizeObjectUnits(units);var prioritized=getPrioritizedUnits(units);for(var i=0;i<prioritized.length;i++){this[prioritized[i].unit](units[prioritized[i].unit])}}else{units=normalizeUnits(units);if(isFunction(this[units])){return this[units](value)}}return this}function mod(n,x){return(n%x+x)%x}var indexOf;if(Array.prototype.indexOf){indexOf=Array.prototype.indexOf}else{indexOf=function(o){var i;for(i=0;i<this.length;++i){if(this[i]===o){return i}}return-1}}function daysInMonth(year,month){if(isNaN(year)||isNaN(month)){return NaN}var modMonth=mod(month,12);year+=(month-modMonth)/12;return modMonth===1?isLeapYear(year)?29:28:31-modMonth%7%2}addFormatToken(\"M\",[\"MM\",2],\"Mo\",function(){return this.month()+1});addFormatToken(\"MMM\",0,0,function(format){return this.localeData().monthsShort(this,format)});addFormatToken(\"MMMM\",0,0,function(format){return this.localeData().months(this,format)});addUnitAlias(\"month\",\"M\");addUnitPriority(\"month\",8);addRegexToken(\"M\",match1to2);addRegexToken(\"MM\",match1to2,match2);addRegexToken(\"MMM\",function(isStrict,locale){return locale.monthsShortRegex(isStrict)});addRegexToken(\"MMMM\",function(isStrict,locale){return locale.monthsRegex(isStrict)});addParseToken([\"M\",\"MM\"],function(input,array){array[MONTH]=toInt(input)-1});addParseToken([\"MMM\",\"MMMM\"],function(input,array,config,token){var month=config._locale.monthsParse(input,token,config._strict);if(month!=null){array[MONTH]=month}else{getParsingFlags(config).invalidMonth=input}});var MONTHS_IN_FORMAT=/D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/;var defaultLocaleMonths=\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\");function localeMonths(m,format){if(!m){return isArray(this._months)?this._months:this._months[\"standalone\"]}return isArray(this._months)?this._months[m.month()]:this._months[(this._months.isFormat||MONTHS_IN_FORMAT).test(format)?\"format\":\"standalone\"][m.month()]}var defaultLocaleMonthsShort=\"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec\".split(\"_\");function localeMonthsShort(m,format){if(!m){return isArray(this._monthsShort)?this._monthsShort:this._monthsShort[\"standalone\"]}return isArray(this._monthsShort)?this._monthsShort[m.month()]:this._monthsShort[MONTHS_IN_FORMAT.test(format)?\"format\":\"standalone\"][m.month()]}function handleStrictParse(monthName,format,strict){var i,ii,mom,llc=monthName.toLocaleLowerCase();if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];this._shortMonthsParse=[];for(i=0;i<12;++i){mom=createUTC([2e3,i]);this._shortMonthsParse[i]=this.monthsShort(mom,\"\").toLocaleLowerCase();this._longMonthsParse[i]=this.months(mom,\"\").toLocaleLowerCase()}}if(strict){if(format===\"MMM\"){ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null}}else{if(format===\"MMM\"){ii=indexOf.call(this._shortMonthsParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._longMonthsParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null}}}function localeMonthsParse(monthName,format,strict){var i,mom,regex;if(this._monthsParseExact){return handleStrictParse.call(this,monthName,format,strict)}if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];this._shortMonthsParse=[]}for(i=0;i<12;i++){mom=createUTC([2e3,i]);if(strict&&!this._longMonthsParse[i]){this._longMonthsParse[i]=new RegExp(\"^\"+this.months(mom,\"\").replace(\".\",\"\")+\"$\",\"i\");this._shortMonthsParse[i]=new RegExp(\"^\"+this.monthsShort(mom,\"\").replace(\".\",\"\")+\"$\",\"i\")}if(!strict&&!this._monthsParse[i]){regex=\"^\"+this.months(mom,\"\")+\"|^\"+this.monthsShort(mom,\"\");this._monthsParse[i]=new RegExp(regex.replace(\".\",\"\"),\"i\")}if(strict&&format===\"MMMM\"&&this._longMonthsParse[i].test(monthName)){return i}else if(strict&&format===\"MMM\"&&this._shortMonthsParse[i].test(monthName)){return i}else if(!strict&&this._monthsParse[i].test(monthName)){return i}}}function setMonth(mom,value){var dayOfMonth;if(!mom.isValid()){return mom}if(typeof value===\"string\"){if(/^\\d+$/.test(value)){value=toInt(value)}else{value=mom.localeData().monthsParse(value);if(!isNumber(value)){return mom}}}dayOfMonth=Math.min(mom.date(),daysInMonth(mom.year(),value));mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+\"Month\"](value,dayOfMonth);return mom}function getSetMonth(value){if(value!=null){setMonth(this,value);hooks.updateOffset(this,true);return this}else{return get(this,\"Month\")}}function getDaysInMonth(){return daysInMonth(this.year(),this.month())}var defaultMonthsShortRegex=matchWord;function monthsShortRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,\"_monthsRegex\")){computeMonthsParse.call(this)}if(isStrict){return this._monthsShortStrictRegex}else{return this._monthsShortRegex}}else{if(!hasOwnProp(this,\"_monthsShortRegex\")){this._monthsShortRegex=defaultMonthsShortRegex}return this._monthsShortStrictRegex&&isStrict?this._monthsShortStrictRegex:this._monthsShortRegex}}var defaultMonthsRegex=matchWord;function monthsRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,\"_monthsRegex\")){computeMonthsParse.call(this)}if(isStrict){return this._monthsStrictRegex}else{return this._monthsRegex}}else{if(!hasOwnProp(this,\"_monthsRegex\")){this._monthsRegex=defaultMonthsRegex}return this._monthsStrictRegex&&isStrict?this._monthsStrictRegex:this._monthsRegex}}function computeMonthsParse(){function cmpLenRev(a,b){return b.length-a.length}var shortPieces=[],longPieces=[],mixedPieces=[],i,mom;for(i=0;i<12;i++){mom=createUTC([2e3,i]);shortPieces.push(this.monthsShort(mom,\"\"));longPieces.push(this.months(mom,\"\"));mixedPieces.push(this.months(mom,\"\"));mixedPieces.push(this.monthsShort(mom,\"\"))}shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);for(i=0;i<12;i++){shortPieces[i]=regexEscape(shortPieces[i]);longPieces[i]=regexEscape(longPieces[i])}for(i=0;i<24;i++){mixedPieces[i]=regexEscape(mixedPieces[i])}this._monthsRegex=new RegExp(\"^(\"+mixedPieces.join(\"|\")+\")\",\"i\");this._monthsShortRegex=this._monthsRegex;this._monthsStrictRegex=new RegExp(\"^(\"+longPieces.join(\"|\")+\")\",\"i\");this._monthsShortStrictRegex=new RegExp(\"^(\"+shortPieces.join(\"|\")+\")\",\"i\")}function createDate(y,m,d,h,M,s,ms){var date=new Date(y,m,d,h,M,s,ms);if(y<100&&y>=0&&isFinite(date.getFullYear())){date.setFullYear(y)}return date}function createUTCDate(y){var date=new Date(Date.UTC.apply(null,arguments));if(y<100&&y>=0&&isFinite(date.getUTCFullYear())){date.setUTCFullYear(y)}return date}function firstWeekOffset(year,dow,doy){var fwd=7+dow-doy,fwdlw=(7+createUTCDate(year,0,fwd).getUTCDay()-dow)%7;return-fwdlw+fwd-1}function dayOfYearFromWeeks(year,week,weekday,dow,doy){var localWeekday=(7+weekday-dow)%7,weekOffset=firstWeekOffset(year,dow,doy),dayOfYear=1+7*(week-1)+localWeekday+weekOffset,resYear,resDayOfYear;if(dayOfYear<=0){resYear=year-1;resDayOfYear=daysInYear(resYear)+dayOfYear}else if(dayOfYear>daysInYear(year)){resYear=year+1;resDayOfYear=dayOfYear-daysInYear(year)}else{resYear=year;resDayOfYear=dayOfYear}return{year:resYear,dayOfYear:resDayOfYear}}function weekOfYear(mom,dow,doy){var weekOffset=firstWeekOffset(mom.year(),dow,doy),week=Math.floor((mom.dayOfYear()-weekOffset-1)/7)+1,resWeek,resYear;if(week<1){resYear=mom.year()-1;resWeek=week+weeksInYear(resYear,dow,doy)}else if(week>weeksInYear(mom.year(),dow,doy)){resWeek=week-weeksInYear(mom.year(),dow,doy);resYear=mom.year()+1}else{resYear=mom.year();resWeek=week}return{week:resWeek,year:resYear}}function weeksInYear(year,dow,doy){var weekOffset=firstWeekOffset(year,dow,doy),weekOffsetNext=firstWeekOffset(year+1,dow,doy);return(daysInYear(year)-weekOffset+weekOffsetNext)/7}addFormatToken(\"w\",[\"ww\",2],\"wo\",\"week\");addFormatToken(\"W\",[\"WW\",2],\"Wo\",\"isoWeek\");addUnitAlias(\"week\",\"w\");addUnitAlias(\"isoWeek\",\"W\");addUnitPriority(\"week\",5);addUnitPriority(\"isoWeek\",5);addRegexToken(\"w\",match1to2);addRegexToken(\"ww\",match1to2,match2);addRegexToken(\"W\",match1to2);addRegexToken(\"WW\",match1to2,match2);addWeekParseToken([\"w\",\"ww\",\"W\",\"WW\"],function(input,week,config,token){week[token.substr(0,1)]=toInt(input)});function localeWeek(mom){return weekOfYear(mom,this._week.dow,this._week.doy).week}var defaultLocaleWeek={dow:0,doy:6};function localeFirstDayOfWeek(){return this._week.dow}function localeFirstDayOfYear(){return this._week.doy}function getSetWeek(input){var week=this.localeData().week(this);return input==null?week:this.add((input-week)*7,\"d\")}function getSetISOWeek(input){var week=weekOfYear(this,1,4).week;return input==null?week:this.add((input-week)*7,\"d\")}addFormatToken(\"d\",0,\"do\",\"day\");addFormatToken(\"dd\",0,0,function(format){return this.localeData().weekdaysMin(this,format)});addFormatToken(\"ddd\",0,0,function(format){return this.localeData().weekdaysShort(this,format)});addFormatToken(\"dddd\",0,0,function(format){return this.localeData().weekdays(this,format)});addFormatToken(\"e\",0,0,\"weekday\");addFormatToken(\"E\",0,0,\"isoWeekday\");addUnitAlias(\"day\",\"d\");addUnitAlias(\"weekday\",\"e\");addUnitAlias(\"isoWeekday\",\"E\");addUnitPriority(\"day\",11);addUnitPriority(\"weekday\",11);addUnitPriority(\"isoWeekday\",11);addRegexToken(\"d\",match1to2);addRegexToken(\"e\",match1to2);addRegexToken(\"E\",match1to2);addRegexToken(\"dd\",function(isStrict,locale){return locale.weekdaysMinRegex(isStrict)});addRegexToken(\"ddd\",function(isStrict,locale){return locale.weekdaysShortRegex(isStrict)});addRegexToken(\"dddd\",function(isStrict,locale){return locale.weekdaysRegex(isStrict)});addWeekParseToken([\"dd\",\"ddd\",\"dddd\"],function(input,week,config,token){var weekday=config._locale.weekdaysParse(input,token,config._strict);if(weekday!=null){week.d=weekday}else{getParsingFlags(config).invalidWeekday=input}});addWeekParseToken([\"d\",\"e\",\"E\"],function(input,week,config,token){week[token]=toInt(input)});function parseWeekday(input,locale){if(typeof input!==\"string\"){return input}if(!isNaN(input)){return parseInt(input,10)}input=locale.weekdaysParse(input);if(typeof input===\"number\"){return input}return null}function parseIsoWeekday(input,locale){if(typeof input===\"string\"){return locale.weekdaysParse(input)%7||7}return isNaN(input)?null:input}var defaultLocaleWeekdays=\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\");function localeWeekdays(m,format){if(!m){return isArray(this._weekdays)?this._weekdays:this._weekdays[\"standalone\"]}return isArray(this._weekdays)?this._weekdays[m.day()]:this._weekdays[this._weekdays.isFormat.test(format)?\"format\":\"standalone\"][m.day()]}var defaultLocaleWeekdaysShort=\"Sun_Mon_Tue_Wed_Thu_Fri_Sat\".split(\"_\");function localeWeekdaysShort(m){return m?this._weekdaysShort[m.day()]:this._weekdaysShort}var defaultLocaleWeekdaysMin=\"Su_Mo_Tu_We_Th_Fr_Sa\".split(\"_\");function localeWeekdaysMin(m){return m?this._weekdaysMin[m.day()]:this._weekdaysMin}function handleStrictParse$1(weekdayName,format,strict){var i,ii,mom,llc=weekdayName.toLocaleLowerCase();if(!this._weekdaysParse){this._weekdaysParse=[];this._shortWeekdaysParse=[];this._minWeekdaysParse=[];for(i=0;i<7;++i){mom=createUTC([2e3,1]).day(i);this._minWeekdaysParse[i]=this.weekdaysMin(mom,\"\").toLocaleLowerCase();this._shortWeekdaysParse[i]=this.weekdaysShort(mom,\"\").toLocaleLowerCase();this._weekdaysParse[i]=this.weekdays(mom,\"\").toLocaleLowerCase()}}if(strict){if(format===\"dddd\"){ii=indexOf.call(this._weekdaysParse,llc);return ii!==-1?ii:null}else if(format===\"ddd\"){ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}}else{if(format===\"dddd\"){ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}else if(format===\"ddd\"){ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._minWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null}}}function localeWeekdaysParse(weekdayName,format,strict){var i,mom,regex;if(this._weekdaysParseExact){return handleStrictParse$1.call(this,weekdayName,format,strict)}if(!this._weekdaysParse){this._weekdaysParse=[];this._minWeekdaysParse=[];this._shortWeekdaysParse=[];this._fullWeekdaysParse=[]}for(i=0;i<7;i++){mom=createUTC([2e3,1]).day(i);if(strict&&!this._fullWeekdaysParse[i]){this._fullWeekdaysParse[i]=new RegExp(\"^\"+this.weekdays(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\");this._shortWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysShort(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\");this._minWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysMin(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\")}if(!this._weekdaysParse[i]){regex=\"^\"+this.weekdays(mom,\"\")+\"|^\"+this.weekdaysShort(mom,\"\")+\"|^\"+this.weekdaysMin(mom,\"\");this._weekdaysParse[i]=new RegExp(regex.replace(\".\",\"\"),\"i\")}if(strict&&format===\"dddd\"&&this._fullWeekdaysParse[i].test(weekdayName)){return i}else if(strict&&format===\"ddd\"&&this._shortWeekdaysParse[i].test(weekdayName)){return i}else if(strict&&format===\"dd\"&&this._minWeekdaysParse[i].test(weekdayName)){return i}else if(!strict&&this._weekdaysParse[i].test(weekdayName)){return i}}}function getSetDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}var day=this._isUTC?this._d.getUTCDay():this._d.getDay();if(input!=null){input=parseWeekday(input,this.localeData());return this.add(input-day,\"d\")}else{return day}}function getSetLocaleDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}var weekday=(this.day()+7-this.localeData()._week.dow)%7;return input==null?weekday:this.add(input-weekday,\"d\")}function getSetISODayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}if(input!=null){var weekday=parseIsoWeekday(input,this.localeData());return this.day(this.day()%7?weekday:weekday-7)}else{return this.day()||7}}var defaultWeekdaysRegex=matchWord;function weekdaysRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysStrictRegex}else{return this._weekdaysRegex}}else{if(!hasOwnProp(this,\"_weekdaysRegex\")){this._weekdaysRegex=defaultWeekdaysRegex}return this._weekdaysStrictRegex&&isStrict?this._weekdaysStrictRegex:this._weekdaysRegex}}var defaultWeekdaysShortRegex=matchWord;function weekdaysShortRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysShortStrictRegex}else{return this._weekdaysShortRegex}}else{if(!hasOwnProp(this,\"_weekdaysShortRegex\")){this._weekdaysShortRegex=defaultWeekdaysShortRegex}return this._weekdaysShortStrictRegex&&isStrict?this._weekdaysShortStrictRegex:this._weekdaysShortRegex}}var defaultWeekdaysMinRegex=matchWord;function weekdaysMinRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysMinStrictRegex}else{return this._weekdaysMinRegex}}else{if(!hasOwnProp(this,\"_weekdaysMinRegex\")){this._weekdaysMinRegex=defaultWeekdaysMinRegex}return this._weekdaysMinStrictRegex&&isStrict?this._weekdaysMinStrictRegex:this._weekdaysMinRegex}}function computeWeekdaysParse(){function cmpLenRev(a,b){return b.length-a.length}var minPieces=[],shortPieces=[],longPieces=[],mixedPieces=[],i,mom,minp,shortp,longp;for(i=0;i<7;i++){mom=createUTC([2e3,1]).day(i);minp=this.weekdaysMin(mom,\"\");shortp=this.weekdaysShort(mom,\"\");longp=this.weekdays(mom,\"\");minPieces.push(minp);shortPieces.push(shortp);longPieces.push(longp);mixedPieces.push(minp);mixedPieces.push(shortp);mixedPieces.push(longp)}minPieces.sort(cmpLenRev);shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);for(i=0;i<7;i++){shortPieces[i]=regexEscape(shortPieces[i]);longPieces[i]=regexEscape(longPieces[i]);mixedPieces[i]=regexEscape(mixedPieces[i])}this._weekdaysRegex=new RegExp(\"^(\"+mixedPieces.join(\"|\")+\")\",\"i\");this._weekdaysShortRegex=this._weekdaysRegex;this._weekdaysMinRegex=this._weekdaysRegex;this._weekdaysStrictRegex=new RegExp(\"^(\"+longPieces.join(\"|\")+\")\",\"i\");this._weekdaysShortStrictRegex=new RegExp(\"^(\"+shortPieces.join(\"|\")+\")\",\"i\");this._weekdaysMinStrictRegex=new RegExp(\"^(\"+minPieces.join(\"|\")+\")\",\"i\")}function hFormat(){return this.hours()%12||12}function kFormat(){return this.hours()||24}addFormatToken(\"H\",[\"HH\",2],0,\"hour\");addFormatToken(\"h\",[\"hh\",2],0,hFormat);addFormatToken(\"k\",[\"kk\",2],0,kFormat);addFormatToken(\"hmm\",0,0,function(){return\"\"+hFormat.apply(this)+zeroFill(this.minutes(),2)});addFormatToken(\"hmmss\",0,0,function(){return\"\"+hFormat.apply(this)+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)});addFormatToken(\"Hmm\",0,0,function(){return\"\"+this.hours()+zeroFill(this.minutes(),2)});addFormatToken(\"Hmmss\",0,0,function(){return\"\"+this.hours()+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)});function meridiem(token,lowercase){addFormatToken(token,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),lowercase)})}meridiem(\"a\",true);meridiem(\"A\",false);addUnitAlias(\"hour\",\"h\");addUnitPriority(\"hour\",13);function matchMeridiem(isStrict,locale){return locale._meridiemParse}addRegexToken(\"a\",matchMeridiem);addRegexToken(\"A\",matchMeridiem);addRegexToken(\"H\",match1to2);addRegexToken(\"h\",match1to2);addRegexToken(\"k\",match1to2);addRegexToken(\"HH\",match1to2,match2);addRegexToken(\"hh\",match1to2,match2);addRegexToken(\"kk\",match1to2,match2);addRegexToken(\"hmm\",match3to4);addRegexToken(\"hmmss\",match5to6);addRegexToken(\"Hmm\",match3to4);addRegexToken(\"Hmmss\",match5to6);addParseToken([\"H\",\"HH\"],HOUR);addParseToken([\"k\",\"kk\"],function(input,array,config){var kInput=toInt(input);array[HOUR]=kInput===24?0:kInput});addParseToken([\"a\",\"A\"],function(input,array,config){config._isPm=config._locale.isPM(input);config._meridiem=input});addParseToken([\"h\",\"hh\"],function(input,array,config){array[HOUR]=toInt(input);getParsingFlags(config).bigHour=true});addParseToken(\"hmm\",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos));getParsingFlags(config).bigHour=true});addParseToken(\"hmmss\",function(input,array,config){var pos1=input.length-4;var pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2));getParsingFlags(config).bigHour=true});addParseToken(\"Hmm\",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos))});addParseToken(\"Hmmss\",function(input,array,config){var pos1=input.length-4;var pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2))});function localeIsPM(input){return(input+\"\").toLowerCase().charAt(0)===\"p\"}var defaultLocaleMeridiemParse=/[ap]\\.?m?\\.?/i;function localeMeridiem(hours,minutes,isLower){if(hours>11){return isLower?\"pm\":\"PM\"}else{return isLower?\"am\":\"AM\"}}var getSetHour=makeGetSet(\"Hours\",true);var baseConfig={calendar:defaultCalendar,longDateFormat:defaultLongDateFormat,invalidDate:defaultInvalidDate,ordinal:defaultOrdinal,dayOfMonthOrdinalParse:defaultDayOfMonthOrdinalParse,relativeTime:defaultRelativeTime,months:defaultLocaleMonths,monthsShort:defaultLocaleMonthsShort,week:defaultLocaleWeek,weekdays:defaultLocaleWeekdays,weekdaysMin:defaultLocaleWeekdaysMin,weekdaysShort:defaultLocaleWeekdaysShort,meridiemParse:defaultLocaleMeridiemParse};var locales={};var localeFamilies={};var globalLocale;function normalizeLocale(key){return key?key.toLowerCase().replace(\"_\",\"-\"):key}function chooseLocale(names){var i=0,j,next,locale,split;while(i<names.length){split=normalizeLocale(names[i]).split(\"-\");j=split.length;next=normalizeLocale(names[i+1]);next=next?next.split(\"-\"):null;while(j>0){locale=loadLocale(split.slice(0,j).join(\"-\"));if(locale){return locale}if(next&&next.length>=j&&compareArrays(split,next,true)>=j-1){break}j--}i++}return null}function loadLocale(name){var oldLocale=null;if(!locales[name]&&typeof module!==\"undefined\"&&module&&module.exports){try{oldLocale=globalLocale._abbr;var aliasedRequire=require;!function webpackMissingModule(){var e=new Error('Cannot find module \"./locale\"');e.code=\"MODULE_NOT_FOUND\";throw e}();getSetGlobalLocale(oldLocale)}catch(e){}}return locales[name]}function getSetGlobalLocale(key,values){var data;if(key){if(isUndefined(values)){data=getLocale(key)}else{data=defineLocale(key,values)}if(data){globalLocale=data}}return globalLocale._abbr}function defineLocale(name,config){if(config!==null){var parentConfig=baseConfig;config.abbr=name;if(locales[name]!=null){deprecateSimple(\"defineLocaleOverride\",\"use moment.updateLocale(localeName, config) to change \"+\"an existing locale. moment.defineLocale(localeName, \"+\"config) should only be used for creating a new locale \"+\"See http://momentjs.com/guides/#/warnings/define-locale/ for more info.\");parentConfig=locales[name]._config}else if(config.parentLocale!=null){if(locales[config.parentLocale]!=null){parentConfig=locales[config.parentLocale]._config}else{if(!localeFamilies[config.parentLocale]){localeFamilies[config.parentLocale]=[]}localeFamilies[config.parentLocale].push({name:name,config:config});return null}}locales[name]=new Locale(mergeConfigs(parentConfig,config));if(localeFamilies[name]){localeFamilies[name].forEach(function(x){defineLocale(x.name,x.config)})}getSetGlobalLocale(name);return locales[name]}else{delete locales[name];return null}}function updateLocale(name,config){if(config!=null){var locale,parentConfig=baseConfig;if(locales[name]!=null){parentConfig=locales[name]._config}config=mergeConfigs(parentConfig,config);locale=new Locale(config);locale.parentLocale=locales[name];locales[name]=locale;getSetGlobalLocale(name)}else{if(locales[name]!=null){if(locales[name].parentLocale!=null){locales[name]=locales[name].parentLocale}else if(locales[name]!=null){delete locales[name]}}}return locales[name]}function getLocale(key){var locale;if(key&&key._locale&&key._locale._abbr){key=key._locale._abbr}if(!key){return globalLocale}if(!isArray(key)){locale=loadLocale(key);if(locale){return locale}key=[key]}return chooseLocale(key)}function listLocales(){return keys(locales)}function checkOverflow(m){var overflow;var a=m._a;if(a&&getParsingFlags(m).overflow===-2){overflow=a[MONTH]<0||a[MONTH]>11?MONTH:a[DATE]<1||a[DATE]>daysInMonth(a[YEAR],a[MONTH])?DATE:a[HOUR]<0||a[HOUR]>24||a[HOUR]===24&&(a[MINUTE]!==0||a[SECOND]!==0||a[MILLISECOND]!==0)?HOUR:a[MINUTE]<0||a[MINUTE]>59?MINUTE:a[SECOND]<0||a[SECOND]>59?SECOND:a[MILLISECOND]<0||a[MILLISECOND]>999?MILLISECOND:-1;if(getParsingFlags(m)._overflowDayOfYear&&(overflow<YEAR||overflow>DATE)){overflow=DATE}if(getParsingFlags(m)._overflowWeeks&&overflow===-1){overflow=WEEK}if(getParsingFlags(m)._overflowWeekday&&overflow===-1){overflow=WEEKDAY}getParsingFlags(m).overflow=overflow}return m}function defaults(a,b,c){if(a!=null){return a}if(b!=null){return b}return c}function currentDateArray(config){var nowValue=new Date(hooks.now());if(config._useUTC){return[nowValue.getUTCFullYear(),nowValue.getUTCMonth(),nowValue.getUTCDate()]}return[nowValue.getFullYear(),nowValue.getMonth(),nowValue.getDate()]}function configFromArray(config){var i,date,input=[],currentDate,yearToUse;if(config._d){return}currentDate=currentDateArray(config);if(config._w&&config._a[DATE]==null&&config._a[MONTH]==null){dayOfYearFromWeekInfo(config)}if(config._dayOfYear!=null){yearToUse=defaults(config._a[YEAR],currentDate[YEAR]);if(config._dayOfYear>daysInYear(yearToUse)||config._dayOfYear===0){getParsingFlags(config)._overflowDayOfYear=true}date=createUTCDate(yearToUse,0,config._dayOfYear);config._a[MONTH]=date.getUTCMonth();config._a[DATE]=date.getUTCDate()}for(i=0;i<3&&config._a[i]==null;++i){config._a[i]=input[i]=currentDate[i]}for(;i<7;i++){config._a[i]=input[i]=config._a[i]==null?i===2?1:0:config._a[i]}if(config._a[HOUR]===24&&config._a[MINUTE]===0&&config._a[SECOND]===0&&config._a[MILLISECOND]===0){config._nextDay=true;config._a[HOUR]=0}config._d=(config._useUTC?createUTCDate:createDate).apply(null,input);if(config._tzm!=null){config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm)}if(config._nextDay){config._a[HOUR]=24}if(config._w&&typeof config._w.d!==\"undefined\"&&config._w.d!==config._d.getDay()){getParsingFlags(config).weekdayMismatch=true}}function dayOfYearFromWeekInfo(config){var w,weekYear,week,weekday,dow,doy,temp,weekdayOverflow;w=config._w;if(w.GG!=null||w.W!=null||w.E!=null){dow=1;doy=4;weekYear=defaults(w.GG,config._a[YEAR],weekOfYear(createLocal(),1,4).year);week=defaults(w.W,1);weekday=defaults(w.E,1);if(weekday<1||weekday>7){weekdayOverflow=true}}else{dow=config._locale._week.dow;doy=config._locale._week.doy;var curWeek=weekOfYear(createLocal(),dow,doy);weekYear=defaults(w.gg,config._a[YEAR],curWeek.year);week=defaults(w.w,curWeek.week);if(w.d!=null){weekday=w.d;if(weekday<0||weekday>6){weekdayOverflow=true}}else if(w.e!=null){weekday=w.e+dow;if(w.e<0||w.e>6){weekdayOverflow=true}}else{weekday=dow}}if(week<1||week>weeksInYear(weekYear,dow,doy)){getParsingFlags(config)._overflowWeeks=true}else if(weekdayOverflow!=null){getParsingFlags(config)._overflowWeekday=true}else{temp=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy);config._a[YEAR]=temp.year;config._dayOfYear=temp.dayOfYear}}var extendedIsoRegex=/^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;var basicIsoRegex=/^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;var tzRegex=/Z|[+-]\\d\\d(?::?\\d\\d)?/;var isoDates=[[\"YYYYYY-MM-DD\",/[+-]\\d{6}-\\d\\d-\\d\\d/],[\"YYYY-MM-DD\",/\\d{4}-\\d\\d-\\d\\d/],[\"GGGG-[W]WW-E\",/\\d{4}-W\\d\\d-\\d/],[\"GGGG-[W]WW\",/\\d{4}-W\\d\\d/,false],[\"YYYY-DDD\",/\\d{4}-\\d{3}/],[\"YYYY-MM\",/\\d{4}-\\d\\d/,false],[\"YYYYYYMMDD\",/[+-]\\d{10}/],[\"YYYYMMDD\",/\\d{8}/],[\"GGGG[W]WWE\",/\\d{4}W\\d{3}/],[\"GGGG[W]WW\",/\\d{4}W\\d{2}/,false],[\"YYYYDDD\",/\\d{7}/]];var isoTimes=[[\"HH:mm:ss.SSSS\",/\\d\\d:\\d\\d:\\d\\d\\.\\d+/],[\"HH:mm:ss,SSSS\",/\\d\\d:\\d\\d:\\d\\d,\\d+/],[\"HH:mm:ss\",/\\d\\d:\\d\\d:\\d\\d/],[\"HH:mm\",/\\d\\d:\\d\\d/],[\"HHmmss.SSSS\",/\\d\\d\\d\\d\\d\\d\\.\\d+/],[\"HHmmss,SSSS\",/\\d\\d\\d\\d\\d\\d,\\d+/],[\"HHmmss\",/\\d\\d\\d\\d\\d\\d/],[\"HHmm\",/\\d\\d\\d\\d/],[\"HH\",/\\d\\d/]];var aspNetJsonRegex=/^\\/?Date\\((\\-?\\d+)/i;function configFromISO(config){var i,l,string=config._i,match=extendedIsoRegex.exec(string)||basicIsoRegex.exec(string),allowTime,dateFormat,timeFormat,tzFormat;if(match){getParsingFlags(config).iso=true;for(i=0,l=isoDates.length;i<l;i++){if(isoDates[i][1].exec(match[1])){dateFormat=isoDates[i][0];allowTime=isoDates[i][2]!==false;break}}if(dateFormat==null){config._isValid=false;return}if(match[3]){for(i=0,l=isoTimes.length;i<l;i++){if(isoTimes[i][1].exec(match[3])){timeFormat=(match[2]||\" \")+isoTimes[i][0];break}}if(timeFormat==null){config._isValid=false;return}}if(!allowTime&&timeFormat!=null){config._isValid=false;return}if(match[4]){if(tzRegex.exec(match[4])){tzFormat=\"Z\"}else{config._isValid=false;return}}config._f=dateFormat+(timeFormat||\"\")+(tzFormat||\"\");configFromStringAndFormat(config)}else{config._isValid=false}}var rfc2822=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/;function extractFromRFC2822Strings(yearStr,monthStr,dayStr,hourStr,minuteStr,secondStr){var result=[untruncateYear(yearStr),defaultLocaleMonthsShort.indexOf(monthStr),parseInt(dayStr,10),parseInt(hourStr,10),parseInt(minuteStr,10)];if(secondStr){result.push(parseInt(secondStr,10))}return result}function untruncateYear(yearStr){var year=parseInt(yearStr,10);if(year<=49){return 2e3+year}else if(year<=999){return 1900+year}return year}function preprocessRFC2822(s){return s.replace(/\\([^)]*\\)|[\\n\\t]/g,\" \").replace(/(\\s\\s+)/g,\" \").trim()}function checkWeekday(weekdayStr,parsedInput,config){if(weekdayStr){var weekdayProvided=defaultLocaleWeekdaysShort.indexOf(weekdayStr),weekdayActual=new Date(parsedInput[0],parsedInput[1],parsedInput[2]).getDay();if(weekdayProvided!==weekdayActual){getParsingFlags(config).weekdayMismatch=true;config._isValid=false;return false}}return true}var obsOffsets={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function calculateOffset(obsOffset,militaryOffset,numOffset){if(obsOffset){return obsOffsets[obsOffset]}else if(militaryOffset){return 0}else{var hm=parseInt(numOffset,10);var m=hm%100,h=(hm-m)/100;return h*60+m}}function configFromRFC2822(config){var match=rfc2822.exec(preprocessRFC2822(config._i));if(match){var parsedArray=extractFromRFC2822Strings(match[4],match[3],match[2],match[5],match[6],match[7]);if(!checkWeekday(match[1],parsedArray,config)){return}config._a=parsedArray;config._tzm=calculateOffset(match[8],match[9],match[10]);config._d=createUTCDate.apply(null,config._a);config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm);getParsingFlags(config).rfc2822=true}else{config._isValid=false}}function configFromString(config){var matched=aspNetJsonRegex.exec(config._i);if(matched!==null){config._d=new Date(+matched[1]);return}configFromISO(config);if(config._isValid===false){delete config._isValid}else{return}configFromRFC2822(config);if(config._isValid===false){delete config._isValid}else{return}hooks.createFromInputFallback(config)}hooks.createFromInputFallback=deprecate(\"value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), \"+\"which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are \"+\"discouraged and will be removed in an upcoming major release. Please refer to \"+\"http://momentjs.com/guides/#/warnings/js-date/ for more info.\",function(config){config._d=new Date(config._i+(config._useUTC?\" UTC\":\"\"))});hooks.ISO_8601=function(){};hooks.RFC_2822=function(){};function configFromStringAndFormat(config){if(config._f===hooks.ISO_8601){configFromISO(config);return}if(config._f===hooks.RFC_2822){configFromRFC2822(config);return}config._a=[];getParsingFlags(config).empty=true\n;var string=\"\"+config._i,i,parsedInput,tokens,token,skipped,stringLength=string.length,totalParsedInputLength=0;tokens=expandFormat(config._f,config._locale).match(formattingTokens)||[];for(i=0;i<tokens.length;i++){token=tokens[i];parsedInput=(string.match(getParseRegexForToken(token,config))||[])[0];if(parsedInput){skipped=string.substr(0,string.indexOf(parsedInput));if(skipped.length>0){getParsingFlags(config).unusedInput.push(skipped)}string=string.slice(string.indexOf(parsedInput)+parsedInput.length);totalParsedInputLength+=parsedInput.length}if(formatTokenFunctions[token]){if(parsedInput){getParsingFlags(config).empty=false}else{getParsingFlags(config).unusedTokens.push(token)}addTimeToArrayFromToken(token,parsedInput,config)}else if(config._strict&&!parsedInput){getParsingFlags(config).unusedTokens.push(token)}}getParsingFlags(config).charsLeftOver=stringLength-totalParsedInputLength;if(string.length>0){getParsingFlags(config).unusedInput.push(string)}if(config._a[HOUR]<=12&&getParsingFlags(config).bigHour===true&&config._a[HOUR]>0){getParsingFlags(config).bigHour=undefined}getParsingFlags(config).parsedDateParts=config._a.slice(0);getParsingFlags(config).meridiem=config._meridiem;config._a[HOUR]=meridiemFixWrap(config._locale,config._a[HOUR],config._meridiem);configFromArray(config);checkOverflow(config)}function meridiemFixWrap(locale,hour,meridiem){var isPm;if(meridiem==null){return hour}if(locale.meridiemHour!=null){return locale.meridiemHour(hour,meridiem)}else if(locale.isPM!=null){isPm=locale.isPM(meridiem);if(isPm&&hour<12){hour+=12}if(!isPm&&hour===12){hour=0}return hour}else{return hour}}function configFromStringAndArray(config){var tempConfig,bestMoment,scoreToBeat,i,currentScore;if(config._f.length===0){getParsingFlags(config).invalidFormat=true;config._d=new Date(NaN);return}for(i=0;i<config._f.length;i++){currentScore=0;tempConfig=copyConfig({},config);if(config._useUTC!=null){tempConfig._useUTC=config._useUTC}tempConfig._f=config._f[i];configFromStringAndFormat(tempConfig);if(!isValid(tempConfig)){continue}currentScore+=getParsingFlags(tempConfig).charsLeftOver;currentScore+=getParsingFlags(tempConfig).unusedTokens.length*10;getParsingFlags(tempConfig).score=currentScore;if(scoreToBeat==null||currentScore<scoreToBeat){scoreToBeat=currentScore;bestMoment=tempConfig}}extend(config,bestMoment||tempConfig)}function configFromObject(config){if(config._d){return}var i=normalizeObjectUnits(config._i);config._a=map([i.year,i.month,i.day||i.date,i.hour,i.minute,i.second,i.millisecond],function(obj){return obj&&parseInt(obj,10)});configFromArray(config)}function createFromConfig(config){var res=new Moment(checkOverflow(prepareConfig(config)));if(res._nextDay){res.add(1,\"d\");res._nextDay=undefined}return res}function prepareConfig(config){var input=config._i,format=config._f;config._locale=config._locale||getLocale(config._l);if(input===null||format===undefined&&input===\"\"){return createInvalid({nullInput:true})}if(typeof input===\"string\"){config._i=input=config._locale.preparse(input)}if(isMoment(input)){return new Moment(checkOverflow(input))}else if(isDate(input)){config._d=input}else if(isArray(format)){configFromStringAndArray(config)}else if(format){configFromStringAndFormat(config)}else{configFromInput(config)}if(!isValid(config)){config._d=null}return config}function configFromInput(config){var input=config._i;if(isUndefined(input)){config._d=new Date(hooks.now())}else if(isDate(input)){config._d=new Date(input.valueOf())}else if(typeof input===\"string\"){configFromString(config)}else if(isArray(input)){config._a=map(input.slice(0),function(obj){return parseInt(obj,10)});configFromArray(config)}else if(isObject(input)){configFromObject(config)}else if(isNumber(input)){config._d=new Date(input)}else{hooks.createFromInputFallback(config)}}function createLocalOrUTC(input,format,locale,strict,isUTC){var c={};if(locale===true||locale===false){strict=locale;locale=undefined}if(isObject(input)&&isObjectEmpty(input)||isArray(input)&&input.length===0){input=undefined}c._isAMomentObject=true;c._useUTC=c._isUTC=isUTC;c._l=locale;c._i=input;c._f=format;c._strict=strict;return createFromConfig(c)}function createLocal(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,false)}var prototypeMin=deprecate(\"moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other<this?this:other}else{return createInvalid()}});var prototypeMax=deprecate(\"moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other>this?this:other}else{return createInvalid()}});function pickBy(fn,moments){var res,i;if(moments.length===1&&isArray(moments[0])){moments=moments[0]}if(!moments.length){return createLocal()}res=moments[0];for(i=1;i<moments.length;++i){if(!moments[i].isValid()||moments[i][fn](res)){res=moments[i]}}return res}function min(){var args=[].slice.call(arguments,0);return pickBy(\"isBefore\",args)}function max(){var args=[].slice.call(arguments,0);return pickBy(\"isAfter\",args)}var now=function(){return Date.now?Date.now():+new Date};var ordering=[\"year\",\"quarter\",\"month\",\"week\",\"day\",\"hour\",\"minute\",\"second\",\"millisecond\"];function isDurationValid(m){for(var key in m){if(!(indexOf.call(ordering,key)!==-1&&(m[key]==null||!isNaN(m[key])))){return false}}var unitHasDecimal=false;for(var i=0;i<ordering.length;++i){if(m[ordering[i]]){if(unitHasDecimal){return false}if(parseFloat(m[ordering[i]])!==toInt(m[ordering[i]])){unitHasDecimal=true}}}return true}function isValid$1(){return this._isValid}function createInvalid$1(){return createDuration(NaN)}function Duration(duration){var normalizedInput=normalizeObjectUnits(duration),years=normalizedInput.year||0,quarters=normalizedInput.quarter||0,months=normalizedInput.month||0,weeks=normalizedInput.week||0,days=normalizedInput.day||0,hours=normalizedInput.hour||0,minutes=normalizedInput.minute||0,seconds=normalizedInput.second||0,milliseconds=normalizedInput.millisecond||0;this._isValid=isDurationValid(normalizedInput);this._milliseconds=+milliseconds+seconds*1e3+minutes*6e4+hours*1e3*60*60;this._days=+days+weeks*7;this._months=+months+quarters*3+years*12;this._data={};this._locale=getLocale();this._bubble()}function isDuration(obj){return obj instanceof Duration}function absRound(number){if(number<0){return Math.round(-1*number)*-1}else{return Math.round(number)}}function offset(token,separator){addFormatToken(token,0,0,function(){var offset=this.utcOffset();var sign=\"+\";if(offset<0){offset=-offset;sign=\"-\"}return sign+zeroFill(~~(offset/60),2)+separator+zeroFill(~~offset%60,2)})}offset(\"Z\",\":\");offset(\"ZZ\",\"\");addRegexToken(\"Z\",matchShortOffset);addRegexToken(\"ZZ\",matchShortOffset);addParseToken([\"Z\",\"ZZ\"],function(input,array,config){config._useUTC=true;config._tzm=offsetFromString(matchShortOffset,input)});var chunkOffset=/([\\+\\-]|\\d\\d)/gi;function offsetFromString(matcher,string){var matches=(string||\"\").match(matcher);if(matches===null){return null}var chunk=matches[matches.length-1]||[];var parts=(chunk+\"\").match(chunkOffset)||[\"-\",0,0];var minutes=+(parts[1]*60)+toInt(parts[2]);return minutes===0?0:parts[0]===\"+\"?minutes:-minutes}function cloneWithOffset(input,model){var res,diff;if(model._isUTC){res=model.clone();diff=(isMoment(input)||isDate(input)?input.valueOf():createLocal(input).valueOf())-res.valueOf();res._d.setTime(res._d.valueOf()+diff);hooks.updateOffset(res,false);return res}else{return createLocal(input).local()}}function getDateOffset(m){return-Math.round(m._d.getTimezoneOffset()/15)*15}hooks.updateOffset=function(){};function getSetOffset(input,keepLocalTime,keepMinutes){var offset=this._offset||0,localAdjust;if(!this.isValid()){return input!=null?this:NaN}if(input!=null){if(typeof input===\"string\"){input=offsetFromString(matchShortOffset,input);if(input===null){return this}}else if(Math.abs(input)<16&&!keepMinutes){input=input*60}if(!this._isUTC&&keepLocalTime){localAdjust=getDateOffset(this)}this._offset=input;this._isUTC=true;if(localAdjust!=null){this.add(localAdjust,\"m\")}if(offset!==input){if(!keepLocalTime||this._changeInProgress){addSubtract(this,createDuration(input-offset,\"m\"),1,false)}else if(!this._changeInProgress){this._changeInProgress=true;hooks.updateOffset(this,true);this._changeInProgress=null}}return this}else{return this._isUTC?offset:getDateOffset(this)}}function getSetZone(input,keepLocalTime){if(input!=null){if(typeof input!==\"string\"){input=-input}this.utcOffset(input,keepLocalTime);return this}else{return-this.utcOffset()}}function setOffsetToUTC(keepLocalTime){return this.utcOffset(0,keepLocalTime)}function setOffsetToLocal(keepLocalTime){if(this._isUTC){this.utcOffset(0,keepLocalTime);this._isUTC=false;if(keepLocalTime){this.subtract(getDateOffset(this),\"m\")}}return this}function setOffsetToParsedOffset(){if(this._tzm!=null){this.utcOffset(this._tzm,false,true)}else if(typeof this._i===\"string\"){var tZone=offsetFromString(matchOffset,this._i);if(tZone!=null){this.utcOffset(tZone)}else{this.utcOffset(0,true)}}return this}function hasAlignedHourOffset(input){if(!this.isValid()){return false}input=input?createLocal(input).utcOffset():0;return(this.utcOffset()-input)%60===0}function isDaylightSavingTime(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function isDaylightSavingTimeShifted(){if(!isUndefined(this._isDSTShifted)){return this._isDSTShifted}var c={};copyConfig(c,this);c=prepareConfig(c);if(c._a){var other=c._isUTC?createUTC(c._a):createLocal(c._a);this._isDSTShifted=this.isValid()&&compareArrays(c._a,other.toArray())>0}else{this._isDSTShifted=false}return this._isDSTShifted}function isLocal(){return this.isValid()?!this._isUTC:false}function isUtcOffset(){return this.isValid()?this._isUTC:false}function isUtc(){return this.isValid()?this._isUTC&&this._offset===0:false}var aspNetRegex=/^(\\-|\\+)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/;var isoRegex=/^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function createDuration(input,key){var duration=input,match=null,sign,ret,diffRes;if(isDuration(input)){duration={ms:input._milliseconds,d:input._days,M:input._months}}else if(isNumber(input)){duration={};if(key){duration[key]=input}else{duration.milliseconds=input}}else if(!!(match=aspNetRegex.exec(input))){sign=match[1]===\"-\"?-1:1;duration={y:0,d:toInt(match[DATE])*sign,h:toInt(match[HOUR])*sign,m:toInt(match[MINUTE])*sign,s:toInt(match[SECOND])*sign,ms:toInt(absRound(match[MILLISECOND]*1e3))*sign}}else if(!!(match=isoRegex.exec(input))){sign=match[1]===\"-\"?-1:match[1]===\"+\"?1:1;duration={y:parseIso(match[2],sign),M:parseIso(match[3],sign),w:parseIso(match[4],sign),d:parseIso(match[5],sign),h:parseIso(match[6],sign),m:parseIso(match[7],sign),s:parseIso(match[8],sign)}}else if(duration==null){duration={}}else if(typeof duration===\"object\"&&(\"from\"in duration||\"to\"in duration)){diffRes=momentsDifference(createLocal(duration.from),createLocal(duration.to));duration={};duration.ms=diffRes.milliseconds;duration.M=diffRes.months}ret=new Duration(duration);if(isDuration(input)&&hasOwnProp(input,\"_locale\")){ret._locale=input._locale}return ret}createDuration.fn=Duration.prototype;createDuration.invalid=createInvalid$1;function parseIso(inp,sign){var res=inp&&parseFloat(inp.replace(\",\",\".\"));return(isNaN(res)?0:res)*sign}function positiveMomentsDifference(base,other){var res={milliseconds:0,months:0};res.months=other.month()-base.month()+(other.year()-base.year())*12;if(base.clone().add(res.months,\"M\").isAfter(other)){--res.months}res.milliseconds=+other-+base.clone().add(res.months,\"M\");return res}function momentsDifference(base,other){var res;if(!(base.isValid()&&other.isValid())){return{milliseconds:0,months:0}}other=cloneWithOffset(other,base);if(base.isBefore(other)){res=positiveMomentsDifference(base,other)}else{res=positiveMomentsDifference(other,base);res.milliseconds=-res.milliseconds;res.months=-res.months}return res}function createAdder(direction,name){return function(val,period){var dur,tmp;if(period!==null&&!isNaN(+period)){deprecateSimple(name,\"moment().\"+name+\"(period, number) is deprecated. Please use moment().\"+name+\"(number, period). \"+\"See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.\");tmp=val;val=period;period=tmp}val=typeof val===\"string\"?+val:val;dur=createDuration(val,period);addSubtract(this,dur,direction);return this}}function addSubtract(mom,duration,isAdding,updateOffset){var milliseconds=duration._milliseconds,days=absRound(duration._days),months=absRound(duration._months);if(!mom.isValid()){return}updateOffset=updateOffset==null?true:updateOffset;if(months){setMonth(mom,get(mom,\"Month\")+months*isAdding)}if(days){set$1(mom,\"Date\",get(mom,\"Date\")+days*isAdding)}if(milliseconds){mom._d.setTime(mom._d.valueOf()+milliseconds*isAdding)}if(updateOffset){hooks.updateOffset(mom,days||months)}}var add=createAdder(1,\"add\");var subtract=createAdder(-1,\"subtract\");function getCalendarFormat(myMoment,now){var diff=myMoment.diff(now,\"days\",true);return diff<-6?\"sameElse\":diff<-1?\"lastWeek\":diff<0?\"lastDay\":diff<1?\"sameDay\":diff<2?\"nextDay\":diff<7?\"nextWeek\":\"sameElse\"}function calendar$1(time,formats){var now=time||createLocal(),sod=cloneWithOffset(now,this).startOf(\"day\"),format=hooks.calendarFormat(this,sod)||\"sameElse\";var output=formats&&(isFunction(formats[format])?formats[format].call(this,now):formats[format]);return this.format(output||this.localeData().calendar(format,this,createLocal(now)))}function clone(){return new Moment(this)}function isAfter(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(!isUndefined(units)?units:\"millisecond\");if(units===\"millisecond\"){return this.valueOf()>localInput.valueOf()}else{return localInput.valueOf()<this.clone().startOf(units).valueOf()}}function isBefore(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(!isUndefined(units)?units:\"millisecond\");if(units===\"millisecond\"){return this.valueOf()<localInput.valueOf()}else{return this.clone().endOf(units).valueOf()<localInput.valueOf()}}function isBetween(from,to,units,inclusivity){inclusivity=inclusivity||\"()\";return(inclusivity[0]===\"(\"?this.isAfter(from,units):!this.isBefore(from,units))&&(inclusivity[1]===\")\"?this.isBefore(to,units):!this.isAfter(to,units))}function isSame(input,units){var localInput=isMoment(input)?input:createLocal(input),inputMs;if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(units||\"millisecond\");if(units===\"millisecond\"){return this.valueOf()===localInput.valueOf()}else{inputMs=localInput.valueOf();return this.clone().startOf(units).valueOf()<=inputMs&&inputMs<=this.clone().endOf(units).valueOf()}}function isSameOrAfter(input,units){return this.isSame(input,units)||this.isAfter(input,units)}function isSameOrBefore(input,units){return this.isSame(input,units)||this.isBefore(input,units)}function diff(input,units,asFloat){var that,zoneDelta,delta,output;if(!this.isValid()){return NaN}that=cloneWithOffset(input,this);if(!that.isValid()){return NaN}zoneDelta=(that.utcOffset()-this.utcOffset())*6e4;units=normalizeUnits(units);switch(units){case\"year\":output=monthDiff(this,that)/12;break;case\"month\":output=monthDiff(this,that);break;case\"quarter\":output=monthDiff(this,that)/3;break;case\"second\":output=(this-that)/1e3;break;case\"minute\":output=(this-that)/6e4;break;case\"hour\":output=(this-that)/36e5;break;case\"day\":output=(this-that-zoneDelta)/864e5;break;case\"week\":output=(this-that-zoneDelta)/6048e5;break;default:output=this-that}return asFloat?output:absFloor(output)}function monthDiff(a,b){var wholeMonthDiff=(b.year()-a.year())*12+(b.month()-a.month()),anchor=a.clone().add(wholeMonthDiff,\"months\"),anchor2,adjust;if(b-anchor<0){anchor2=a.clone().add(wholeMonthDiff-1,\"months\");adjust=(b-anchor)/(anchor-anchor2)}else{anchor2=a.clone().add(wholeMonthDiff+1,\"months\");adjust=(b-anchor)/(anchor2-anchor)}return-(wholeMonthDiff+adjust)||0}hooks.defaultFormat=\"YYYY-MM-DDTHH:mm:ssZ\";hooks.defaultFormatUtc=\"YYYY-MM-DDTHH:mm:ss[Z]\";function toString(){return this.clone().locale(\"en\").format(\"ddd MMM DD YYYY HH:mm:ss [GMT]ZZ\")}function toISOString(){if(!this.isValid()){return null}var m=this.clone().utc();if(m.year()<0||m.year()>9999){return formatMoment(m,\"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]\")}if(isFunction(Date.prototype.toISOString)){return this.toDate().toISOString()}return formatMoment(m,\"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]\")}function inspect(){if(!this.isValid()){return\"moment.invalid(/* \"+this._i+\" */)\"}var func=\"moment\";var zone=\"\";if(!this.isLocal()){func=this.utcOffset()===0?\"moment.utc\":\"moment.parseZone\";zone=\"Z\"}var prefix=\"[\"+func+'(\"]';var year=0<=this.year()&&this.year()<=9999?\"YYYY\":\"YYYYYY\";var datetime=\"-MM-DD[T]HH:mm:ss.SSS\";var suffix=zone+'[\")]';return this.format(prefix+year+datetime+suffix)}function format(inputString){if(!inputString){inputString=this.isUtc()?hooks.defaultFormatUtc:hooks.defaultFormat}var output=formatMoment(this,inputString);return this.localeData().postformat(output)}function from(time,withoutSuffix){if(this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())){return createDuration({to:this,from:time}).locale(this.locale()).humanize(!withoutSuffix)}else{return this.localeData().invalidDate()}}function fromNow(withoutSuffix){return this.from(createLocal(),withoutSuffix)}function to(time,withoutSuffix){if(this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())){return createDuration({from:this,to:time}).locale(this.locale()).humanize(!withoutSuffix)}else{return this.localeData().invalidDate()}}function toNow(withoutSuffix){return this.to(createLocal(),withoutSuffix)}function locale(key){var newLocaleData;if(key===undefined){return this._locale._abbr}else{newLocaleData=getLocale(key);if(newLocaleData!=null){this._locale=newLocaleData}return this}}var lang=deprecate(\"moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.\",function(key){if(key===undefined){return this.localeData()}else{return this.locale(key)}});function localeData(){return this._locale}function startOf(units){units=normalizeUnits(units);switch(units){case\"year\":this.month(0);case\"quarter\":case\"month\":this.date(1);case\"week\":case\"isoWeek\":case\"day\":case\"date\":this.hours(0);case\"hour\":this.minutes(0);case\"minute\":this.seconds(0);case\"second\":this.milliseconds(0)}if(units===\"week\"){this.weekday(0)}if(units===\"isoWeek\"){this.isoWeekday(1)}if(units===\"quarter\"){this.month(Math.floor(this.month()/3)*3)}return this}function endOf(units){units=normalizeUnits(units);if(units===undefined||units===\"millisecond\"){return this}if(units===\"date\"){units=\"day\"}return this.startOf(units).add(1,units===\"isoWeek\"?\"week\":units).subtract(1,\"ms\")}function valueOf(){return this._d.valueOf()-(this._offset||0)*6e4}function unix(){return Math.floor(this.valueOf()/1e3)}function toDate(){return new Date(this.valueOf())}function toArray(){var m=this;return[m.year(),m.month(),m.date(),m.hour(),m.minute(),m.second(),m.millisecond()]}function toObject(){var m=this;return{years:m.year(),months:m.month(),date:m.date(),hours:m.hours(),minutes:m.minutes(),seconds:m.seconds(),milliseconds:m.milliseconds()}}function toJSON(){return this.isValid()?this.toISOString():null}function isValid$2(){return isValid(this)}function parsingFlags(){return extend({},getParsingFlags(this))}function invalidAt(){return getParsingFlags(this).overflow}function creationData(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}addFormatToken(0,[\"gg\",2],0,function(){return this.weekYear()%100});addFormatToken(0,[\"GG\",2],0,function(){return this.isoWeekYear()%100});function addWeekYearFormatToken(token,getter){addFormatToken(0,[token,token.length],0,getter)}addWeekYearFormatToken(\"gggg\",\"weekYear\");addWeekYearFormatToken(\"ggggg\",\"weekYear\");addWeekYearFormatToken(\"GGGG\",\"isoWeekYear\");addWeekYearFormatToken(\"GGGGG\",\"isoWeekYear\");addUnitAlias(\"weekYear\",\"gg\");addUnitAlias(\"isoWeekYear\",\"GG\");addUnitPriority(\"weekYear\",1);addUnitPriority(\"isoWeekYear\",1);addRegexToken(\"G\",matchSigned);addRegexToken(\"g\",matchSigned);addRegexToken(\"GG\",match1to2,match2);addRegexToken(\"gg\",match1to2,match2);addRegexToken(\"GGGG\",match1to4,match4);addRegexToken(\"gggg\",match1to4,match4);addRegexToken(\"GGGGG\",match1to6,match6);addRegexToken(\"ggggg\",match1to6,match6);addWeekParseToken([\"gggg\",\"ggggg\",\"GGGG\",\"GGGGG\"],function(input,week,config,token){week[token.substr(0,2)]=toInt(input)});addWeekParseToken([\"gg\",\"GG\"],function(input,week,config,token){week[token]=hooks.parseTwoDigitYear(input)});function getSetWeekYear(input){return getSetWeekYearHelper.call(this,input,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function getSetISOWeekYear(input){return getSetWeekYearHelper.call(this,input,this.isoWeek(),this.isoWeekday(),1,4)}function getISOWeeksInYear(){return weeksInYear(this.year(),1,4)}function getWeeksInYear(){var weekInfo=this.localeData()._week;return weeksInYear(this.year(),weekInfo.dow,weekInfo.doy)}function getSetWeekYearHelper(input,week,weekday,dow,doy){var weeksTarget;if(input==null){return weekOfYear(this,dow,doy).year}else{weeksTarget=weeksInYear(input,dow,doy);if(week>weeksTarget){week=weeksTarget}return setWeekAll.call(this,input,week,weekday,dow,doy)}}function setWeekAll(weekYear,week,weekday,dow,doy){var dayOfYearData=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy),date=createUTCDate(dayOfYearData.year,0,dayOfYearData.dayOfYear);this.year(date.getUTCFullYear());this.month(date.getUTCMonth());this.date(date.getUTCDate());return this}addFormatToken(\"Q\",0,\"Qo\",\"quarter\");addUnitAlias(\"quarter\",\"Q\");addUnitPriority(\"quarter\",7);addRegexToken(\"Q\",match1);addParseToken(\"Q\",function(input,array){array[MONTH]=(toInt(input)-1)*3});function getSetQuarter(input){return input==null?Math.ceil((this.month()+1)/3):this.month((input-1)*3+this.month()%3)}addFormatToken(\"D\",[\"DD\",2],\"Do\",\"date\");addUnitAlias(\"date\",\"D\");addUnitPriority(\"date\",9);addRegexToken(\"D\",match1to2);addRegexToken(\"DD\",match1to2,match2);addRegexToken(\"Do\",function(isStrict,locale){return isStrict?locale._dayOfMonthOrdinalParse||locale._ordinalParse:locale._dayOfMonthOrdinalParseLenient});addParseToken([\"D\",\"DD\"],DATE);addParseToken(\"Do\",function(input,array){array[DATE]=toInt(input.match(match1to2)[0],10)});var getSetDayOfMonth=makeGetSet(\"Date\",true);addFormatToken(\"DDD\",[\"DDDD\",3],\"DDDo\",\"dayOfYear\");addUnitAlias(\"dayOfYear\",\"DDD\");addUnitPriority(\"dayOfYear\",4);addRegexToken(\"DDD\",match1to3);addRegexToken(\"DDDD\",match3);addParseToken([\"DDD\",\"DDDD\"],function(input,array,config){config._dayOfYear=toInt(input)});function getSetDayOfYear(input){var dayOfYear=Math.round((this.clone().startOf(\"day\")-this.clone().startOf(\"year\"))/864e5)+1;return input==null?dayOfYear:this.add(input-dayOfYear,\"d\")}addFormatToken(\"m\",[\"mm\",2],0,\"minute\");addUnitAlias(\"minute\",\"m\");addUnitPriority(\"minute\",14);addRegexToken(\"m\",match1to2);addRegexToken(\"mm\",match1to2,match2);addParseToken([\"m\",\"mm\"],MINUTE);var getSetMinute=makeGetSet(\"Minutes\",false);addFormatToken(\"s\",[\"ss\",2],0,\"second\");addUnitAlias(\"second\",\"s\");addUnitPriority(\"second\",15);addRegexToken(\"s\",match1to2);addRegexToken(\"ss\",match1to2,match2);addParseToken([\"s\",\"ss\"],SECOND);var getSetSecond=makeGetSet(\"Seconds\",false);addFormatToken(\"S\",0,0,function(){return~~(this.millisecond()/100)});addFormatToken(0,[\"SS\",2],0,function(){return~~(this.millisecond()/10)});addFormatToken(0,[\"SSS\",3],0,\"millisecond\");addFormatToken(0,[\"SSSS\",4],0,function(){return this.millisecond()*10});addFormatToken(0,[\"SSSSS\",5],0,function(){return this.millisecond()*100});addFormatToken(0,[\"SSSSSS\",6],0,function(){return this.millisecond()*1e3});addFormatToken(0,[\"SSSSSSS\",7],0,function(){return this.millisecond()*1e4});addFormatToken(0,[\"SSSSSSSS\",8],0,function(){return this.millisecond()*1e5});addFormatToken(0,[\"SSSSSSSSS\",9],0,function(){return this.millisecond()*1e6});addUnitAlias(\"millisecond\",\"ms\");addUnitPriority(\"millisecond\",16);addRegexToken(\"S\",match1to3,match1);addRegexToken(\"SS\",match1to3,match2);addRegexToken(\"SSS\",match1to3,match3);var token;for(token=\"SSSS\";token.length<=9;token+=\"S\"){addRegexToken(token,matchUnsigned)}function parseMs(input,array){array[MILLISECOND]=toInt((\"0.\"+input)*1e3)}for(token=\"S\";token.length<=9;token+=\"S\"){addParseToken(token,parseMs)}var getSetMillisecond=makeGetSet(\"Milliseconds\",false);addFormatToken(\"z\",0,0,\"zoneAbbr\");addFormatToken(\"zz\",0,0,\"zoneName\");function getZoneAbbr(){return this._isUTC?\"UTC\":\"\"}function getZoneName(){return this._isUTC?\"Coordinated Universal Time\":\"\"}var proto=Moment.prototype;proto.add=add;proto.calendar=calendar$1;proto.clone=clone;proto.diff=diff;proto.endOf=endOf;proto.format=format;proto.from=from;proto.fromNow=fromNow;proto.to=to;proto.toNow=toNow;proto.get=stringGet;proto.invalidAt=invalidAt;proto.isAfter=isAfter;proto.isBefore=isBefore;proto.isBetween=isBetween;proto.isSame=isSame;proto.isSameOrAfter=isSameOrAfter;proto.isSameOrBefore=isSameOrBefore;proto.isValid=isValid$2;proto.lang=lang;proto.locale=locale;proto.localeData=localeData;proto.max=prototypeMax;proto.min=prototypeMin;proto.parsingFlags=parsingFlags;proto.set=stringSet;proto.startOf=startOf;proto.subtract=subtract;proto.toArray=toArray;proto.toObject=toObject;proto.toDate=toDate;proto.toISOString=toISOString;proto.inspect=inspect;proto.toJSON=toJSON;proto.toString=toString;proto.unix=unix;proto.valueOf=valueOf;proto.creationData=creationData;proto.year=getSetYear;proto.isLeapYear=getIsLeapYear;proto.weekYear=getSetWeekYear;proto.isoWeekYear=getSetISOWeekYear;proto.quarter=proto.quarters=getSetQuarter;proto.month=getSetMonth;proto.daysInMonth=getDaysInMonth;proto.week=proto.weeks=getSetWeek;proto.isoWeek=proto.isoWeeks=getSetISOWeek;proto.weeksInYear=getWeeksInYear;proto.isoWeeksInYear=getISOWeeksInYear;proto.date=getSetDayOfMonth;proto.day=proto.days=getSetDayOfWeek;proto.weekday=getSetLocaleDayOfWeek;proto.isoWeekday=getSetISODayOfWeek;proto.dayOfYear=getSetDayOfYear;proto.hour=proto.hours=getSetHour;proto.minute=proto.minutes=getSetMinute;proto.second=proto.seconds=getSetSecond;proto.millisecond=proto.milliseconds=getSetMillisecond;proto.utcOffset=getSetOffset;proto.utc=setOffsetToUTC;proto.local=setOffsetToLocal;proto.parseZone=setOffsetToParsedOffset;proto.hasAlignedHourOffset=hasAlignedHourOffset;proto.isDST=isDaylightSavingTime;proto.isLocal=isLocal;proto.isUtcOffset=isUtcOffset;proto.isUtc=isUtc;proto.isUTC=isUtc;proto.zoneAbbr=getZoneAbbr;proto.zoneName=getZoneName;proto.dates=deprecate(\"dates accessor is deprecated. Use date instead.\",getSetDayOfMonth);proto.months=deprecate(\"months accessor is deprecated. Use month instead\",getSetMonth);proto.years=deprecate(\"years accessor is deprecated. Use year instead\",getSetYear);proto.zone=deprecate(\"moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/\",getSetZone);proto.isDSTShifted=deprecate(\"isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information\",isDaylightSavingTimeShifted);function createUnix(input){return createLocal(input*1e3)}function createInZone(){return createLocal.apply(null,arguments).parseZone()}function preParsePostFormat(string){return string}var proto$1=Locale.prototype;proto$1.calendar=calendar;proto$1.longDateFormat=longDateFormat;proto$1.invalidDate=invalidDate;proto$1.ordinal=ordinal;proto$1.preparse=preParsePostFormat;proto$1.postformat=preParsePostFormat;proto$1.relativeTime=relativeTime;proto$1.pastFuture=pastFuture;proto$1.set=set;proto$1.months=localeMonths;proto$1.monthsShort=localeMonthsShort;proto$1.monthsParse=localeMonthsParse;proto$1.monthsRegex=monthsRegex;proto$1.monthsShortRegex=monthsShortRegex;proto$1.week=localeWeek;proto$1.firstDayOfYear=localeFirstDayOfYear;proto$1.firstDayOfWeek=localeFirstDayOfWeek;proto$1.weekdays=localeWeekdays;proto$1.weekdaysMin=localeWeekdaysMin;proto$1.weekdaysShort=localeWeekdaysShort;proto$1.weekdaysParse=localeWeekdaysParse;proto$1.weekdaysRegex=weekdaysRegex;proto$1.weekdaysShortRegex=weekdaysShortRegex;proto$1.weekdaysMinRegex=weekdaysMinRegex;proto$1.isPM=localeIsPM;proto$1.meridiem=localeMeridiem;function get$1(format,index,field,setter){var locale=getLocale();var utc=createUTC().set(setter,index);return locale[field](utc,format)}function listMonthsImpl(format,index,field){if(isNumber(format)){index=format;format=undefined}format=format||\"\";if(index!=null){return get$1(format,index,field,\"month\")}var i;var out=[];for(i=0;i<12;i++){out[i]=get$1(format,i,field,\"month\")}return out}function listWeekdaysImpl(localeSorted,format,index,field){if(typeof localeSorted===\"boolean\"){if(isNumber(format)){index=format;format=undefined}format=format||\"\"}else{format=localeSorted;index=format;localeSorted=false;if(isNumber(format)){index=format;format=undefined}format=format||\"\"}var locale=getLocale(),shift=localeSorted?locale._week.dow:0;if(index!=null){return get$1(format,(index+shift)%7,field,\"day\")}var i;var out=[];for(i=0;i<7;i++){out[i]=get$1(format,(i+shift)%7,field,\"day\")}return out}function listMonths(format,index){return listMonthsImpl(format,index,\"months\")}function listMonthsShort(format,index){return listMonthsImpl(format,index,\"monthsShort\")}function listWeekdays(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdays\")}function listWeekdaysShort(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdaysShort\")}function listWeekdaysMin(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdaysMin\")}getSetGlobalLocale(\"en\",{dayOfMonthOrdinalParse:/\\d{1,2}(th|st|nd|rd)/,ordinal:function(number){var b=number%10,output=toInt(number%100/10)===1?\"th\":b===1?\"st\":b===2?\"nd\":b===3?\"rd\":\"th\";return number+output}});hooks.lang=deprecate(\"moment.lang is deprecated. Use moment.locale instead.\",getSetGlobalLocale);hooks.langData=deprecate(\"moment.langData is deprecated. Use moment.localeData instead.\",getLocale);var mathAbs=Math.abs;function abs(){var data=this._data;this._milliseconds=mathAbs(this._milliseconds);this._days=mathAbs(this._days);this._months=mathAbs(this._months);data.milliseconds=mathAbs(data.milliseconds);data.seconds=mathAbs(data.seconds);data.minutes=mathAbs(data.minutes);data.hours=mathAbs(data.hours);data.months=mathAbs(data.months);data.years=mathAbs(data.years);return this}function addSubtract$1(duration,input,value,direction){var other=createDuration(input,value);duration._milliseconds+=direction*other._milliseconds;duration._days+=direction*other._days;duration._months+=direction*other._months;return duration._bubble()}function add$1(input,value){return addSubtract$1(this,input,value,1)}function subtract$1(input,value){return addSubtract$1(this,input,value,-1)}function absCeil(number){if(number<0){return Math.floor(number)}else{return Math.ceil(number)}}function bubble(){var milliseconds=this._milliseconds;var days=this._days;var months=this._months;var data=this._data;var seconds,minutes,hours,years,monthsFromDays;if(!(milliseconds>=0&&days>=0&&months>=0||milliseconds<=0&&days<=0&&months<=0)){milliseconds+=absCeil(monthsToDays(months)+days)*864e5;days=0;months=0}data.milliseconds=milliseconds%1e3;seconds=absFloor(milliseconds/1e3);data.seconds=seconds%60;minutes=absFloor(seconds/60)\n;data.minutes=minutes%60;hours=absFloor(minutes/60);data.hours=hours%24;days+=absFloor(hours/24);monthsFromDays=absFloor(daysToMonths(days));months+=monthsFromDays;days-=absCeil(monthsToDays(monthsFromDays));years=absFloor(months/12);months%=12;data.days=days;data.months=months;data.years=years;return this}function daysToMonths(days){return days*4800/146097}function monthsToDays(months){return months*146097/4800}function as(units){if(!this.isValid()){return NaN}var days;var months;var milliseconds=this._milliseconds;units=normalizeUnits(units);if(units===\"month\"||units===\"year\"){days=this._days+milliseconds/864e5;months=this._months+daysToMonths(days);return units===\"month\"?months:months/12}else{days=this._days+Math.round(monthsToDays(this._months));switch(units){case\"week\":return days/7+milliseconds/6048e5;case\"day\":return days+milliseconds/864e5;case\"hour\":return days*24+milliseconds/36e5;case\"minute\":return days*1440+milliseconds/6e4;case\"second\":return days*86400+milliseconds/1e3;case\"millisecond\":return Math.floor(days*864e5)+milliseconds;default:throw new Error(\"Unknown unit \"+units)}}}function valueOf$1(){if(!this.isValid()){return NaN}return this._milliseconds+this._days*864e5+this._months%12*2592e6+toInt(this._months/12)*31536e6}function makeAs(alias){return function(){return this.as(alias)}}var asMilliseconds=makeAs(\"ms\");var asSeconds=makeAs(\"s\");var asMinutes=makeAs(\"m\");var asHours=makeAs(\"h\");var asDays=makeAs(\"d\");var asWeeks=makeAs(\"w\");var asMonths=makeAs(\"M\");var asYears=makeAs(\"y\");function clone$1(){return createDuration(this)}function get$2(units){units=normalizeUnits(units);return this.isValid()?this[units+\"s\"]():NaN}function makeGetter(name){return function(){return this.isValid()?this._data[name]:NaN}}var milliseconds=makeGetter(\"milliseconds\");var seconds=makeGetter(\"seconds\");var minutes=makeGetter(\"minutes\");var hours=makeGetter(\"hours\");var days=makeGetter(\"days\");var months=makeGetter(\"months\");var years=makeGetter(\"years\");function weeks(){return absFloor(this.days()/7)}var round=Math.round;var thresholds={ss:44,s:45,m:45,h:22,d:26,M:11};function substituteTimeAgo(string,number,withoutSuffix,isFuture,locale){return locale.relativeTime(number||1,!!withoutSuffix,string,isFuture)}function relativeTime$1(posNegDuration,withoutSuffix,locale){var duration=createDuration(posNegDuration).abs();var seconds=round(duration.as(\"s\"));var minutes=round(duration.as(\"m\"));var hours=round(duration.as(\"h\"));var days=round(duration.as(\"d\"));var months=round(duration.as(\"M\"));var years=round(duration.as(\"y\"));var a=seconds<=thresholds.ss&&[\"s\",seconds]||seconds<thresholds.s&&[\"ss\",seconds]||minutes<=1&&[\"m\"]||minutes<thresholds.m&&[\"mm\",minutes]||hours<=1&&[\"h\"]||hours<thresholds.h&&[\"hh\",hours]||days<=1&&[\"d\"]||days<thresholds.d&&[\"dd\",days]||months<=1&&[\"M\"]||months<thresholds.M&&[\"MM\",months]||years<=1&&[\"y\"]||[\"yy\",years];a[2]=withoutSuffix;a[3]=+posNegDuration>0;a[4]=locale;return substituteTimeAgo.apply(null,a)}function getSetRelativeTimeRounding(roundingFunction){if(roundingFunction===undefined){return round}if(typeof roundingFunction===\"function\"){round=roundingFunction;return true}return false}function getSetRelativeTimeThreshold(threshold,limit){if(thresholds[threshold]===undefined){return false}if(limit===undefined){return thresholds[threshold]}thresholds[threshold]=limit;if(threshold===\"s\"){thresholds.ss=limit-1}return true}function humanize(withSuffix){if(!this.isValid()){return this.localeData().invalidDate()}var locale=this.localeData();var output=relativeTime$1(this,!withSuffix,locale);if(withSuffix){output=locale.pastFuture(+this,output)}return locale.postformat(output)}var abs$1=Math.abs;function sign(x){return(x>0)-(x<0)||+x}function toISOString$1(){if(!this.isValid()){return this.localeData().invalidDate()}var seconds=abs$1(this._milliseconds)/1e3;var days=abs$1(this._days);var months=abs$1(this._months);var minutes,hours,years;minutes=absFloor(seconds/60);hours=absFloor(minutes/60);seconds%=60;minutes%=60;years=absFloor(months/12);months%=12;var Y=years;var M=months;var D=days;var h=hours;var m=minutes;var s=seconds?seconds.toFixed(3).replace(/\\.?0+$/,\"\"):\"\";var total=this.asSeconds();if(!total){return\"P0D\"}var totalSign=total<0?\"-\":\"\";var ymSign=sign(this._months)!==sign(total)?\"-\":\"\";var daysSign=sign(this._days)!==sign(total)?\"-\":\"\";var hmsSign=sign(this._milliseconds)!==sign(total)?\"-\":\"\";return totalSign+\"P\"+(Y?ymSign+Y+\"Y\":\"\")+(M?ymSign+M+\"M\":\"\")+(D?daysSign+D+\"D\":\"\")+(h||m||s?\"T\":\"\")+(h?hmsSign+h+\"H\":\"\")+(m?hmsSign+m+\"M\":\"\")+(s?hmsSign+s+\"S\":\"\")}var proto$2=Duration.prototype;proto$2.isValid=isValid$1;proto$2.abs=abs;proto$2.add=add$1;proto$2.subtract=subtract$1;proto$2.as=as;proto$2.asMilliseconds=asMilliseconds;proto$2.asSeconds=asSeconds;proto$2.asMinutes=asMinutes;proto$2.asHours=asHours;proto$2.asDays=asDays;proto$2.asWeeks=asWeeks;proto$2.asMonths=asMonths;proto$2.asYears=asYears;proto$2.valueOf=valueOf$1;proto$2._bubble=bubble;proto$2.clone=clone$1;proto$2.get=get$2;proto$2.milliseconds=milliseconds;proto$2.seconds=seconds;proto$2.minutes=minutes;proto$2.hours=hours;proto$2.days=days;proto$2.weeks=weeks;proto$2.months=months;proto$2.years=years;proto$2.humanize=humanize;proto$2.toISOString=toISOString$1;proto$2.toString=toISOString$1;proto$2.toJSON=toISOString$1;proto$2.locale=locale;proto$2.localeData=localeData;proto$2.toIsoString=deprecate(\"toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)\",toISOString$1);proto$2.lang=lang;addFormatToken(\"X\",0,0,\"unix\");addFormatToken(\"x\",0,0,\"valueOf\");addRegexToken(\"x\",matchSigned);addRegexToken(\"X\",matchTimestamp);addParseToken(\"X\",function(input,array,config){config._d=new Date(parseFloat(input,10)*1e3)});addParseToken(\"x\",function(input,array,config){config._d=new Date(toInt(input))});hooks.version=\"2.19.1\";setHookCallback(createLocal);hooks.fn=proto;hooks.min=min;hooks.max=max;hooks.now=now;hooks.utc=createUTC;hooks.unix=createUnix;hooks.months=listMonths;hooks.isDate=isDate;hooks.locale=getSetGlobalLocale;hooks.invalid=createInvalid;hooks.duration=createDuration;hooks.isMoment=isMoment;hooks.weekdays=listWeekdays;hooks.parseZone=createInZone;hooks.localeData=getLocale;hooks.isDuration=isDuration;hooks.monthsShort=listMonthsShort;hooks.weekdaysMin=listWeekdaysMin;hooks.defineLocale=defineLocale;hooks.updateLocale=updateLocale;hooks.locales=listLocales;hooks.weekdaysShort=listWeekdaysShort;hooks.normalizeUnits=normalizeUnits;hooks.relativeTimeRounding=getSetRelativeTimeRounding;hooks.relativeTimeThreshold=getSetRelativeTimeThreshold;hooks.calendarFormat=getCalendarFormat;hooks.prototype=proto;return hooks})}).call(exports,__webpack_require__(155)(module))},function(module,exports){module.exports=function(module){if(!module.webpackPolyfill){module.deprecate=function(){};module.paths=[];if(!module.children)module.children=[];Object.defineProperty(module,\"loaded\",{enumerable:true,get:function(){return module.l}});Object.defineProperty(module,\"id\",{enumerable:true,get:function(){return module.i}});module.webpackPolyfill=1}return module}},function(module,exports){function webpackEmptyContext(req){throw new Error(\"Cannot find module '\"+req+\"'.\")}webpackEmptyContext.keys=function(){return[]};webpackEmptyContext.resolve=webpackEmptyContext;module.exports=webpackEmptyContext;webpackEmptyContext.id=156},function(module,exports,__webpack_require__){\"use strict\";(function(global){var _rng;var globalVar=typeof window!==\"undefined\"?window:typeof global!==\"undefined\"?global:null;if(globalVar&&globalVar.crypto&&crypto.getRandomValues){var _rnds8=new Uint8Array(16);_rng=function whatwgRNG(){crypto.getRandomValues(_rnds8);return _rnds8}}if(!_rng){var _rnds=new Array(16);_rng=function _rng(){for(var i=0,r;i<16;i++){if((i&3)===0)r=Math.random()*4294967296;_rnds[i]=r>>>((i&3)<<3)&255}return _rnds}}var _byteToHex=[];var _hexToByte={};for(var i=0;i<256;i++){_byteToHex[i]=(i+256).toString(16).substr(1);_hexToByte[_byteToHex[i]]=i}function parse(s,buf,offset){var i=buf&&offset||0,ii=0;buf=buf||[];s.toLowerCase().replace(/[0-9a-f]{2}/g,function(oct){if(ii<16){buf[i+ii++]=_hexToByte[oct]}});while(ii<16){buf[i+ii++]=0}return buf}function unparse(buf,offset){var i=offset||0,bth=_byteToHex;return bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]}var _seedBytes=_rng();var _nodeId=[_seedBytes[0]|1,_seedBytes[1],_seedBytes[2],_seedBytes[3],_seedBytes[4],_seedBytes[5]];var _clockseq=(_seedBytes[6]<<8|_seedBytes[7])&16383;var _lastMSecs=0,_lastNSecs=0;function v1(options,buf,offset){var i=buf&&offset||0;var b=buf||[];options=options||{};var clockseq=options.clockseq!==undefined?options.clockseq:_clockseq;var msecs=options.msecs!==undefined?options.msecs:(new Date).getTime();var nsecs=options.nsecs!==undefined?options.nsecs:_lastNSecs+1;var dt=msecs-_lastMSecs+(nsecs-_lastNSecs)/1e4;if(dt<0&&options.clockseq===undefined){clockseq=clockseq+1&16383}if((dt<0||msecs>_lastMSecs)&&options.nsecs===undefined){nsecs=0}if(nsecs>=1e4){throw new Error(\"uuid.v1(): Can't create more than 10M uuids/sec\")}_lastMSecs=msecs;_lastNSecs=nsecs;_clockseq=clockseq;msecs+=122192928e5;var tl=((msecs&268435455)*1e4+nsecs)%4294967296;b[i++]=tl>>>24&255;b[i++]=tl>>>16&255;b[i++]=tl>>>8&255;b[i++]=tl&255;var tmh=msecs/4294967296*1e4&268435455;b[i++]=tmh>>>8&255;b[i++]=tmh&255;b[i++]=tmh>>>24&15|16;b[i++]=tmh>>>16&255;b[i++]=clockseq>>>8|128;b[i++]=clockseq&255;var node=options.node||_nodeId;for(var n=0;n<6;n++){b[i+n]=node[n]}return buf?buf:unparse(b)}function v4(options,buf,offset){var i=buf&&offset||0;if(typeof options==\"string\"){buf=options==\"binary\"?new Array(16):null;options=null}options=options||{};var rnds=options.random||(options.rng||_rng)();rnds[6]=rnds[6]&15|64;rnds[8]=rnds[8]&63|128;if(buf){for(var ii=0;ii<16;ii++){buf[i+ii]=rnds[ii]}}return buf||unparse(rnds)}var uuid=v4;uuid.v1=v1;uuid.v4=v4;uuid.parse=parse;uuid.unparse=unparse;module.exports=uuid}).call(exports,__webpack_require__(158))},function(module,exports){var g;g=function(){return this}();try{g=g||Function(\"return this\")()||(1,eval)(\"this\")}catch(e){if(typeof window===\"object\")g=window}module.exports=g},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Graph3d=__webpack_require__(161);exports.graph3d={Camera:__webpack_require__(95),Filter:__webpack_require__(96),Point2d:__webpack_require__(91),Point3d:__webpack_require__(34),Slider:__webpack_require__(92),StepNumber:__webpack_require__(93)};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){var core=__webpack_require__(7);var $JSON=core.JSON||(core.JSON={stringify:JSON.stringify});module.exports=function stringify(it){return $JSON.stringify.apply($JSON,arguments)}},function(module,exports,__webpack_require__){\"use strict\";var _assign=__webpack_require__(90);var _assign2=_interopRequireDefault(_assign);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Emitter=__webpack_require__(44);var util=__webpack_require__(2);var Point3d=__webpack_require__(34);var Point2d=__webpack_require__(91);var Slider=__webpack_require__(92);var StepNumber=__webpack_require__(93);var Settings=__webpack_require__(94);var Validator=__webpack_require__(15)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var _require2=__webpack_require__(172),allOptions=_require2.allOptions;var DataGroup=__webpack_require__(173);Graph3d.STYLE=Settings.STYLE;var autoByDefault=undefined;Graph3d.DEFAULTS={width:\"400px\",height:\"400px\",filterLabel:\"time\",legendLabel:\"value\",xLabel:\"x\",yLabel:\"y\",zLabel:\"z\",xValueLabel:function xValueLabel(v){return v},yValueLabel:function yValueLabel(v){return v},zValueLabel:function zValueLabel(v){return v},showXAxis:true,showYAxis:true,showZAxis:true,showGrid:true,showPerspective:true,showShadow:false,keepAspectRatio:true,verticalRatio:.5,dotSizeRatio:.02,dotSizeMinFraction:.5,dotSizeMaxFraction:2.5,showAnimationControls:autoByDefault,animationInterval:1e3,animationPreload:false,animationAutoStart:autoByDefault,axisColor:\"#4D4D4D\",gridColor:\"#D3D3D3\",xCenter:\"55%\",yCenter:\"50%\",style:Graph3d.STYLE.DOT,tooltip:false,tooltipStyle:{content:{padding:\"10px\",border:\"1px solid #4d4d4d\",color:\"#1a1a1a\",background:\"rgba(255,255,255,0.7)\",borderRadius:\"2px\",boxShadow:\"5px 5px 10px rgba(128,128,128,0.5)\"},line:{height:\"40px\",width:\"0\",borderLeft:\"1px solid #4d4d4d\"},dot:{height:\"0\",width:\"0\",border:\"5px solid #4d4d4d\",borderRadius:\"5px\"}},dataColor:{fill:\"#7DC1FF\",stroke:\"#3267D2\",strokeWidth:1},cameraPosition:{horizontal:1,vertical:.5,distance:1.7},showLegend:autoByDefault,backgroundColor:autoByDefault,xBarWidth:autoByDefault,yBarWidth:autoByDefault,valueMin:autoByDefault,valueMax:autoByDefault,xMin:autoByDefault,xMax:autoByDefault,xStep:autoByDefault,yMin:autoByDefault,yMax:autoByDefault,yStep:autoByDefault,zMin:autoByDefault,zMax:autoByDefault,zStep:autoByDefault};function Graph3d(container,data,options){if(!(this instanceof Graph3d)){throw new SyntaxError(\"Constructor must be called with the new operator\")}this.containerElement=container;this.dataGroup=new DataGroup;this.dataPoints=null;this.create();Settings.setDefaults(Graph3d.DEFAULTS,this);this.colX=undefined;this.colY=undefined;this.colZ=undefined;this.colValue=undefined;this.setOptions(options);this.setData(data)}Emitter(Graph3d.prototype);Graph3d.prototype._setScale=function(){this.scale=new Point3d(1/this.xRange.range(),1/this.yRange.range(),1/this.zRange.range());if(this.keepAspectRatio){if(this.scale.x<this.scale.y){this.scale.y=this.scale.x}else{this.scale.x=this.scale.y}}this.scale.z*=this.verticalRatio;if(this.valueRange!==undefined){this.scale.value=1/this.valueRange.range()}var xCenter=this.xRange.center()*this.scale.x;var yCenter=this.yRange.center()*this.scale.y;var zCenter=this.zRange.center()*this.scale.z;this.camera.setArmLocation(xCenter,yCenter,zCenter)};Graph3d.prototype._convert3Dto2D=function(point3d){var translation=this._convertPointToTranslation(point3d);return this._convertTranslationToScreen(translation)};Graph3d.prototype._convertPointToTranslation=function(point3d){var cameraLocation=this.camera.getCameraLocation(),cameraRotation=this.camera.getCameraRotation(),ax=point3d.x*this.scale.x,ay=point3d.y*this.scale.y,az=point3d.z*this.scale.z,cx=cameraLocation.x,cy=cameraLocation.y,cz=cameraLocation.z,sinTx=Math.sin(cameraRotation.x),cosTx=Math.cos(cameraRotation.x),sinTy=Math.sin(cameraRotation.y),cosTy=Math.cos(cameraRotation.y),sinTz=Math.sin(cameraRotation.z),cosTz=Math.cos(cameraRotation.z),dx=cosTy*(sinTz*(ay-cy)+cosTz*(ax-cx))-sinTy*(az-cz),dy=sinTx*(cosTy*(az-cz)+sinTy*(sinTz*(ay-cy)+cosTz*(ax-cx)))+cosTx*(cosTz*(ay-cy)-sinTz*(ax-cx)),dz=cosTx*(cosTy*(az-cz)+sinTy*(sinTz*(ay-cy)+cosTz*(ax-cx)))-sinTx*(cosTz*(ay-cy)-sinTz*(ax-cx));return new Point3d(dx,dy,dz)};Graph3d.prototype._convertTranslationToScreen=function(translation){var ex=this.eye.x,ey=this.eye.y,ez=this.eye.z,dx=translation.x,dy=translation.y,dz=translation.z;var bx;var by;if(this.showPerspective){bx=(dx-ex)*(ez/dz);by=(dy-ey)*(ez/dz)}else{bx=dx*-(ez/this.camera.getArmLength());by=dy*-(ez/this.camera.getArmLength())}return new Point2d(this.currentXCenter+bx*this.frame.canvas.clientWidth,this.currentYCenter-by*this.frame.canvas.clientWidth)};Graph3d.prototype._calcTranslations=function(points){for(var i=0;i<points.length;i++){var point=points[i];point.trans=this._convertPointToTranslation(point.point);point.screen=this._convertTranslationToScreen(point.trans);var transBottom=this._convertPointToTranslation(point.bottom);point.dist=this.showPerspective?transBottom.length():-transBottom.z}var sortDepth=function sortDepth(a,b){return b.dist-a.dist};points.sort(sortDepth)};Graph3d.prototype._initializeRanges=function(){var dg=this.dataGroup;this.xRange=dg.xRange;this.yRange=dg.yRange;this.zRange=dg.zRange;this.valueRange=dg.valueRange;this.xStep=dg.xStep;this.yStep=dg.yStep;this.zStep=dg.zStep;this.xBarWidth=dg.xBarWidth;this.yBarWidth=dg.yBarWidth;this.colX=dg.colX;this.colY=dg.colY;this.colZ=dg.colZ;this.colValue=dg.colValue;this._setScale()};Graph3d.prototype.getDataPoints=function(data){var dataPoints=[];for(var i=0;i<data.length;i++){var point=new Point3d;point.x=data[i][this.colX]||0;point.y=data[i][this.colY]||0;point.z=data[i][this.colZ]||0;point.data=data[i];if(this.colValue!==undefined){point.value=data[i][this.colValue]||0}var obj={};obj.point=point;obj.bottom=new Point3d(point.x,point.y,this.zRange.min);obj.trans=undefined;obj.screen=undefined;dataPoints.push(obj)}return dataPoints};Graph3d.prototype._getDataPoints=function(data){var x,y,i,obj;var dataPoints=[];if(this.style===Graph3d.STYLE.GRID||this.style===Graph3d.STYLE.SURFACE){var dataX=this.dataGroup.getDistinctValues(this.colX,data);var dataY=this.dataGroup.getDistinctValues(this.colY,data);dataPoints=this.getDataPoints(data);var dataMatrix=[];for(i=0;i<dataPoints.length;i++){obj=dataPoints[i];var xIndex=dataX.indexOf(obj.point.x);var yIndex=dataY.indexOf(obj.point.y);if(dataMatrix[xIndex]===undefined){dataMatrix[xIndex]=[]}dataMatrix[xIndex][yIndex]=obj}for(x=0;x<dataMatrix.length;x++){for(y=0;y<dataMatrix[x].length;y++){if(dataMatrix[x][y]){dataMatrix[x][y].pointRight=x<dataMatrix.length-1?dataMatrix[x+1][y]:undefined;dataMatrix[x][y].pointTop=y<dataMatrix[x].length-1?dataMatrix[x][y+1]:undefined;dataMatrix[x][y].pointCross=x<dataMatrix.length-1&&y<dataMatrix[x].length-1?dataMatrix[x+1][y+1]:undefined}}}}else{this._checkValueField(data);dataPoints=this.getDataPoints(data);if(this.style===Graph3d.STYLE.LINE){for(i=0;i<dataPoints.length;i++){if(i>0){dataPoints[i-1].pointNext=dataPoints[i]}}}}return dataPoints};Graph3d.prototype.create=function(){while(this.containerElement.hasChildNodes()){this.containerElement.removeChild(this.containerElement.firstChild)}this.frame=document.createElement(\"div\");this.frame.style.position=\"relative\";this.frame.style.overflow=\"hidden\";this.frame.canvas=document.createElement(\"canvas\");this.frame.canvas.style.position=\"relative\";this.frame.appendChild(this.frame.canvas);{var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.frame.canvas.appendChild(noCanvas)}this.frame.filter=document.createElement(\"div\");this.frame.filter.style.position=\"absolute\";this.frame.filter.style.bottom=\"0px\";this.frame.filter.style.left=\"0px\";this.frame.filter.style.width=\"100%\";this.frame.appendChild(this.frame.filter);var me=this;var onmousedown=function onmousedown(event){me._onMouseDown(event)};var ontouchstart=function ontouchstart(event){me._onTouchStart(event)};var onmousewheel=function onmousewheel(event){me._onWheel(event)};var ontooltip=function ontooltip(event){me._onTooltip(event)};var onclick=function onclick(event){me._onClick(event)};util.addEventListener(this.frame.canvas,\"mousedown\",onmousedown);util.addEventListener(this.frame.canvas,\"touchstart\",ontouchstart);util.addEventListener(this.frame.canvas,\"mousewheel\",onmousewheel);util.addEventListener(this.frame.canvas,\"mousemove\",ontooltip);util.addEventListener(this.frame.canvas,\"click\",onclick);this.containerElement.appendChild(this.frame)};Graph3d.prototype._setSize=function(width,height){this.frame.style.width=width;this.frame.style.height=height;this._resizeCanvas()};Graph3d.prototype._resizeCanvas=function(){this.frame.canvas.style.width=\"100%\";this.frame.canvas.style.height=\"100%\";this.frame.canvas.width=this.frame.canvas.clientWidth;this.frame.canvas.height=this.frame.canvas.clientHeight;this.frame.filter.style.width=this.frame.canvas.clientWidth-2*10+\"px\"};Graph3d.prototype.animationStart=function(){if(!this.animationAutoStart||!this.dataGroup.dataFilter)return;if(!this.frame.filter||!this.frame.filter.slider)throw new Error(\"No animation available\");this.frame.filter.slider.play()};Graph3d.prototype.animationStop=function(){if(!this.frame.filter||!this.frame.filter.slider)return;this.frame.filter.slider.stop()};Graph3d.prototype._resizeCenter=function(){if(this.xCenter.charAt(this.xCenter.length-1)===\"%\"){this.currentXCenter=parseFloat(this.xCenter)/100*this.frame.canvas.clientWidth}else{this.currentXCenter=parseFloat(this.xCenter)}if(this.yCenter.charAt(this.yCenter.length-1)===\"%\"){this.currentYCenter=parseFloat(this.yCenter)/100*(this.frame.canvas.clientHeight-this.frame.filter.clientHeight)}else{this.currentYCenter=parseFloat(this.yCenter)}};Graph3d.prototype.getCameraPosition=function(){var pos=this.camera.getArmRotation();pos.distance=this.camera.getArmLength();return pos};Graph3d.prototype._readData=function(data){this.dataPoints=this.dataGroup.initializeData(this,data,this.style);this._initializeRanges();this._redrawFilter()};Graph3d.prototype.setData=function(data){if(data===undefined||data===null)return;this._readData(data);this.redraw();this.animationStart()};Graph3d.prototype.setOptions=function(options){if(options===undefined)return;var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}this.animationStop();Settings.setOptions(options,this);this.setPointDrawingMethod();this._setSize(this.width,this.height);this.setData(this.dataGroup.getDataTable());this.animationStart()};Graph3d.prototype.setPointDrawingMethod=function(){var method=undefined;switch(this.style){case Graph3d.STYLE.BAR:method=Graph3d.prototype._redrawBarGraphPoint;break;case Graph3d.STYLE.BARCOLOR:method=Graph3d.prototype._redrawBarColorGraphPoint;break;case Graph3d.STYLE.BARSIZE:method=Graph3d.prototype._redrawBarSizeGraphPoint;break;case Graph3d.STYLE.DOT:method=Graph3d.prototype._redrawDotGraphPoint;break;case Graph3d.STYLE.DOTLINE:method=Graph3d.prototype._redrawDotLineGraphPoint;break;case Graph3d.STYLE.DOTCOLOR:method=Graph3d.prototype._redrawDotColorGraphPoint;break;case Graph3d.STYLE.DOTSIZE:method=Graph3d.prototype._redrawDotSizeGraphPoint;break;case Graph3d.STYLE.SURFACE:method=Graph3d.prototype._redrawSurfaceGraphPoint;break;case Graph3d.STYLE.GRID:method=Graph3d.prototype._redrawGridGraphPoint;break;case Graph3d.STYLE.LINE:method=Graph3d.prototype._redrawLineGraphPoint;break;default:throw new Error(\"Can not determine point drawing method \"+\"for graph style '\"+this.style+\"'\")}this._pointDrawingMethod=method};Graph3d.prototype.redraw=function(){if(this.dataPoints===undefined){throw new Error(\"Graph data not initialized\")}this._resizeCanvas();this._resizeCenter();this._redrawSlider();this._redrawClear();this._redrawAxis();this._redrawDataGraph();this._redrawInfo();this._redrawLegend()};Graph3d.prototype._getContext=function(){var canvas=this.frame.canvas;var ctx=canvas.getContext(\"2d\");ctx.lineJoin=\"round\";ctx.lineCap=\"round\";return ctx};Graph3d.prototype._redrawClear=function(){var canvas=this.frame.canvas;var ctx=canvas.getContext(\"2d\");ctx.clearRect(0,0,canvas.width,canvas.height)};Graph3d.prototype._dotSize=function(){return this.frame.clientWidth*this.dotSizeRatio};Graph3d.prototype._getLegendWidth=function(){var width;if(this.style===Graph3d.STYLE.DOTSIZE){var dotSize=this._dotSize();width=dotSize*this.dotSizeMaxFraction}else if(this.style===Graph3d.STYLE.BARSIZE){width=this.xBarWidth}else{width=20}return width};Graph3d.prototype._redrawLegend=function(){if(this.showLegend!==true){return}if(this.style===Graph3d.STYLE.LINE||this.style===Graph3d.STYLE.BARSIZE){return}var isSizeLegend=this.style===Graph3d.STYLE.BARSIZE||this.style===Graph3d.STYLE.DOTSIZE;var isValueLegend=this.style===Graph3d.STYLE.DOTSIZE||this.style===Graph3d.STYLE.DOTCOLOR||this.style===Graph3d.STYLE.BARCOLOR;var height=Math.max(this.frame.clientHeight*.25,100);var top=this.margin;var width=this._getLegendWidth();var right=this.frame.clientWidth-this.margin;var left=right-width;var bottom=top+height;var ctx=this._getContext();ctx.lineWidth=1;ctx.font=\"14px arial\";if(isSizeLegend===false){var ymin=0;var ymax=height;var y;for(y=ymin;y<ymax;y++){var f=(y-ymin)/(ymax-ymin);var hue=f*240;var color=this._hsv2rgb(hue,1,1);ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(left,top+y);ctx.lineTo(right,top+y);ctx.stroke()}ctx.strokeStyle=this.axisColor;ctx.strokeRect(left,top,width,height)}else{var widthMin;if(this.style===Graph3d.STYLE.DOTSIZE){widthMin=width*(this.dotSizeMinFraction/this.dotSizeMaxFraction)}else if(this.style===Graph3d.STYLE.BARSIZE){}ctx.strokeStyle=this.axisColor;ctx.fillStyle=this.dataColor.fill;ctx.beginPath();ctx.moveTo(left,top);ctx.lineTo(right,top);ctx.lineTo(left+widthMin,bottom);ctx.lineTo(left,bottom);ctx.closePath();ctx.fill();ctx.stroke()}var gridLineLen=5;var legendMin=isValueLegend?this.valueRange.min:this.zRange.min;var legendMax=isValueLegend?this.valueRange.max:this.zRange.max;var step=new StepNumber(legendMin,legendMax,(legendMax-legendMin)/5,true);step.start(true);var from;var to;while(!step.end()){y=bottom-(step.getCurrent()-legendMin)/(legendMax-legendMin)*height;from=new Point2d(left-gridLineLen,y);to=new Point2d(left,y);this._line(ctx,from,to);ctx.textAlign=\"right\";ctx.textBaseline=\"middle\";ctx.fillStyle=this.axisColor;ctx.fillText(step.getCurrent(),left-2*gridLineLen,y);step.next()}ctx.textAlign=\"right\";ctx.textBaseline=\"top\";var label=this.legendLabel;ctx.fillText(label,right,bottom+this.margin)};Graph3d.prototype._redrawFilter=function(){var dataFilter=this.dataGroup.dataFilter;var filter=this.frame.filter;filter.innerHTML=\"\";if(!dataFilter){filter.slider=undefined;return}var options={visible:this.showAnimationControls};var slider=new Slider(filter,options);filter.slider=slider;filter.style.padding=\"10px\";slider.setValues(dataFilter.values);slider.setPlayInterval(this.animationInterval);var me=this;var onchange=function onchange(){var dataFilter=me.dataGroup.dataFilter;var index=slider.getIndex();dataFilter.selectValue(index);me.dataPoints=dataFilter._getDataPoints();me.redraw()};slider.setOnChangeCallback(onchange)};Graph3d.prototype._redrawSlider=function(){if(this.frame.filter.slider!==undefined){this.frame.filter.slider.redraw()}};Graph3d.prototype._redrawInfo=function(){var info=this.dataGroup.getInfo();if(info===undefined)return;var ctx=this._getContext();ctx.font=\"14px arial\";ctx.lineStyle=\"gray\";ctx.fillStyle=\"gray\";ctx.textAlign=\"left\";ctx.textBaseline=\"top\";var x=this.margin;var y=this.margin;ctx.fillText(info,x,y)};Graph3d.prototype._line=function(ctx,from,to,strokeStyle){if(strokeStyle!==undefined){ctx.strokeStyle=strokeStyle}ctx.beginPath();ctx.moveTo(from.x,from.y);ctx.lineTo(to.x,to.y);ctx.stroke()};Graph3d.prototype.drawAxisLabelX=function(ctx,point3d,text,armAngle,yMargin){if(yMargin===undefined){yMargin=0}var point2d=this._convert3Dto2D(point3d);if(Math.cos(armAngle*2)>0){ctx.textAlign=\"center\";ctx.textBaseline=\"top\";point2d.y+=yMargin}else if(Math.sin(armAngle*2)<0){ctx.textAlign=\"right\";ctx.textBaseline=\"middle\"}else{ctx.textAlign=\"left\";ctx.textBaseline=\"middle\"}ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x,point2d.y)};Graph3d.prototype.drawAxisLabelY=function(ctx,point3d,text,armAngle,yMargin){if(yMargin===undefined){yMargin=0}var point2d=this._convert3Dto2D(point3d);if(Math.cos(armAngle*2)<0){ctx.textAlign=\"center\";ctx.textBaseline=\"top\";point2d.y+=yMargin}else if(Math.sin(armAngle*2)>0){ctx.textAlign=\"right\";ctx.textBaseline=\"middle\"}else{ctx.textAlign=\"left\";ctx.textBaseline=\"middle\"}ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x,point2d.y)};Graph3d.prototype.drawAxisLabelZ=function(ctx,point3d,text,offset){if(offset===undefined){offset=0}var point2d=this._convert3Dto2D(point3d);ctx.textAlign=\"right\";ctx.textBaseline=\"middle\";ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x-offset,point2d.y)};Graph3d.prototype._line3d=function(ctx,from,to,strokeStyle){var from2d=this._convert3Dto2D(from);var to2d=this._convert3Dto2D(to);this._line(ctx,from2d,to2d,strokeStyle)};Graph3d.prototype._redrawAxis=function(){var ctx=this._getContext(),from,to,step,prettyStep,text,xText,yText,zText,offset,xOffset,yOffset;ctx.font=24/this.camera.getArmLength()+\"px arial\";var gridLenX=.025/this.scale.x;var gridLenY=.025/this.scale.y;var textMargin=5/this.camera.getArmLength();var armAngle=this.camera.getArmRotation().horizontal;var armVector=new Point2d(Math.cos(armAngle),Math.sin(armAngle));var xRange=this.xRange;var yRange=this.yRange;var zRange=this.zRange;var point3d;ctx.lineWidth=1;prettyStep=this.defaultXStep===undefined;step=new StepNumber(xRange.min,xRange.max,this.xStep,prettyStep);step.start(true);while(!step.end()){var x=step.getCurrent();if(this.showGrid){from=new Point3d(x,yRange.min,zRange.min);to=new Point3d(x,yRange.max,zRange.min);this._line3d(ctx,from,to,this.gridColor)}else if(this.showXAxis){from=new Point3d(x,yRange.min,zRange.min);to=new Point3d(x,yRange.min+gridLenX,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(x,yRange.max,zRange.min);to=new Point3d(x,yRange.max-gridLenX,zRange.min);this._line3d(ctx,from,to,this.axisColor)}if(this.showXAxis){yText=armVector.x>0?yRange.min:yRange.max;point3d=new Point3d(x,yText,zRange.min);var msg=\" \"+this.xValueLabel(x)+\" \";this.drawAxisLabelX(ctx,point3d,msg,armAngle,textMargin)}step.next()}ctx.lineWidth=1;prettyStep=this.defaultYStep===undefined;step=new StepNumber(yRange.min,yRange.max,this.yStep,prettyStep);step.start(true);while(!step.end()){var y=step.getCurrent();if(this.showGrid){from=new Point3d(xRange.min,y,zRange.min);to=new Point3d(xRange.max,y,zRange.min);this._line3d(ctx,from,to,this.gridColor)}else if(this.showYAxis){from=new Point3d(xRange.min,y,zRange.min);to=new Point3d(xRange.min+gridLenY,y,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(xRange.max,y,zRange.min);to=new Point3d(xRange.max-gridLenY,y,zRange.min);this._line3d(ctx,from,to,this.axisColor)}if(this.showYAxis){xText=armVector.y>0?xRange.min:xRange.max;point3d=new Point3d(xText,y,zRange.min);var _msg=\" \"+this.yValueLabel(y)+\" \";this.drawAxisLabelY(ctx,point3d,_msg,armAngle,textMargin)}step.next()}if(this.showZAxis){ctx.lineWidth=1;prettyStep=this.defaultZStep===undefined;step=new StepNumber(zRange.min,zRange.max,this.zStep,prettyStep);step.start(true);xText=armVector.x>0?xRange.min:xRange.max;yText=armVector.y<0?yRange.min:yRange.max;while(!step.end()){var z=step.getCurrent();var from3d=new Point3d(xText,yText,z);var from2d=this._convert3Dto2D(from3d);to=new Point2d(from2d.x-textMargin,from2d.y);this._line(ctx,from2d,to,this.axisColor);var _msg2=this.zValueLabel(z)+\" \";this.drawAxisLabelZ(ctx,from3d,_msg2,5);step.next()}ctx.lineWidth=1;from=new Point3d(xText,yText,zRange.min);to=new Point3d(xText,yText,zRange.max);this._line3d(ctx,from,to,this.axisColor)}if(this.showXAxis){var xMin2d;var xMax2d;ctx.lineWidth=1;xMin2d=new Point3d(xRange.min,yRange.min,zRange.min);xMax2d=new Point3d(xRange.max,yRange.min,zRange.min);this._line3d(ctx,xMin2d,xMax2d,this.axisColor);xMin2d=new Point3d(xRange.min,yRange.max,zRange.min);xMax2d=new Point3d(xRange.max,yRange.max,zRange.min);this._line3d(ctx,xMin2d,xMax2d,this.axisColor)}if(this.showYAxis){ctx.lineWidth=1;from=new Point3d(xRange.min,yRange.min,zRange.min);to=new Point3d(xRange.min,yRange.max,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(xRange.max,yRange.min,zRange.min);to=new Point3d(xRange.max,yRange.max,zRange.min);this._line3d(ctx,from,to,this.axisColor)}var xLabel=this.xLabel;if(xLabel.length>0&&this.showXAxis){yOffset=.1/this.scale.y;xText=(xRange.max+3*xRange.min)/4;yText=armVector.x>0?yRange.min-yOffset:yRange.max+yOffset\n;text=new Point3d(xText,yText,zRange.min);this.drawAxisLabelX(ctx,text,xLabel,armAngle)}var yLabel=this.yLabel;if(yLabel.length>0&&this.showYAxis){xOffset=.1/this.scale.x;xText=armVector.y>0?xRange.min-xOffset:xRange.max+xOffset;yText=(yRange.max+3*yRange.min)/4;text=new Point3d(xText,yText,zRange.min);this.drawAxisLabelY(ctx,text,yLabel,armAngle)}var zLabel=this.zLabel;if(zLabel.length>0&&this.showZAxis){offset=30;xText=armVector.x>0?xRange.min:xRange.max;yText=armVector.y<0?yRange.min:yRange.max;zText=(zRange.max+3*zRange.min)/4;text=new Point3d(xText,yText,zText);this.drawAxisLabelZ(ctx,text,zLabel,offset)}};Graph3d.prototype._hsv2rgb=function(H,S,V){var R,G,B,C,Hi,X;C=V*S;Hi=Math.floor(H/60);X=C*(1-Math.abs(H/60%2-1));switch(Hi){case 0:R=C;G=X;B=0;break;case 1:R=X;G=C;B=0;break;case 2:R=0;G=C;B=X;break;case 3:R=0;G=X;B=C;break;case 4:R=X;G=0;B=C;break;case 5:R=C;G=0;B=X;break;default:R=0;G=0;B=0;break}return\"RGB(\"+parseInt(R*255)+\",\"+parseInt(G*255)+\",\"+parseInt(B*255)+\")\"};Graph3d.prototype._getStrokeWidth=function(point){if(point!==undefined){if(this.showPerspective){return 1/-point.trans.z*this.dataColor.strokeWidth}else{return-(this.eye.z/this.camera.getArmLength())*this.dataColor.strokeWidth}}return this.dataColor.strokeWidth};Graph3d.prototype._redrawBar=function(ctx,point,xWidth,yWidth,color,borderColor){var surface;var me=this;var point3d=point.point;var zMin=this.zRange.min;var top=[{point:new Point3d(point3d.x-xWidth,point3d.y-yWidth,point3d.z)},{point:new Point3d(point3d.x+xWidth,point3d.y-yWidth,point3d.z)},{point:new Point3d(point3d.x+xWidth,point3d.y+yWidth,point3d.z)},{point:new Point3d(point3d.x-xWidth,point3d.y+yWidth,point3d.z)}];var bottom=[{point:new Point3d(point3d.x-xWidth,point3d.y-yWidth,zMin)},{point:new Point3d(point3d.x+xWidth,point3d.y-yWidth,zMin)},{point:new Point3d(point3d.x+xWidth,point3d.y+yWidth,zMin)},{point:new Point3d(point3d.x-xWidth,point3d.y+yWidth,zMin)}];top.forEach(function(obj){obj.screen=me._convert3Dto2D(obj.point)});bottom.forEach(function(obj){obj.screen=me._convert3Dto2D(obj.point)});var surfaces=[{corners:top,center:Point3d.avg(bottom[0].point,bottom[2].point)},{corners:[top[0],top[1],bottom[1],bottom[0]],center:Point3d.avg(bottom[1].point,bottom[0].point)},{corners:[top[1],top[2],bottom[2],bottom[1]],center:Point3d.avg(bottom[2].point,bottom[1].point)},{corners:[top[2],top[3],bottom[3],bottom[2]],center:Point3d.avg(bottom[3].point,bottom[2].point)},{corners:[top[3],top[0],bottom[0],bottom[3]],center:Point3d.avg(bottom[0].point,bottom[3].point)}];point.surfaces=surfaces;for(var j=0;j<surfaces.length;j++){surface=surfaces[j];var transCenter=this._convertPointToTranslation(surface.center);surface.dist=this.showPerspective?transCenter.length():-transCenter.z}surfaces.sort(function(a,b){var diff=b.dist-a.dist;if(diff)return diff;if(a.corners===top)return 1;if(b.corners===top)return-1;return 0});ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=borderColor;ctx.fillStyle=color;for(var _j=2;_j<surfaces.length;_j++){surface=surfaces[_j];this._polygon(ctx,surface.corners)}};Graph3d.prototype._polygon=function(ctx,points,fillStyle,strokeStyle){if(points.length<2){return}if(fillStyle!==undefined){ctx.fillStyle=fillStyle}if(strokeStyle!==undefined){ctx.strokeStyle=strokeStyle}ctx.beginPath();ctx.moveTo(points[0].screen.x,points[0].screen.y);for(var i=1;i<points.length;++i){var point=points[i];ctx.lineTo(point.screen.x,point.screen.y)}ctx.closePath();ctx.fill();ctx.stroke()};Graph3d.prototype._drawCircle=function(ctx,point,color,borderColor,size){var radius=this._calcRadius(point,size);ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=borderColor;ctx.fillStyle=color;ctx.beginPath();ctx.arc(point.screen.x,point.screen.y,radius,0,Math.PI*2,true);ctx.fill();ctx.stroke()};Graph3d.prototype._getColorsRegular=function(point){var hue=(1-(point.point.z-this.zRange.min)*this.scale.z/this.verticalRatio)*240;var color=this._hsv2rgb(hue,1,1);var borderColor=this._hsv2rgb(hue,1,.8);return{fill:color,border:borderColor}};Graph3d.prototype._getColorsColor=function(point){var color,borderColor;if(typeof point.point.value===\"string\"){color=point.point.value;borderColor=point.point.value}else{var hue=(1-(point.point.value-this.valueRange.min)*this.scale.value)*240;color=this._hsv2rgb(hue,1,1);borderColor=this._hsv2rgb(hue,1,.8)}return{fill:color,border:borderColor}};Graph3d.prototype._getColorsSize=function(){return{fill:this.dataColor.fill,border:this.dataColor.stroke}};Graph3d.prototype._calcRadius=function(point,size){if(size===undefined){size=this._dotSize()}var radius;if(this.showPerspective){radius=size/-point.trans.z}else{radius=size*-(this.eye.z/this.camera.getArmLength())}if(radius<0){radius=0}return radius};Graph3d.prototype._redrawBarGraphPoint=function(ctx,point){var xWidth=this.xBarWidth/2;var yWidth=this.yBarWidth/2;var colors=this._getColorsRegular(point);this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawBarColorGraphPoint=function(ctx,point){var xWidth=this.xBarWidth/2;var yWidth=this.yBarWidth/2;var colors=this._getColorsColor(point);this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawBarSizeGraphPoint=function(ctx,point){var fraction=(point.point.value-this.valueRange.min)/this.valueRange.range();var xWidth=this.xBarWidth/2*(fraction*.8+.2);var yWidth=this.yBarWidth/2*(fraction*.8+.2);var colors=this._getColorsSize();this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawDotGraphPoint=function(ctx,point){var colors=this._getColorsRegular(point);this._drawCircle(ctx,point,colors.fill,colors.border)};Graph3d.prototype._redrawDotLineGraphPoint=function(ctx,point){var from=this._convert3Dto2D(point.bottom);ctx.lineWidth=1;this._line(ctx,from,point.screen,this.gridColor);this._redrawDotGraphPoint(ctx,point)};Graph3d.prototype._redrawDotColorGraphPoint=function(ctx,point){var colors=this._getColorsColor(point);this._drawCircle(ctx,point,colors.fill,colors.border)};Graph3d.prototype._redrawDotSizeGraphPoint=function(ctx,point){var dotSize=this._dotSize();var fraction=(point.point.value-this.valueRange.min)/this.valueRange.range();var sizeMin=dotSize*this.dotSizeMinFraction;var sizeRange=dotSize*this.dotSizeMaxFraction-sizeMin;var size=sizeMin+sizeRange*fraction;var colors=this._getColorsSize();this._drawCircle(ctx,point,colors.fill,colors.border,size)};Graph3d.prototype._redrawSurfaceGraphPoint=function(ctx,point){var right=point.pointRight;var top=point.pointTop;var cross=point.pointCross;if(point===undefined||right===undefined||top===undefined||cross===undefined){return}var topSideVisible=true;var fillStyle;var strokeStyle;if(this.showGrayBottom||this.showShadow){var aDiff=Point3d.subtract(cross.trans,point.trans);var bDiff=Point3d.subtract(top.trans,right.trans);var crossproduct=Point3d.crossProduct(aDiff,bDiff);var len=crossproduct.length();topSideVisible=crossproduct.z>0}if(topSideVisible){var zAvg=(point.point.z+right.point.z+top.point.z+cross.point.z)/4;var h=(1-(zAvg-this.zRange.min)*this.scale.z/this.verticalRatio)*240;var s=1;var v;if(this.showShadow){v=Math.min(1+crossproduct.x/len/2,1);fillStyle=this._hsv2rgb(h,s,v);strokeStyle=fillStyle}else{v=1;fillStyle=this._hsv2rgb(h,s,v);strokeStyle=this.axisColor}}else{fillStyle=\"gray\";strokeStyle=this.axisColor}ctx.lineWidth=this._getStrokeWidth(point);var points=[point,right,cross,top];this._polygon(ctx,points,fillStyle,strokeStyle)};Graph3d.prototype._drawGridLine=function(ctx,from,to){if(from===undefined||to===undefined){return}var zAvg=(from.point.z+to.point.z)/2;var h=(1-(zAvg-this.zRange.min)*this.scale.z/this.verticalRatio)*240;ctx.lineWidth=this._getStrokeWidth(from)*2;ctx.strokeStyle=this._hsv2rgb(h,1,1);this._line(ctx,from.screen,to.screen)};Graph3d.prototype._redrawGridGraphPoint=function(ctx,point){this._drawGridLine(ctx,point,point.pointRight);this._drawGridLine(ctx,point,point.pointTop)};Graph3d.prototype._redrawLineGraphPoint=function(ctx,point){if(point.pointNext===undefined){return}ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=this.dataColor.stroke;this._line(ctx,point.screen,point.pointNext.screen)};Graph3d.prototype._redrawDataGraph=function(){var ctx=this._getContext();var i;if(this.dataPoints===undefined||this.dataPoints.length<=0)return;this._calcTranslations(this.dataPoints);for(i=0;i<this.dataPoints.length;i++){var point=this.dataPoints[i];this._pointDrawingMethod.call(this,ctx,point)}};Graph3d.prototype._storeMousePosition=function(event){this.startMouseX=getMouseX(event);this.startMouseY=getMouseY(event);this._startCameraOffset=this.camera.getOffset()};Graph3d.prototype._onMouseDown=function(event){event=event||window.event;if(this.leftButtonDown){this._onMouseUp(event)}this.leftButtonDown=event.which?event.which===1:event.button===1;if(!this.leftButtonDown&&!this.touchDown)return;this._storeMousePosition(event);this.startStart=new Date(this.start);this.startEnd=new Date(this.end);this.startArmRotation=this.camera.getArmRotation();this.frame.style.cursor=\"move\";var me=this;this.onmousemove=function(event){me._onMouseMove(event)};this.onmouseup=function(event){me._onMouseUp(event)};util.addEventListener(document,\"mousemove\",me.onmousemove);util.addEventListener(document,\"mouseup\",me.onmouseup);util.preventDefault(event)};Graph3d.prototype._onMouseMove=function(event){this.moving=true;event=event||window.event;var diffX=parseFloat(getMouseX(event))-this.startMouseX;var diffY=parseFloat(getMouseY(event))-this.startMouseY;if(event&&event.ctrlKey===true){var scaleX=this.frame.clientWidth*.5;var scaleY=this.frame.clientHeight*.5;var offXNew=(this._startCameraOffset.x||0)-diffX/scaleX*this.camera.armLength*.8;var offYNew=(this._startCameraOffset.y||0)+diffY/scaleY*this.camera.armLength*.8;this.camera.setOffset(offXNew,offYNew);this._storeMousePosition(event)}else{var horizontalNew=this.startArmRotation.horizontal+diffX/200;var verticalNew=this.startArmRotation.vertical+diffY/200;var snapAngle=4;var snapValue=Math.sin(snapAngle/360*2*Math.PI);if(Math.abs(Math.sin(horizontalNew))<snapValue){horizontalNew=Math.round(horizontalNew/Math.PI)*Math.PI-.001}if(Math.abs(Math.cos(horizontalNew))<snapValue){horizontalNew=(Math.round(horizontalNew/Math.PI-.5)+.5)*Math.PI-.001}if(Math.abs(Math.sin(verticalNew))<snapValue){verticalNew=Math.round(verticalNew/Math.PI)*Math.PI}if(Math.abs(Math.cos(verticalNew))<snapValue){verticalNew=(Math.round(verticalNew/Math.PI-.5)+.5)*Math.PI}this.camera.setArmRotation(horizontalNew,verticalNew)}this.redraw();var parameters=this.getCameraPosition();this.emit(\"cameraPositionChange\",parameters);util.preventDefault(event)};Graph3d.prototype._onMouseUp=function(event){this.frame.style.cursor=\"auto\";this.leftButtonDown=false;util.removeEventListener(document,\"mousemove\",this.onmousemove);util.removeEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault(event)};Graph3d.prototype._onClick=function(event){if(!this.onclick_callback)return;if(!this.moving){var boundingRect=this.frame.getBoundingClientRect();var mouseX=getMouseX(event)-boundingRect.left;var mouseY=getMouseY(event)-boundingRect.top;var dataPoint=this._dataPointFromXY(mouseX,mouseY);if(dataPoint)this.onclick_callback(dataPoint.point.data)}else{this.moving=false}util.preventDefault(event)};Graph3d.prototype._onTooltip=function(event){var delay=300;var boundingRect=this.frame.getBoundingClientRect();var mouseX=getMouseX(event)-boundingRect.left;var mouseY=getMouseY(event)-boundingRect.top;if(!this.showTooltip){return}if(this.tooltipTimeout){clearTimeout(this.tooltipTimeout)}if(this.leftButtonDown){this._hideTooltip();return}if(this.tooltip&&this.tooltip.dataPoint){var dataPoint=this._dataPointFromXY(mouseX,mouseY);if(dataPoint!==this.tooltip.dataPoint){if(dataPoint){this._showTooltip(dataPoint)}else{this._hideTooltip()}}}else{var me=this;this.tooltipTimeout=setTimeout(function(){me.tooltipTimeout=null;var dataPoint=me._dataPointFromXY(mouseX,mouseY);if(dataPoint){me._showTooltip(dataPoint)}},delay)}};Graph3d.prototype._onTouchStart=function(event){this.touchDown=true;var me=this;this.ontouchmove=function(event){me._onTouchMove(event)};this.ontouchend=function(event){me._onTouchEnd(event)};util.addEventListener(document,\"touchmove\",me.ontouchmove);util.addEventListener(document,\"touchend\",me.ontouchend);this._onMouseDown(event)};Graph3d.prototype._onTouchMove=function(event){this._onMouseMove(event)};Graph3d.prototype._onTouchEnd=function(event){this.touchDown=false;util.removeEventListener(document,\"touchmove\",this.ontouchmove);util.removeEventListener(document,\"touchend\",this.ontouchend);this._onMouseUp(event)};Graph3d.prototype._onWheel=function(event){if(!event)event=window.event;var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(delta){var oldLength=this.camera.getArmLength();var newLength=oldLength*(1-delta/10);this.camera.setArmLength(newLength);this.redraw();this._hideTooltip()}var parameters=this.getCameraPosition();this.emit(\"cameraPositionChange\",parameters);util.preventDefault(event)};Graph3d.prototype._insideTriangle=function(point,triangle){var a=triangle[0],b=triangle[1],c=triangle[2];function sign(x){return x>0?1:x<0?-1:0}var as=sign((b.x-a.x)*(point.y-a.y)-(b.y-a.y)*(point.x-a.x));var bs=sign((c.x-b.x)*(point.y-b.y)-(c.y-b.y)*(point.x-b.x));var cs=sign((a.x-c.x)*(point.y-c.y)-(a.y-c.y)*(point.x-c.x));return(as==0||bs==0||as==bs)&&(bs==0||cs==0||bs==cs)&&(as==0||cs==0||as==cs)};Graph3d.prototype._dataPointFromXY=function(x,y){var i,distMax=100,dataPoint=null,closestDataPoint=null,closestDist=null,center=new Point2d(x,y);if(this.style===Graph3d.STYLE.BAR||this.style===Graph3d.STYLE.BARCOLOR||this.style===Graph3d.STYLE.BARSIZE){for(i=this.dataPoints.length-1;i>=0;i--){dataPoint=this.dataPoints[i];var surfaces=dataPoint.surfaces;if(surfaces){for(var s=surfaces.length-1;s>=0;s--){var surface=surfaces[s];var corners=surface.corners;var triangle1=[corners[0].screen,corners[1].screen,corners[2].screen];var triangle2=[corners[2].screen,corners[3].screen,corners[0].screen];if(this._insideTriangle(center,triangle1)||this._insideTriangle(center,triangle2)){return dataPoint}}}}}else{for(i=0;i<this.dataPoints.length;i++){dataPoint=this.dataPoints[i];var point=dataPoint.screen;if(point){var distX=Math.abs(x-point.x);var distY=Math.abs(y-point.y);var dist=Math.sqrt(distX*distX+distY*distY);if((closestDist===null||dist<closestDist)&&dist<distMax){closestDist=dist;closestDataPoint=dataPoint}}}}return closestDataPoint};Graph3d.prototype.hasBars=function(style){return style==Graph3d.STYLE.BAR||style==Graph3d.STYLE.BARCOLOR||style==Graph3d.STYLE.BARSIZE};Graph3d.prototype._showTooltip=function(dataPoint){var content,line,dot;if(!this.tooltip){content=document.createElement(\"div\");(0,_assign2[\"default\"])(content.style,{},this.tooltipStyle.content);content.style.position=\"absolute\";line=document.createElement(\"div\");(0,_assign2[\"default\"])(line.style,{},this.tooltipStyle.line);line.style.position=\"absolute\";dot=document.createElement(\"div\");(0,_assign2[\"default\"])(dot.style,{},this.tooltipStyle.dot);dot.style.position=\"absolute\";this.tooltip={dataPoint:null,dom:{content:content,line:line,dot:dot}}}else{content=this.tooltip.dom.content;line=this.tooltip.dom.line;dot=this.tooltip.dom.dot}this._hideTooltip();this.tooltip.dataPoint=dataPoint;if(typeof this.showTooltip===\"function\"){content.innerHTML=this.showTooltip(dataPoint.point)}else{content.innerHTML=\"<table>\"+\"<tr><td>\"+this.xLabel+\":</td><td>\"+dataPoint.point.x+\"</td></tr>\"+\"<tr><td>\"+this.yLabel+\":</td><td>\"+dataPoint.point.y+\"</td></tr>\"+\"<tr><td>\"+this.zLabel+\":</td><td>\"+dataPoint.point.z+\"</td></tr>\"+\"</table>\"}content.style.left=\"0\";content.style.top=\"0\";this.frame.appendChild(content);this.frame.appendChild(line);this.frame.appendChild(dot);var contentWidth=content.offsetWidth;var contentHeight=content.offsetHeight;var lineHeight=line.offsetHeight;var dotWidth=dot.offsetWidth;var dotHeight=dot.offsetHeight;var left=dataPoint.screen.x-contentWidth/2;left=Math.min(Math.max(left,10),this.frame.clientWidth-10-contentWidth);line.style.left=dataPoint.screen.x+\"px\";line.style.top=dataPoint.screen.y-lineHeight+\"px\";content.style.left=left+\"px\";content.style.top=dataPoint.screen.y-lineHeight-contentHeight+\"px\";dot.style.left=dataPoint.screen.x-dotWidth/2+\"px\";dot.style.top=dataPoint.screen.y-dotHeight/2+\"px\"};Graph3d.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var prop in this.tooltip.dom){if(this.tooltip.dom.hasOwnProperty(prop)){var elem=this.tooltip.dom[prop];if(elem&&elem.parentNode){elem.parentNode.removeChild(elem)}}}}};function getMouseX(event){if(\"clientX\"in event)return event.clientX;return event.targetTouches[0]&&event.targetTouches[0].clientX||0}function getMouseY(event){if(\"clientY\"in event)return event.clientY;return event.targetTouches[0]&&event.targetTouches[0].clientY||0}Graph3d.prototype.setCameraPosition=function(pos){Settings.setCameraPosition(pos,this);this.redraw()};Graph3d.prototype.setSize=function(width,height){this._setSize(width,height);this.redraw()};module.exports=Graph3d},function(module,exports,__webpack_require__){__webpack_require__(163);module.exports=__webpack_require__(7).Object.assign},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S+$export.F,\"Object\",{assign:__webpack_require__(164)})},function(module,exports,__webpack_require__){\"use strict\";var getKeys=__webpack_require__(33);var gOPS=__webpack_require__(63);var pIE=__webpack_require__(42);var toObject=__webpack_require__(41);var IObject=__webpack_require__(78);var $assign=Object.assign;module.exports=!$assign||__webpack_require__(28)(function(){var A={};var B={};var S=Symbol();var K=\"abcdefghijklmnopqrst\";A[S]=7;K.split(\"\").forEach(function(k){B[k]=k});return $assign({},A)[S]!=7||Object.keys($assign({},B)).join(\"\")!=K})?function assign(target,source){var T=toObject(target);var aLen=arguments.length;var index=1;var getSymbols=gOPS.f;var isEnum=pIE.f;while(aLen>index){var S=IObject(arguments[index++]);var keys=getSymbols?getKeys(S).concat(getSymbols(S)):getKeys(S);var length=keys.length;var j=0;var key;while(length>j)if(isEnum.call(S,key=keys[j++]))T[key]=S[key]}return T}:$assign},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(166),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(167);module.exports=__webpack_require__(7).Math.sign},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Math\",{sign:__webpack_require__(168)})},function(module,exports){module.exports=Math.sign||function sign(x){return(x=+x)==0||x!=x?x:x<0?-1:1}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(170),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(171);var $Object=__webpack_require__(7).Object;module.exports=function defineProperty(it,key,desc){return $Object.defineProperty(it,key,desc)}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S+$export.F*!__webpack_require__(21),\"Object\",{defineProperty:__webpack_require__(20).f})},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var object=\"object\";var colorOptions={fill:{string:string},stroke:{string:string},strokeWidth:{number:number},__type__:{string:string,object:object,undefined:\"undefined\"}};var allOptions={animationAutoStart:{boolean:bool,undefined:\"undefined\"},animationInterval:{number:number},animationPreload:{boolean:bool},axisColor:{string:string},backgroundColor:colorOptions,xBarWidth:{number:number,undefined:\"undefined\"},yBarWidth:{number:number,undefined:\"undefined\"},cameraPosition:{distance:{number:number},horizontal:{number:number},vertical:{number:number},__type__:{object:object}},xCenter:{string:string},yCenter:{string:string},dataColor:colorOptions,dotSizeMinFraction:{number:number},dotSizeMaxFraction:{number:number},dotSizeRatio:{number:number},filterLabel:{string:string},gridColor:{string:string},onclick:{function:\"function\"},keepAspectRatio:{boolean:bool},xLabel:{string:string},yLabel:{string:string},zLabel:{string:string},legendLabel:{string:string},xMin:{number:number,undefined:\"undefined\"},yMin:{number:number,undefined:\"undefined\"},zMin:{number:number,undefined:\"undefined\"},xMax:{number:number,undefined:\"undefined\"},yMax:{number:number,undefined:\"undefined\"},zMax:{number:number,undefined:\"undefined\"},showAnimationControls:{boolean:bool,undefined:\"undefined\"},showGrid:{boolean:bool},showLegend:{boolean:bool,undefined:\"undefined\"},showPerspective:{boolean:bool},showShadow:{boolean:bool},showXAxis:{boolean:bool},showYAxis:{boolean:bool},showZAxis:{boolean:bool},xStep:{number:number,undefined:\"undefined\"},yStep:{number:number,undefined:\"undefined\"},zStep:{number:number,undefined:\"undefined\"},style:{number:number,string:[\"bar\",\"bar-color\",\"bar-size\",\"dot\",\"dot-line\",\"dot-color\",\"dot-size\",\"line\",\"grid\",\"surface\"]},tooltip:{boolean:bool,function:\"function\"},tooltipStyle:{content:{color:{string:string},background:{string:string},border:{string:string},borderRadius:{string:string},boxShadow:{string:string},padding:{string:string},__type__:{object:object}},line:{borderLeft:{string:string},height:{string:string},width:{string:string},__type__:{object:object}},dot:{border:{string:string},borderRadius:{string:string},height:{string:string},width:{string:string},__type__:{object:object}},__type__:{object:object}},xValueLabel:{function:\"function\"},yValueLabel:{function:\"function\"},zValueLabel:{function:\"function\"},valueMax:{number:number,undefined:\"undefined\"},valueMin:{number:number,undefined:\"undefined\"},verticalRatio:{number:number},height:{string:string},width:{string:string},__type__:{object:object}};exports.allOptions=allOptions},function(module,exports,__webpack_require__){\"use strict\";var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(174);var Filter=__webpack_require__(96);var Settings=__webpack_require__(94);var Point3d=__webpack_require__(34);function DataGroup(){this.dataTable=null}DataGroup.prototype.initializeData=function(graph3d,rawData,style){if(rawData===undefined)return;if(Array.isArray(rawData)){rawData=new DataSet(rawData)}var data;if(rawData instanceof DataSet||rawData instanceof DataView){data=rawData.get()}else{throw new Error(\"Array, DataSet, or DataView expected\")}if(data.length==0)return;this.style=style;if(this.dataSet){this.dataSet.off(\"*\",this._onChange)}this.dataSet=rawData;this.dataTable=data;var me=this;this._onChange=function(){graph3d.setData(me.dataSet)};this.dataSet.on(\"*\",this._onChange);this.colX=\"x\";this.colY=\"y\";this.colZ=\"z\";var withBars=graph3d.hasBars(style);if(withBars){if(graph3d.defaultXBarWidth!==undefined){this.xBarWidth=graph3d.defaultXBarWidth}else{this.xBarWidth=this.getSmallestDifference(data,this.colX)||1}if(graph3d.defaultYBarWidth!==undefined){this.yBarWidth=graph3d.defaultYBarWidth}else{this.yBarWidth=this.getSmallestDifference(data,this.colY)||1}}this._initializeRange(data,this.colX,graph3d,withBars);this._initializeRange(data,this.colY,graph3d,withBars);this._initializeRange(data,this.colZ,graph3d,false);if(data[0].hasOwnProperty(\"style\")){this.colValue=\"style\";var valueRange=this.getColumnRange(data,this.colValue);this._setRangeDefaults(valueRange,graph3d.defaultValueMin,graph3d.defaultValueMax);this.valueRange=valueRange}var table=this.getDataTable();if(table[0].hasOwnProperty(\"filter\")){if(this.dataFilter===undefined){this.dataFilter=new Filter(this,\"filter\",graph3d);this.dataFilter.setOnLoadCallback(function(){graph3d.redraw()})}}var dataPoints;if(this.dataFilter){dataPoints=this.dataFilter._getDataPoints()}else{dataPoints=this._getDataPoints(this.getDataTable())}return dataPoints};DataGroup.prototype._collectRangeSettings=function(column,graph3d){var index=[\"x\",\"y\",\"z\"].indexOf(column);if(index==-1){throw new Error(\"Column '\"+column+\"' invalid\")}var upper=column.toUpperCase();return{barWidth:this[column+\"BarWidth\"],min:graph3d[\"default\"+upper+\"Min\"],max:graph3d[\"default\"+upper+\"Max\"],step:graph3d[\"default\"+upper+\"Step\"],range_label:column+\"Range\",step_label:column+\"Step\"}};DataGroup.prototype._initializeRange=function(data,column,graph3d,withBars){var NUMSTEPS=5;var settings=this._collectRangeSettings(column,graph3d);var range=this.getColumnRange(data,column);if(withBars&&column!=\"z\"){range.expand(settings.barWidth/2)}this._setRangeDefaults(range,settings.min,settings.max);this[settings.range_label]=range;this[settings.step_label]=settings.step!==undefined?settings.step:range.range()/NUMSTEPS};DataGroup.prototype.getDistinctValues=function(column,data){if(data===undefined){data=this.dataTable}var values=[];for(var i=0;i<data.length;i++){var value=data[i][column]||0;if(values.indexOf(value)===-1){values.push(value)}}return values.sort(function(a,b){return a-b})};DataGroup.prototype.getSmallestDifference=function(data,column){var values=this.getDistinctValues(data,column);var smallest_diff=null;for(var i=1;i<values.length;i++){var diff=values[i]-values[i-1];if(smallest_diff==null||smallest_diff>diff){smallest_diff=diff}}return smallest_diff};DataGroup.prototype.getColumnRange=function(data,column){var range=new Range;for(var i=0;i<data.length;i++){var item=data[i][column];range.adjust(item)}return range};DataGroup.prototype.getNumberOfRows=function(){return this.dataTable.length};DataGroup.prototype._setRangeDefaults=function(range,defaultMin,defaultMax){if(defaultMin!==undefined){range.min=defaultMin}if(defaultMax!==undefined){range.max=defaultMax}if(range.max<=range.min)range.max=range.min+1};DataGroup.prototype.getDataTable=function(){return this.dataTable};DataGroup.prototype.getDataSet=function(){return this.dataSet};DataGroup.prototype.getDataPoints=function(data){var dataPoints=[];for(var i=0;i<data.length;i++){var point=new Point3d;point.x=data[i][this.colX]||0;point.y=data[i][this.colY]||0;point.z=data[i][this.colZ]||0;point.data=data[i];if(this.colValue!==undefined){point.value=data[i][this.colValue]||0}var obj={};obj.point=point;obj.bottom=new Point3d(point.x,point.y,this.zRange.min);obj.trans=undefined;obj.screen=undefined;dataPoints.push(obj)}return dataPoints};DataGroup.prototype.initDataAsMatrix=function(data){var x,y,i,obj;var dataX=this.getDistinctValues(this.colX,data);var dataY=this.getDistinctValues(this.colY,data);var dataPoints=this.getDataPoints(data);var dataMatrix=[];for(i=0;i<dataPoints.length;i++){obj=dataPoints[i];var xIndex=dataX.indexOf(obj.point.x);var yIndex=dataY.indexOf(obj.point.y);if(dataMatrix[xIndex]===undefined){dataMatrix[xIndex]=[]}dataMatrix[xIndex][yIndex]=obj}for(x=0;x<dataMatrix.length;x++){for(y=0;y<dataMatrix[x].length;y++){if(dataMatrix[x][y]){dataMatrix[x][y].pointRight=x<dataMatrix.length-1?dataMatrix[x+1][y]:undefined;dataMatrix[x][y].pointTop=y<dataMatrix[x].length-1?dataMatrix[x][y+1]:undefined;dataMatrix[x][y].pointCross=x<dataMatrix.length-1&&y<dataMatrix[x].length-1?dataMatrix[x+1][y+1]:undefined}}}return dataPoints};DataGroup.prototype.getInfo=function(){var dataFilter=this.dataFilter;if(!dataFilter)return undefined;return dataFilter.getLabel()+\": \"+dataFilter.getSelectedValue()};DataGroup.prototype.reload=function(){if(this.dataTable){this.setData(this.dataTable)}};DataGroup.prototype._getDataPoints=function(data){var dataPoints=[];if(this.style===Settings.STYLE.GRID||this.style===Settings.STYLE.SURFACE){dataPoints=this.initDataAsMatrix(data)}else{this._checkValueField(data);dataPoints=this.getDataPoints(data);if(this.style===Settings.STYLE.LINE){for(var i=0;i<dataPoints.length;i++){if(i>0){dataPoints[i-1].pointNext=dataPoints[i]}}}}return dataPoints};DataGroup.prototype._checkValueField=function(data){var hasValueField=this.style===Settings.STYLE.BARCOLOR||this.style===Settings.STYLE.BARSIZE||this.style===Settings.STYLE.DOTCOLOR||this.style===Settings.STYLE.DOTSIZE;if(!hasValueField){return}if(this.colValue===undefined){throw new Error(\"Expected data to have \"+\" field 'style' \"+\" for graph style '\"+this.style+\"'\")}if(data[0][this.colValue]===undefined){throw new Error(\"Expected data to have \"+\" field '\"+this.colValue+\"' \"+\" for graph style '\"+this.style+\"'\")}};module.exports=DataGroup},function(module,exports,__webpack_require__){\"use strict\";function Range(){this.min=undefined;this.max=undefined}Range.prototype.adjust=function(value){if(value===undefined)return;if(this.min===undefined||this.min>value){this.min=value}if(this.max===undefined||this.max<value){this.max=value}};Range.prototype.combine=function(range){this.add(range.min);this.add(range.max)};Range.prototype.expand=function(val){if(val===undefined){return}var newMin=this.min-val;var newMax=this.max+val;if(newMin>newMax){throw new Error(\"Passed expansion value makes range invalid\")}this.min=newMin;this.max=newMax};Range.prototype.range=function(){return this.max-this.min};Range.prototype.center=function(){return(this.min+this.max)/2};module.exports=Range},function(module,exports,__webpack_require__){\"use strict\";var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(factory){if(true){!(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,__WEBPACK_AMD_DEFINE_RESULT__=typeof __WEBPACK_AMD_DEFINE_FACTORY__===\"function\"?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof exports===\"object\"){module.exports=factory()}else{window.propagating=factory()}})(function(){var _firstTarget=null;return function propagating(hammer,options){var _options=options||{preventDefault:false};if(hammer.Manager){var Hammer=hammer;var PropagatingHammer=function(element,options){var o=Object.create(_options);if(options)Hammer.assign(o,options);return propagating(new Hammer(element,o),o)};Hammer.assign(PropagatingHammer,Hammer);PropagatingHammer.Manager=function(element,options){var o=Object.create(_options);if(options)Hammer.assign(o,options);return propagating(new Hammer.Manager(element,o),o)};return PropagatingHammer}var wrapper=Object.create(hammer);var element=hammer.element;if(!element.hammer)element.hammer=[];element.hammer.push(wrapper);hammer.on(\"hammer.input\",function(event){if(_options.preventDefault===true||_options.preventDefault===event.pointerType){event.preventDefault()}if(event.isFirst){_firstTarget=event.target}});wrapper._handlers={};wrapper.on=function(events,handler){split(events).forEach(function(event){var _handlers=wrapper._handlers[event];if(!_handlers){wrapper._handlers[event]=_handlers=[];hammer.on(event,propagatedHandler)}_handlers.push(handler)});return wrapper};wrapper.off=function(events,handler){split(events).forEach(function(event){var _handlers=wrapper._handlers[event];if(_handlers){_handlers=handler?_handlers.filter(function(h){return h!==handler}):[];if(_handlers.length>0){wrapper._handlers[event]=_handlers}else{hammer.off(event,propagatedHandler);delete wrapper._handlers[event]}}});return wrapper};wrapper.emit=function(eventType,event){_firstTarget=event.target;hammer.emit(eventType,event)};wrapper.destroy=function(){var hammers=hammer.element.hammer;var idx=hammers.indexOf(wrapper);if(idx!==-1)hammers.splice(idx,1);if(!hammers.length)delete hammer.element.hammer;wrapper._handlers={};hammer.destroy()};function split(events){return events.match(/[^ ]+/g)}function propagatedHandler(event){if(event.type!==\"hammer.input\"){if(!event.srcEvent._handled){event.srcEvent._handled={}}if(event.srcEvent._handled[event.type]){return}else{event.srcEvent._handled[event.type]=true}}var stopped=false\n;event.stopPropagation=function(){stopped=true};var srcStop=event.srcEvent.stopPropagation.bind(event.srcEvent);if(typeof srcStop==\"function\"){event.srcEvent.stopPropagation=function(){srcStop();event.stopPropagation()}}event.firstTarget=_firstTarget;var elem=_firstTarget;while(elem&&!stopped){var elemHammer=elem.hammer;if(elemHammer){var _handlers;for(var k=0;k<elemHammer.length;k++){_handlers=elemHammer[k]._handlers[event.type];if(_handlers)for(var i=0;i<_handlers.length&&!stopped;i++){_handlers[i](event)}}}elem=elem.parentNode}}return wrapper}})},function(module,exports,__webpack_require__){var __WEBPACK_AMD_DEFINE_RESULT__;(function(window,document,exportName,undefined){\"use strict\";var VENDOR_PREFIXES=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"];var TEST_ELEMENT=document.createElement(\"div\");var TYPE_FUNCTION=\"function\";var round=Math.round;var abs=Math.abs;var now=Date.now;function setTimeoutContext(fn,timeout,context){return setTimeout(bindFn(fn,context),timeout)}function invokeArrayArg(arg,fn,context){if(Array.isArray(arg)){each(arg,context[fn],context);return true}return false}function each(obj,iterator,context){var i;if(!obj){return}if(obj.forEach){obj.forEach(iterator,context)}else if(obj.length!==undefined){i=0;while(i<obj.length){iterator.call(context,obj[i],i,obj);i++}}else{for(i in obj){obj.hasOwnProperty(i)&&iterator.call(context,obj[i],i,obj)}}}function deprecate(method,name,message){var deprecationMessage=\"DEPRECATED METHOD: \"+name+\"\\n\"+message+\" AT \\n\";return function(){var e=new Error(\"get-stack-trace\");var stack=e&&e.stack?e.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\";var log=window.console&&(window.console.warn||window.console.log);if(log){log.call(window.console,deprecationMessage,stack)}return method.apply(this,arguments)}}var assign;if(typeof Object.assign!==\"function\"){assign=function assign(target){if(target===undefined||target===null){throw new TypeError(\"Cannot convert undefined or null to object\")}var output=Object(target);for(var index=1;index<arguments.length;index++){var source=arguments[index];if(source!==undefined&&source!==null){for(var nextKey in source){if(source.hasOwnProperty(nextKey)){output[nextKey]=source[nextKey]}}}}return output}}else{assign=Object.assign}var extend=deprecate(function extend(dest,src,merge){var keys=Object.keys(src);var i=0;while(i<keys.length){if(!merge||merge&&dest[keys[i]]===undefined){dest[keys[i]]=src[keys[i]]}i++}return dest},\"extend\",\"Use `assign`.\");var merge=deprecate(function merge(dest,src){return extend(dest,src,true)},\"merge\",\"Use `assign`.\");function inherit(child,base,properties){var baseP=base.prototype,childP;childP=child.prototype=Object.create(baseP);childP.constructor=child;childP._super=baseP;if(properties){assign(childP,properties)}}function bindFn(fn,context){return function boundFn(){return fn.apply(context,arguments)}}function boolOrFn(val,args){if(typeof val==TYPE_FUNCTION){return val.apply(args?args[0]||undefined:undefined,args)}return val}function ifUndefined(val1,val2){return val1===undefined?val2:val1}function addEventListeners(target,types,handler){each(splitStr(types),function(type){target.addEventListener(type,handler,false)})}function removeEventListeners(target,types,handler){each(splitStr(types),function(type){target.removeEventListener(type,handler,false)})}function hasParent(node,parent){while(node){if(node==parent){return true}node=node.parentNode}return false}function inStr(str,find){return str.indexOf(find)>-1}function splitStr(str){return str.trim().split(/\\s+/g)}function inArray(src,find,findByKey){if(src.indexOf&&!findByKey){return src.indexOf(find)}else{var i=0;while(i<src.length){if(findByKey&&src[i][findByKey]==find||!findByKey&&src[i]===find){return i}i++}return-1}}function toArray(obj){return Array.prototype.slice.call(obj,0)}function uniqueArray(src,key,sort){var results=[];var values=[];var i=0;while(i<src.length){var val=key?src[i][key]:src[i];if(inArray(values,val)<0){results.push(src[i])}values[i]=val;i++}if(sort){if(!key){results=results.sort()}else{results=results.sort(function sortUniqueArray(a,b){return a[key]>b[key]})}}return results}function prefixed(obj,property){var prefix,prop;var camelProp=property[0].toUpperCase()+property.slice(1);var i=0;while(i<VENDOR_PREFIXES.length){prefix=VENDOR_PREFIXES[i];prop=prefix?prefix+camelProp:property;if(prop in obj){return prop}i++}return undefined}var _uniqueId=1;function uniqueId(){return _uniqueId++}function getWindowForElement(element){var doc=element.ownerDocument||element;return doc.defaultView||doc.parentWindow||window}var MOBILE_REGEX=/mobile|tablet|ip(ad|hone|od)|android/i;var SUPPORT_TOUCH=\"ontouchstart\"in window;var SUPPORT_POINTER_EVENTS=prefixed(window,\"PointerEvent\")!==undefined;var SUPPORT_ONLY_TOUCH=SUPPORT_TOUCH&&MOBILE_REGEX.test(navigator.userAgent);var INPUT_TYPE_TOUCH=\"touch\";var INPUT_TYPE_PEN=\"pen\";var INPUT_TYPE_MOUSE=\"mouse\";var INPUT_TYPE_KINECT=\"kinect\";var COMPUTE_INTERVAL=25;var INPUT_START=1;var INPUT_MOVE=2;var INPUT_END=4;var INPUT_CANCEL=8;var DIRECTION_NONE=1;var DIRECTION_LEFT=2;var DIRECTION_RIGHT=4;var DIRECTION_UP=8;var DIRECTION_DOWN=16;var DIRECTION_HORIZONTAL=DIRECTION_LEFT|DIRECTION_RIGHT;var DIRECTION_VERTICAL=DIRECTION_UP|DIRECTION_DOWN;var DIRECTION_ALL=DIRECTION_HORIZONTAL|DIRECTION_VERTICAL;var PROPS_XY=[\"x\",\"y\"];var PROPS_CLIENT_XY=[\"clientX\",\"clientY\"];function Input(manager,callback){var self=this;this.manager=manager;this.callback=callback;this.element=manager.element;this.target=manager.options.inputTarget;this.domHandler=function(ev){if(boolOrFn(manager.options.enable,[manager])){self.handler(ev)}};this.init()}Input.prototype={handler:function(){},init:function(){this.evEl&&addEventListeners(this.element,this.evEl,this.domHandler);this.evTarget&&addEventListeners(this.target,this.evTarget,this.domHandler);this.evWin&&addEventListeners(getWindowForElement(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&removeEventListeners(this.element,this.evEl,this.domHandler);this.evTarget&&removeEventListeners(this.target,this.evTarget,this.domHandler);this.evWin&&removeEventListeners(getWindowForElement(this.element),this.evWin,this.domHandler)}};function createInputInstance(manager){var Type;var inputClass=manager.options.inputClass;if(inputClass){Type=inputClass}else if(SUPPORT_POINTER_EVENTS){Type=PointerEventInput}else if(SUPPORT_ONLY_TOUCH){Type=TouchInput}else if(!SUPPORT_TOUCH){Type=MouseInput}else{Type=TouchMouseInput}return new Type(manager,inputHandler)}function inputHandler(manager,eventType,input){var pointersLen=input.pointers.length;var changedPointersLen=input.changedPointers.length;var isFirst=eventType&INPUT_START&&pointersLen-changedPointersLen===0;var isFinal=eventType&(INPUT_END|INPUT_CANCEL)&&pointersLen-changedPointersLen===0;input.isFirst=!!isFirst;input.isFinal=!!isFinal;if(isFirst){manager.session={}}input.eventType=eventType;computeInputData(manager,input);manager.emit(\"hammer.input\",input);manager.recognize(input);manager.session.prevInput=input}function computeInputData(manager,input){var session=manager.session;var pointers=input.pointers;var pointersLength=pointers.length;if(!session.firstInput){session.firstInput=simpleCloneInputData(input)}if(pointersLength>1&&!session.firstMultiple){session.firstMultiple=simpleCloneInputData(input)}else if(pointersLength===1){session.firstMultiple=false}var firstInput=session.firstInput;var firstMultiple=session.firstMultiple;var offsetCenter=firstMultiple?firstMultiple.center:firstInput.center;var center=input.center=getCenter(pointers);input.timeStamp=now();input.deltaTime=input.timeStamp-firstInput.timeStamp;input.angle=getAngle(offsetCenter,center);input.distance=getDistance(offsetCenter,center);computeDeltaXY(session,input);input.offsetDirection=getDirection(input.deltaX,input.deltaY);var overallVelocity=getVelocity(input.deltaTime,input.deltaX,input.deltaY);input.overallVelocityX=overallVelocity.x;input.overallVelocityY=overallVelocity.y;input.overallVelocity=abs(overallVelocity.x)>abs(overallVelocity.y)?overallVelocity.x:overallVelocity.y;input.scale=firstMultiple?getScale(firstMultiple.pointers,pointers):1;input.rotation=firstMultiple?getRotation(firstMultiple.pointers,pointers):0;input.maxPointers=!session.prevInput?input.pointers.length:input.pointers.length>session.prevInput.maxPointers?input.pointers.length:session.prevInput.maxPointers;computeIntervalInputData(session,input);var target=manager.element;if(hasParent(input.srcEvent.target,target)){target=input.srcEvent.target}input.target=target}function computeDeltaXY(session,input){var center=input.center;var offset=session.offsetDelta||{};var prevDelta=session.prevDelta||{};var prevInput=session.prevInput||{};if(input.eventType===INPUT_START||prevInput.eventType===INPUT_END){prevDelta=session.prevDelta={x:prevInput.deltaX||0,y:prevInput.deltaY||0};offset=session.offsetDelta={x:center.x,y:center.y}}input.deltaX=prevDelta.x+(center.x-offset.x);input.deltaY=prevDelta.y+(center.y-offset.y)}function computeIntervalInputData(session,input){var last=session.lastInterval||input,deltaTime=input.timeStamp-last.timeStamp,velocity,velocityX,velocityY,direction;if(input.eventType!=INPUT_CANCEL&&(deltaTime>COMPUTE_INTERVAL||last.velocity===undefined)){var deltaX=input.deltaX-last.deltaX;var deltaY=input.deltaY-last.deltaY;var v=getVelocity(deltaTime,deltaX,deltaY);velocityX=v.x;velocityY=v.y;velocity=abs(v.x)>abs(v.y)?v.x:v.y;direction=getDirection(deltaX,deltaY);session.lastInterval=input}else{velocity=last.velocity;velocityX=last.velocityX;velocityY=last.velocityY;direction=last.direction}input.velocity=velocity;input.velocityX=velocityX;input.velocityY=velocityY;input.direction=direction}function simpleCloneInputData(input){var pointers=[];var i=0;while(i<input.pointers.length){pointers[i]={clientX:round(input.pointers[i].clientX),clientY:round(input.pointers[i].clientY)};i++}return{timeStamp:now(),pointers:pointers,center:getCenter(pointers),deltaX:input.deltaX,deltaY:input.deltaY}}function getCenter(pointers){var pointersLength=pointers.length;if(pointersLength===1){return{x:round(pointers[0].clientX),y:round(pointers[0].clientY)}}var x=0,y=0,i=0;while(i<pointersLength){x+=pointers[i].clientX;y+=pointers[i].clientY;i++}return{x:round(x/pointersLength),y:round(y/pointersLength)}}function getVelocity(deltaTime,x,y){return{x:x/deltaTime||0,y:y/deltaTime||0}}function getDirection(x,y){if(x===y){return DIRECTION_NONE}if(abs(x)>=abs(y)){return x<0?DIRECTION_LEFT:DIRECTION_RIGHT}return y<0?DIRECTION_UP:DIRECTION_DOWN}function getDistance(p1,p2,props){if(!props){props=PROPS_XY}var x=p2[props[0]]-p1[props[0]],y=p2[props[1]]-p1[props[1]];return Math.sqrt(x*x+y*y)}function getAngle(p1,p2,props){if(!props){props=PROPS_XY}var x=p2[props[0]]-p1[props[0]],y=p2[props[1]]-p1[props[1]];return Math.atan2(y,x)*180/Math.PI}function getRotation(start,end){return getAngle(end[1],end[0],PROPS_CLIENT_XY)+getAngle(start[1],start[0],PROPS_CLIENT_XY)}function getScale(start,end){return getDistance(end[0],end[1],PROPS_CLIENT_XY)/getDistance(start[0],start[1],PROPS_CLIENT_XY)}var MOUSE_INPUT_MAP={mousedown:INPUT_START,mousemove:INPUT_MOVE,mouseup:INPUT_END};var MOUSE_ELEMENT_EVENTS=\"mousedown\";var MOUSE_WINDOW_EVENTS=\"mousemove mouseup\";function MouseInput(){this.evEl=MOUSE_ELEMENT_EVENTS;this.evWin=MOUSE_WINDOW_EVENTS;this.pressed=false;Input.apply(this,arguments)}inherit(MouseInput,Input,{handler:function MEhandler(ev){var eventType=MOUSE_INPUT_MAP[ev.type];if(eventType&INPUT_START&&ev.button===0){this.pressed=true}if(eventType&INPUT_MOVE&&ev.which!==1){eventType=INPUT_END}if(!this.pressed){return}if(eventType&INPUT_END){this.pressed=false}this.callback(this.manager,eventType,{pointers:[ev],changedPointers:[ev],pointerType:INPUT_TYPE_MOUSE,srcEvent:ev})}});var POINTER_INPUT_MAP={pointerdown:INPUT_START,pointermove:INPUT_MOVE,pointerup:INPUT_END,pointercancel:INPUT_CANCEL,pointerout:INPUT_CANCEL};var IE10_POINTER_TYPE_ENUM={2:INPUT_TYPE_TOUCH,3:INPUT_TYPE_PEN,4:INPUT_TYPE_MOUSE,5:INPUT_TYPE_KINECT};var POINTER_ELEMENT_EVENTS=\"pointerdown\";var POINTER_WINDOW_EVENTS=\"pointermove pointerup pointercancel\";if(window.MSPointerEvent&&!window.PointerEvent){POINTER_ELEMENT_EVENTS=\"MSPointerDown\";POINTER_WINDOW_EVENTS=\"MSPointerMove MSPointerUp MSPointerCancel\"}function PointerEventInput(){this.evEl=POINTER_ELEMENT_EVENTS;this.evWin=POINTER_WINDOW_EVENTS;Input.apply(this,arguments);this.store=this.manager.session.pointerEvents=[]}inherit(PointerEventInput,Input,{handler:function PEhandler(ev){var store=this.store;var removePointer=false;var eventTypeNormalized=ev.type.toLowerCase().replace(\"ms\",\"\");var eventType=POINTER_INPUT_MAP[eventTypeNormalized];var pointerType=IE10_POINTER_TYPE_ENUM[ev.pointerType]||ev.pointerType;var isTouch=pointerType==INPUT_TYPE_TOUCH;var storeIndex=inArray(store,ev.pointerId,\"pointerId\");if(eventType&INPUT_START&&(ev.button===0||isTouch)){if(storeIndex<0){store.push(ev);storeIndex=store.length-1}}else if(eventType&(INPUT_END|INPUT_CANCEL)){removePointer=true}if(storeIndex<0){return}store[storeIndex]=ev;this.callback(this.manager,eventType,{pointers:store,changedPointers:[ev],pointerType:pointerType,srcEvent:ev});if(removePointer){store.splice(storeIndex,1)}}});var SINGLE_TOUCH_INPUT_MAP={touchstart:INPUT_START,touchmove:INPUT_MOVE,touchend:INPUT_END,touchcancel:INPUT_CANCEL};var SINGLE_TOUCH_TARGET_EVENTS=\"touchstart\";var SINGLE_TOUCH_WINDOW_EVENTS=\"touchstart touchmove touchend touchcancel\";function SingleTouchInput(){this.evTarget=SINGLE_TOUCH_TARGET_EVENTS;this.evWin=SINGLE_TOUCH_WINDOW_EVENTS;this.started=false;Input.apply(this,arguments)}inherit(SingleTouchInput,Input,{handler:function TEhandler(ev){var type=SINGLE_TOUCH_INPUT_MAP[ev.type];if(type===INPUT_START){this.started=true}if(!this.started){return}var touches=normalizeSingleTouches.call(this,ev,type);if(type&(INPUT_END|INPUT_CANCEL)&&touches[0].length-touches[1].length===0){this.started=false}this.callback(this.manager,type,{pointers:touches[0],changedPointers:touches[1],pointerType:INPUT_TYPE_TOUCH,srcEvent:ev})}});function normalizeSingleTouches(ev,type){var all=toArray(ev.touches);var changed=toArray(ev.changedTouches);if(type&(INPUT_END|INPUT_CANCEL)){all=uniqueArray(all.concat(changed),\"identifier\",true)}return[all,changed]}var TOUCH_INPUT_MAP={touchstart:INPUT_START,touchmove:INPUT_MOVE,touchend:INPUT_END,touchcancel:INPUT_CANCEL};var TOUCH_TARGET_EVENTS=\"touchstart touchmove touchend touchcancel\";function TouchInput(){this.evTarget=TOUCH_TARGET_EVENTS;this.targetIds={};Input.apply(this,arguments)}inherit(TouchInput,Input,{handler:function MTEhandler(ev){var type=TOUCH_INPUT_MAP[ev.type];var touches=getTouches.call(this,ev,type);if(!touches){return}this.callback(this.manager,type,{pointers:touches[0],changedPointers:touches[1],pointerType:INPUT_TYPE_TOUCH,srcEvent:ev})}});function getTouches(ev,type){var allTouches=toArray(ev.touches);var targetIds=this.targetIds;if(type&(INPUT_START|INPUT_MOVE)&&allTouches.length===1){targetIds[allTouches[0].identifier]=true;return[allTouches,allTouches]}var i,targetTouches,changedTouches=toArray(ev.changedTouches),changedTargetTouches=[],target=this.target;targetTouches=allTouches.filter(function(touch){return hasParent(touch.target,target)});if(type===INPUT_START){i=0;while(i<targetTouches.length){targetIds[targetTouches[i].identifier]=true;i++}}i=0;while(i<changedTouches.length){if(targetIds[changedTouches[i].identifier]){changedTargetTouches.push(changedTouches[i])}if(type&(INPUT_END|INPUT_CANCEL)){delete targetIds[changedTouches[i].identifier]}i++}if(!changedTargetTouches.length){return}return[uniqueArray(targetTouches.concat(changedTargetTouches),\"identifier\",true),changedTargetTouches]}var DEDUP_TIMEOUT=2500;var DEDUP_DISTANCE=25;function TouchMouseInput(){Input.apply(this,arguments);var handler=bindFn(this.handler,this);this.touch=new TouchInput(this.manager,handler);this.mouse=new MouseInput(this.manager,handler);this.primaryTouch=null;this.lastTouches=[]}inherit(TouchMouseInput,Input,{handler:function TMEhandler(manager,inputEvent,inputData){var isTouch=inputData.pointerType==INPUT_TYPE_TOUCH,isMouse=inputData.pointerType==INPUT_TYPE_MOUSE;if(isMouse&&inputData.sourceCapabilities&&inputData.sourceCapabilities.firesTouchEvents){return}if(isTouch){recordTouches.call(this,inputEvent,inputData)}else if(isMouse&&isSyntheticEvent.call(this,inputData)){return}this.callback(manager,inputEvent,inputData)},destroy:function destroy(){this.touch.destroy();this.mouse.destroy()}});function recordTouches(eventType,eventData){if(eventType&INPUT_START){this.primaryTouch=eventData.changedPointers[0].identifier;setLastTouch.call(this,eventData)}else if(eventType&(INPUT_END|INPUT_CANCEL)){setLastTouch.call(this,eventData)}}function setLastTouch(eventData){var touch=eventData.changedPointers[0];if(touch.identifier===this.primaryTouch){var lastTouch={x:touch.clientX,y:touch.clientY};this.lastTouches.push(lastTouch);var lts=this.lastTouches;var removeLastTouch=function(){var i=lts.indexOf(lastTouch);if(i>-1){lts.splice(i,1)}};setTimeout(removeLastTouch,DEDUP_TIMEOUT)}}function isSyntheticEvent(eventData){var x=eventData.srcEvent.clientX,y=eventData.srcEvent.clientY;for(var i=0;i<this.lastTouches.length;i++){var t=this.lastTouches[i];var dx=Math.abs(x-t.x),dy=Math.abs(y-t.y);if(dx<=DEDUP_DISTANCE&&dy<=DEDUP_DISTANCE){return true}}return false}var PREFIXED_TOUCH_ACTION=prefixed(TEST_ELEMENT.style,\"touchAction\");var NATIVE_TOUCH_ACTION=PREFIXED_TOUCH_ACTION!==undefined;var TOUCH_ACTION_COMPUTE=\"compute\";var TOUCH_ACTION_AUTO=\"auto\";var TOUCH_ACTION_MANIPULATION=\"manipulation\";var TOUCH_ACTION_NONE=\"none\";var TOUCH_ACTION_PAN_X=\"pan-x\";var TOUCH_ACTION_PAN_Y=\"pan-y\";var TOUCH_ACTION_MAP=getTouchActionProps();function TouchAction(manager,value){this.manager=manager;this.set(value)}TouchAction.prototype={set:function(value){if(value==TOUCH_ACTION_COMPUTE){value=this.compute()}if(NATIVE_TOUCH_ACTION&&this.manager.element.style&&TOUCH_ACTION_MAP[value]){this.manager.element.style[PREFIXED_TOUCH_ACTION]=value}this.actions=value.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var actions=[];each(this.manager.recognizers,function(recognizer){if(boolOrFn(recognizer.options.enable,[recognizer])){actions=actions.concat(recognizer.getTouchAction())}});return cleanTouchActions(actions.join(\" \"))},preventDefaults:function(input){var srcEvent=input.srcEvent;var direction=input.offsetDirection;if(this.manager.session.prevented){srcEvent.preventDefault();return}var actions=this.actions;var hasNone=inStr(actions,TOUCH_ACTION_NONE)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_NONE];var hasPanY=inStr(actions,TOUCH_ACTION_PAN_Y)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y];var hasPanX=inStr(actions,TOUCH_ACTION_PAN_X)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X];if(hasNone){var isTapPointer=input.pointers.length===1;var isTapMovement=input.distance<2;var isTapTouchTime=input.deltaTime<250;if(isTapPointer&&isTapMovement&&isTapTouchTime){return}}if(hasPanX&&hasPanY){return}if(hasNone||hasPanY&&direction&DIRECTION_HORIZONTAL||hasPanX&&direction&DIRECTION_VERTICAL){return this.preventSrc(srcEvent)}},preventSrc:function(srcEvent){this.manager.session.prevented=true;srcEvent.preventDefault()}};function cleanTouchActions(actions){if(inStr(actions,TOUCH_ACTION_NONE)){return TOUCH_ACTION_NONE}var hasPanX=inStr(actions,TOUCH_ACTION_PAN_X);var hasPanY=inStr(actions,TOUCH_ACTION_PAN_Y);if(hasPanX&&hasPanY){return TOUCH_ACTION_NONE}if(hasPanX||hasPanY){return hasPanX?TOUCH_ACTION_PAN_X:TOUCH_ACTION_PAN_Y}if(inStr(actions,TOUCH_ACTION_MANIPULATION)){return TOUCH_ACTION_MANIPULATION}return TOUCH_ACTION_AUTO}function getTouchActionProps(){if(!NATIVE_TOUCH_ACTION){return false}var touchMap={};var cssSupports=window.CSS&&window.CSS.supports;[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach(function(val){touchMap[val]=cssSupports?window.CSS.supports(\"touch-action\",val):true});return touchMap}var STATE_POSSIBLE=1;var STATE_BEGAN=2;var STATE_CHANGED=4;var STATE_ENDED=8;var STATE_RECOGNIZED=STATE_ENDED;var STATE_CANCELLED=16;var STATE_FAILED=32;function Recognizer(options){this.options=assign({},this.defaults,options||{});this.id=uniqueId();this.manager=null;this.options.enable=ifUndefined(this.options.enable,true);this.state=STATE_POSSIBLE;this.simultaneous={};this.requireFail=[]}Recognizer.prototype={defaults:{},set:function(options){assign(this.options,options);this.manager&&this.manager.touchAction.update();return this},recognizeWith:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"recognizeWith\",this)){return this}var simultaneous=this.simultaneous;otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);if(!simultaneous[otherRecognizer.id]){simultaneous[otherRecognizer.id]=otherRecognizer;otherRecognizer.recognizeWith(this)}return this},dropRecognizeWith:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"dropRecognizeWith\",this)){return this}otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);delete this.simultaneous[otherRecognizer.id];return this},requireFailure:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"requireFailure\",this)){return this}var requireFail=this.requireFail;otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);if(inArray(requireFail,otherRecognizer)===-1){requireFail.push(otherRecognizer);otherRecognizer.requireFailure(this)}return this},dropRequireFailure:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"dropRequireFailure\",this)){return this}otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);var index=inArray(this.requireFail,otherRecognizer);if(index>-1){this.requireFail.splice(index,1)}return this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(otherRecognizer){return!!this.simultaneous[otherRecognizer.id]},emit:function(input){var self=this;var state=this.state;function emit(event){self.manager.emit(event,input)}if(state<STATE_ENDED){emit(self.options.event+stateStr(state))}emit(self.options.event);if(input.additionalEvent){emit(input.additionalEvent)}if(state>=STATE_ENDED){emit(self.options.event+stateStr(state))}},tryEmit:function(input){if(this.canEmit()){return this.emit(input)}this.state=STATE_FAILED},canEmit:function(){var i=0;while(i<this.requireFail.length){if(!(this.requireFail[i].state&(STATE_FAILED|STATE_POSSIBLE))){return false}i++}return true},recognize:function(inputData){var inputDataClone=assign({},inputData);if(!boolOrFn(this.options.enable,[this,inputDataClone])){this.reset();this.state=STATE_FAILED;return}if(this.state&(STATE_RECOGNIZED|STATE_CANCELLED|STATE_FAILED)){this.state=STATE_POSSIBLE}this.state=this.process(inputDataClone);if(this.state&(STATE_BEGAN|STATE_CHANGED|STATE_ENDED|STATE_CANCELLED)){this.tryEmit(inputDataClone)}},process:function(inputData){},getTouchAction:function(){},reset:function(){}};function stateStr(state){if(state&STATE_CANCELLED){return\"cancel\"}else if(state&STATE_ENDED){return\"end\"}else if(state&STATE_CHANGED){return\"move\"}else if(state&STATE_BEGAN){return\"start\"}return\"\"}function directionStr(direction){if(direction==DIRECTION_DOWN){return\"down\"}else if(direction==DIRECTION_UP){return\"up\"}else if(direction==DIRECTION_LEFT){return\"left\"}else if(direction==DIRECTION_RIGHT){return\"right\"}return\"\"}function getRecognizerByNameIfManager(otherRecognizer,recognizer){var manager=recognizer.manager;if(manager){return manager.get(otherRecognizer)}return otherRecognizer}function AttrRecognizer(){Recognizer.apply(this,arguments)}inherit(AttrRecognizer,Recognizer,{defaults:{pointers:1},attrTest:function(input){var optionPointers=this.options.pointers;return optionPointers===0||input.pointers.length===optionPointers},process:function(input){var state=this.state;var eventType=input.eventType;var isRecognized=state&(STATE_BEGAN|STATE_CHANGED);var isValid=this.attrTest(input);if(isRecognized&&(eventType&INPUT_CANCEL||!isValid)){return state|STATE_CANCELLED}else if(isRecognized||isValid){if(eventType&INPUT_END){return state|STATE_ENDED}else if(!(state&STATE_BEGAN)){return STATE_BEGAN}return state|STATE_CHANGED}return STATE_FAILED}});function PanRecognizer(){AttrRecognizer.apply(this,arguments);this.pX=null;this.pY=null}inherit(PanRecognizer,AttrRecognizer,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:DIRECTION_ALL},getTouchAction:function(){var direction=this.options.direction;var actions=[];if(direction&DIRECTION_HORIZONTAL){actions.push(TOUCH_ACTION_PAN_Y)}if(direction&DIRECTION_VERTICAL){actions.push(TOUCH_ACTION_PAN_X)}return actions},directionTest:function(input){var options=this.options;var hasMoved=true;var distance=input.distance;var direction=input.direction;var x=input.deltaX;var y=input.deltaY;if(!(direction&options.direction)){if(options.direction&DIRECTION_HORIZONTAL){direction=x===0?DIRECTION_NONE:x<0?DIRECTION_LEFT:DIRECTION_RIGHT;hasMoved=x!=this.pX;distance=Math.abs(input.deltaX)}else{direction=y===0?DIRECTION_NONE:y<0?DIRECTION_UP:DIRECTION_DOWN;hasMoved=y!=this.pY;distance=Math.abs(input.deltaY)}}input.direction=direction;return hasMoved&&distance>options.threshold&&direction&options.direction},attrTest:function(input){return AttrRecognizer.prototype.attrTest.call(this,input)&&(this.state&STATE_BEGAN||!(this.state&STATE_BEGAN)&&this.directionTest(input))},emit:function(input){this.pX=input.deltaX;this.pY=input.deltaY;var direction=directionStr(input.direction);if(direction){input.additionalEvent=this.options.event+direction}this._super.emit.call(this,input)}});function PinchRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(PinchRecognizer,AttrRecognizer,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[TOUCH_ACTION_NONE]},attrTest:function(input){return this._super.attrTest.call(this,input)&&(Math.abs(input.scale-1)>this.options.threshold||this.state&STATE_BEGAN)},emit:function(input){if(input.scale!==1){var inOut=input.scale<1?\"in\":\"out\";input.additionalEvent=this.options.event+inOut}this._super.emit.call(this,input)}});function PressRecognizer(){Recognizer.apply(this,arguments);this._timer=null;this._input=null}inherit(PressRecognizer,Recognizer,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[TOUCH_ACTION_AUTO]},process:function(input){var options=this.options;var validPointers=input.pointers.length===options.pointers;var validMovement=input.distance<options.threshold;var validTime=input.deltaTime>options.time;this._input=input;if(!validMovement||!validPointers||input.eventType&(INPUT_END|INPUT_CANCEL)&&!validTime){this.reset()}else if(input.eventType&INPUT_START){this.reset();this._timer=setTimeoutContext(function(){this.state=STATE_RECOGNIZED;this.tryEmit()},options.time,this)}else if(input.eventType&INPUT_END){return STATE_RECOGNIZED}return STATE_FAILED},reset:function(){clearTimeout(this._timer)},emit:function(input){if(this.state!==STATE_RECOGNIZED){return}if(input&&input.eventType&INPUT_END){this.manager.emit(this.options.event+\"up\",input)}else{this._input.timeStamp=now();this.manager.emit(this.options.event,this._input)}}});function RotateRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(RotateRecognizer,AttrRecognizer,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[TOUCH_ACTION_NONE]},attrTest:function(input){return this._super.attrTest.call(this,input)&&(Math.abs(input.rotation)>this.options.threshold||this.state&STATE_BEGAN)}});function SwipeRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(SwipeRecognizer,AttrRecognizer,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:DIRECTION_HORIZONTAL|DIRECTION_VERTICAL,pointers:1},getTouchAction:function(){return PanRecognizer.prototype.getTouchAction.call(this)},attrTest:function(input){var direction=this.options.direction;var velocity;if(direction&(DIRECTION_HORIZONTAL|DIRECTION_VERTICAL)){velocity=input.overallVelocity}else if(direction&DIRECTION_HORIZONTAL){velocity=input.overallVelocityX}else if(direction&DIRECTION_VERTICAL){velocity=input.overallVelocityY}return this._super.attrTest.call(this,input)&&direction&input.offsetDirection&&input.distance>this.options.threshold&&input.maxPointers==this.options.pointers&&abs(velocity)>this.options.velocity&&input.eventType&INPUT_END},emit:function(input){var direction=directionStr(input.offsetDirection);if(direction){this.manager.emit(this.options.event+direction,input)}this.manager.emit(this.options.event,input)}});function TapRecognizer(){Recognizer.apply(this,arguments);this.pTime=false;this.pCenter=false;this._timer=null;this._input=null;this.count=0}inherit(TapRecognizer,Recognizer,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[TOUCH_ACTION_MANIPULATION]},process:function(input){var options=this.options;var validPointers=input.pointers.length===options.pointers;var validMovement=input.distance<options.threshold;var validTouchTime=input.deltaTime<options.time;this.reset();if(input.eventType&INPUT_START&&this.count===0){return this.failTimeout()}if(validMovement&&validTouchTime&&validPointers){if(input.eventType!=INPUT_END){return this.failTimeout()}var validInterval=this.pTime?input.timeStamp-this.pTime<options.interval:true;var validMultiTap=!this.pCenter||getDistance(this.pCenter,input.center)<options.posThreshold;this.pTime=input.timeStamp;this.pCenter=input.center;if(!validMultiTap||!validInterval){this.count=1}else{this.count+=1}this._input=input;var tapCount=this.count%options.taps;if(tapCount===0){if(!this.hasRequireFailures()){return STATE_RECOGNIZED}else{this._timer=setTimeoutContext(function(){this.state=STATE_RECOGNIZED;this.tryEmit()},options.interval,this);return STATE_BEGAN}}}return STATE_FAILED},failTimeout:function(){this._timer=setTimeoutContext(function(){this.state=STATE_FAILED},this.options.interval,this);return STATE_FAILED},reset:function(){clearTimeout(this._timer)},emit:function(){if(this.state==STATE_RECOGNIZED){this._input.tapCount=this.count;this.manager.emit(this.options.event,this._input)}}});function Hammer(element,options){options=options||{};options.recognizers=ifUndefined(options.recognizers,Hammer.defaults.preset);return new Manager(element,options)}Hammer.VERSION=\"2.0.7\";Hammer.defaults={domEvents:false,touchAction:TOUCH_ACTION_COMPUTE,enable:true,inputTarget:null,inputClass:null,preset:[[RotateRecognizer,{enable:false}],[PinchRecognizer,{enable:false},[\"rotate\"]],[SwipeRecognizer,{direction:DIRECTION_HORIZONTAL}],[PanRecognizer,{direction:DIRECTION_HORIZONTAL},[\"swipe\"]],[TapRecognizer],[TapRecognizer,{event:\"doubletap\",taps:2},[\"tap\"]],[PressRecognizer]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}};var STOP=1;var FORCED_STOP=2;function Manager(element,options){this.options=assign({},Hammer.defaults,options||{});this.options.inputTarget=this.options.inputTarget||element;this.handlers={};this.session={};this.recognizers=[];this.oldCssProps={};this.element=element;this.input=createInputInstance(this);this.touchAction=new TouchAction(this,this.options.touchAction);toggleCssProps(this,true);each(this.options.recognizers,function(item){var recognizer=this.add(new item[0](item[1]));item[2]&&recognizer.recognizeWith(item[2]);item[3]&&recognizer.requireFailure(item[3])},this)}Manager.prototype={set:function(options){assign(this.options,options);if(options.touchAction){this.touchAction.update()}if(options.inputTarget){this.input.destroy();this.input.target=options.inputTarget;this.input.init()}return this},stop:function(force){this.session.stopped=force?FORCED_STOP:STOP},recognize:function(inputData){var session=this.session;if(session.stopped){return}this.touchAction.preventDefaults(inputData)\n;var recognizer;var recognizers=this.recognizers;var curRecognizer=session.curRecognizer;if(!curRecognizer||curRecognizer&&curRecognizer.state&STATE_RECOGNIZED){curRecognizer=session.curRecognizer=null}var i=0;while(i<recognizers.length){recognizer=recognizers[i];if(session.stopped!==FORCED_STOP&&(!curRecognizer||recognizer==curRecognizer||recognizer.canRecognizeWith(curRecognizer))){recognizer.recognize(inputData)}else{recognizer.reset()}if(!curRecognizer&&recognizer.state&(STATE_BEGAN|STATE_CHANGED|STATE_ENDED)){curRecognizer=session.curRecognizer=recognizer}i++}},get:function(recognizer){if(recognizer instanceof Recognizer){return recognizer}var recognizers=this.recognizers;for(var i=0;i<recognizers.length;i++){if(recognizers[i].options.event==recognizer){return recognizers[i]}}return null},add:function(recognizer){if(invokeArrayArg(recognizer,\"add\",this)){return this}var existing=this.get(recognizer.options.event);if(existing){this.remove(existing)}this.recognizers.push(recognizer);recognizer.manager=this;this.touchAction.update();return recognizer},remove:function(recognizer){if(invokeArrayArg(recognizer,\"remove\",this)){return this}recognizer=this.get(recognizer);if(recognizer){var recognizers=this.recognizers;var index=inArray(recognizers,recognizer);if(index!==-1){recognizers.splice(index,1);this.touchAction.update()}}return this},on:function(events,handler){if(events===undefined){return}if(handler===undefined){return}var handlers=this.handlers;each(splitStr(events),function(event){handlers[event]=handlers[event]||[];handlers[event].push(handler)});return this},off:function(events,handler){if(events===undefined){return}var handlers=this.handlers;each(splitStr(events),function(event){if(!handler){delete handlers[event]}else{handlers[event]&&handlers[event].splice(inArray(handlers[event],handler),1)}});return this},emit:function(event,data){if(this.options.domEvents){triggerDomEvent(event,data)}var handlers=this.handlers[event]&&this.handlers[event].slice();if(!handlers||!handlers.length){return}data.type=event;data.preventDefault=function(){data.srcEvent.preventDefault()};var i=0;while(i<handlers.length){handlers[i](data);i++}},destroy:function(){this.element&&toggleCssProps(this,false);this.handlers={};this.session={};this.input.destroy();this.element=null}};function toggleCssProps(manager,add){var element=manager.element;if(!element.style){return}var prop;each(manager.options.cssProps,function(value,name){prop=prefixed(element.style,name);if(add){manager.oldCssProps[prop]=element.style[prop];element.style[prop]=value}else{element.style[prop]=manager.oldCssProps[prop]||\"\"}});if(!add){manager.oldCssProps={}}}function triggerDomEvent(event,data){var gestureEvent=document.createEvent(\"Event\");gestureEvent.initEvent(event,true,true);gestureEvent.gesture=data;data.target.dispatchEvent(gestureEvent)}assign(Hammer,{INPUT_START:INPUT_START,INPUT_MOVE:INPUT_MOVE,INPUT_END:INPUT_END,INPUT_CANCEL:INPUT_CANCEL,STATE_POSSIBLE:STATE_POSSIBLE,STATE_BEGAN:STATE_BEGAN,STATE_CHANGED:STATE_CHANGED,STATE_ENDED:STATE_ENDED,STATE_RECOGNIZED:STATE_RECOGNIZED,STATE_CANCELLED:STATE_CANCELLED,STATE_FAILED:STATE_FAILED,DIRECTION_NONE:DIRECTION_NONE,DIRECTION_LEFT:DIRECTION_LEFT,DIRECTION_RIGHT:DIRECTION_RIGHT,DIRECTION_UP:DIRECTION_UP,DIRECTION_DOWN:DIRECTION_DOWN,DIRECTION_HORIZONTAL:DIRECTION_HORIZONTAL,DIRECTION_VERTICAL:DIRECTION_VERTICAL,DIRECTION_ALL:DIRECTION_ALL,Manager:Manager,Input:Input,TouchAction:TouchAction,TouchInput:TouchInput,MouseInput:MouseInput,PointerEventInput:PointerEventInput,TouchMouseInput:TouchMouseInput,SingleTouchInput:SingleTouchInput,Recognizer:Recognizer,AttrRecognizer:AttrRecognizer,Tap:TapRecognizer,Pan:PanRecognizer,Swipe:SwipeRecognizer,Pinch:PinchRecognizer,Rotate:RotateRecognizer,Press:PressRecognizer,on:addEventListeners,off:removeEventListeners,each:each,merge:merge,extend:extend,assign:assign,inherit:inherit,bindFn:bindFn,prefixed:prefixed});var freeGlobal=typeof window!==\"undefined\"?window:typeof self!==\"undefined\"?self:{};freeGlobal.Hammer=Hammer;if(true){!(__WEBPACK_AMD_DEFINE_RESULT__=function(){return Hammer}.call(exports,__webpack_require__,exports,module),__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof module!=\"undefined\"&&module.exports){module.exports=Hammer}else{window[exportName]=Hammer}})(window,document,\"Hammer\")},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Timeline=__webpack_require__(178);exports.Graph2d=__webpack_require__(180);exports.timeline={Core:__webpack_require__(65),DateUtil:__webpack_require__(36),Range:__webpack_require__(64),stack:__webpack_require__(100),TimeStep:__webpack_require__(66),components:{items:{Item:__webpack_require__(38),BackgroundItem:__webpack_require__(103),BoxItem:__webpack_require__(101),PointItem:__webpack_require__(102),RangeItem:__webpack_require__(70)},BackgroundGroup:__webpack_require__(69),Component:__webpack_require__(16),CurrentTime:__webpack_require__(67),CustomTime:__webpack_require__(46),DataAxis:__webpack_require__(107),DataScale:__webpack_require__(108),GraphGroup:__webpack_require__(109),Group:__webpack_require__(68),ItemSet:__webpack_require__(99),Legend:__webpack_require__(112),LineGraph:__webpack_require__(106),TimeAxis:__webpack_require__(45)}};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(64);var Core=__webpack_require__(65);var TimeAxis=__webpack_require__(45);var CurrentTime=__webpack_require__(67);var CustomTime=__webpack_require__(46);var ItemSet=__webpack_require__(99);var printStyle=__webpack_require__(15).printStyle;var allOptions=__webpack_require__(105).allOptions;var configureOptions=__webpack_require__(105).configureOptions;var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];function Timeline(container,items,groups,options){if(!(this instanceof Timeline)){throw new SyntaxError(\"Constructor must be called with the new operator\")}if(!(Array.isArray(groups)||groups instanceof DataSet||groups instanceof DataView)&&groups instanceof Object){var forthArgument=options;options=groups;groups=forthArgument}if(options&&options.throttleRedraw){console.warn('Timeline option \"throttleRedraw\" is DEPRICATED and no longer supported. It will be removed in the next MAJOR release.')}var me=this;this.defaultOptions={start:null,end:null,autoResize:true,orientation:{axis:\"bottom\",item:\"bottom\"},moment:moment,width:null,height:null,maxHeight:null,minHeight:null};this.options=util.deepExtend({},this.defaultOptions);this._create(container);if(!options||options&&typeof options.rtl==\"undefined\"){this.dom.root.style.visibility=\"hidden\";var directionFromDom,domNode=this.dom.root;while(!directionFromDom&&domNode){directionFromDom=window.getComputedStyle(domNode,null).direction;domNode=domNode.parentElement}this.options.rtl=directionFromDom&&directionFromDom.toLowerCase()==\"rtl\"}else{this.options.rtl=options.rtl}this.options.rollingMode=options&&options.rollingMode;this.options.onInitialDrawComplete=options&&options.onInitialDrawComplete;this.components=[];this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{getScale:function getScale(){return me.timeAxis.step.scale},getStep:function getStep(){return me.timeAxis.step.step},toScreen:me._toScreen.bind(me),toGlobalScreen:me._toGlobalScreen.bind(me),toTime:me._toTime.bind(me),toGlobalTime:me._toGlobalTime.bind(me)}};this.range=new Range(this.body,this.options);this.components.push(this.range);this.body.range=this.range;this.timeAxis=new TimeAxis(this.body,this.options);this.timeAxis2=null;this.components.push(this.timeAxis);this.currentTime=new CurrentTime(this.body,this.options);this.components.push(this.currentTime);this.itemSet=new ItemSet(this.body,this.options);this.components.push(this.itemSet);this.itemsData=null;this.groupsData=null;this.dom.root.onclick=function(event){me.emit(\"click\",me.getEventProperties(event))};this.dom.root.ondblclick=function(event){me.emit(\"doubleClick\",me.getEventProperties(event))};this.dom.root.oncontextmenu=function(event){me.emit(\"contextmenu\",me.getEventProperties(event))};this.dom.root.onmouseover=function(event){me.emit(\"mouseOver\",me.getEventProperties(event))};if(window.PointerEvent){this.dom.root.onpointerdown=function(event){me.emit(\"mouseDown\",me.getEventProperties(event))};this.dom.root.onpointermove=function(event){me.emit(\"mouseMove\",me.getEventProperties(event))};this.dom.root.onpointerup=function(event){me.emit(\"mouseUp\",me.getEventProperties(event))}}else{this.dom.root.onmousemove=function(event){me.emit(\"mouseMove\",me.getEventProperties(event))};this.dom.root.onmousedown=function(event){me.emit(\"mouseDown\",me.getEventProperties(event))};this.dom.root.onmouseup=function(event){me.emit(\"mouseUp\",me.getEventProperties(event))}}this.initialFitDone=false;this.on(\"changed\",function(){if(this.itemsData==null||this.options.rollingMode)return;if(!me.initialFitDone){me.initialFitDone=true;if(me.options.start!=undefined||me.options.end!=undefined){if(me.options.start==undefined||me.options.end==undefined){var range=me.getItemRange()}var start=me.options.start!=undefined?me.options.start:range.min;var end=me.options.end!=undefined?me.options.end:range.max;me.setWindow(start,end,{animation:false})}else{me.fit({animation:false})}}if(!me.initialDrawDone&&me.initialRangeChangeDone){me.initialDrawDone=true;me.dom.root.style.visibility=\"visible\";if(me.options.onInitialDrawComplete){setTimeout(function(){return me.options.onInitialDrawComplete()},0)}}});if(options){this.setOptions(options)}if(groups){this.setGroups(groups)}if(items){this.setItems(items)}this._redraw()}Timeline.prototype=new Core;Timeline.prototype._createConfigurator=function(){return new Configurator(this,this.dom.container,configureOptions)};Timeline.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:true});this._redraw()};Timeline.prototype.setOptions=function(options){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}Core.prototype.setOptions.call(this,options);if(\"type\"in options){if(options.type!==this.options.type){this.options.type=options.type;var itemsData=this.itemsData;if(itemsData){var selection=this.getSelection();this.setItems(null);this.setItems(itemsData);this.setSelection(selection)}}}};Timeline.prototype.setItems=function(items){var newDataSet;if(!items){newDataSet=null}else if(items instanceof DataSet||items instanceof DataView){newDataSet=items}else{newDataSet=new DataSet(items,{type:{start:\"Date\",end:\"Date\"}})}this.itemsData=newDataSet;this.itemSet&&this.itemSet.setItems(newDataSet)};Timeline.prototype.setGroups=function(groups){var newDataSet;if(!groups){newDataSet=null}else{var filter=function filter(group){return group.visible!==false};if(groups instanceof DataSet||groups instanceof DataView){newDataSet=new DataView(groups,{filter:filter})}else{newDataSet=new DataSet(groups.filter(filter))}}this.groupsData=newDataSet;this.itemSet.setGroups(newDataSet)};Timeline.prototype.setData=function(data){if(data&&data.groups){this.setGroups(data.groups)}if(data&&data.items){this.setItems(data.items)}};Timeline.prototype.setSelection=function(ids,options){this.itemSet&&this.itemSet.setSelection(ids);if(options&&options.focus){this.focus(ids,options)}};Timeline.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]};Timeline.prototype.focus=function(id,options){if(!this.itemsData||id==undefined)return;var ids=Array.isArray(id)?id:[id];var itemsData=this.itemsData.getDataSet().get(ids,{type:{start:\"Date\",end:\"Date\"}});var start=null;var end=null;itemsData.forEach(function(itemData){var s=itemData.start.valueOf();var e=\"end\"in itemData?itemData.end.valueOf():itemData.start.valueOf();if(start===null||s<start){start=s}if(end===null||e>end){end=e}});if(start!==null&&end!==null){var me=this;var item=this.itemSet.items[ids[0]];var startPos=this._getScrollTop()*-1;var initialVerticalScroll=null;var verticalAnimationFrame=function verticalAnimationFrame(ease,willDraw,done){var verticalScroll=getItemVerticalScroll(me,item);if(!initialVerticalScroll){initialVerticalScroll=verticalScroll}if(initialVerticalScroll.itemTop==verticalScroll.itemTop&&!initialVerticalScroll.shouldScroll){return}else if(initialVerticalScroll.itemTop!=verticalScroll.itemTop&&verticalScroll.shouldScroll){initialVerticalScroll=verticalScroll;startPos=me._getScrollTop()*-1}var from=startPos;var to=initialVerticalScroll.scrollOffset;var scrollTop=done?to:from+(to-from)*ease;me._setScrollTop(-scrollTop);if(!willDraw){me._redraw()}};var setFinalVerticalPosition=function setFinalVerticalPosition(){var finalVerticalScroll=getItemVerticalScroll(me,item);if(finalVerticalScroll.shouldScroll&&finalVerticalScroll.itemTop!=initialVerticalScroll.itemTop){me._setScrollTop(-finalVerticalScroll.scrollOffset);me._redraw()}};var finalVerticalCallback=function finalVerticalCallback(){setFinalVerticalPosition();setTimeout(setFinalVerticalPosition,100)};var middle=(start+end)/2;var interval=Math.max(this.range.end-this.range.start,(end-start)*1.1);var animation=options&&options.animation!==undefined?options.animation:true;if(!animation){initialVerticalScroll={shouldScroll:false,scrollOffset:-1,itemTop:-1}}this.range.setRange(middle-interval/2,middle+interval/2,{animation:animation},finalVerticalCallback,verticalAnimationFrame)}};Timeline.prototype.fit=function(options,callback){var animation=options&&options.animation!==undefined?options.animation:true;var range;var dataset=this.itemsData&&this.itemsData.getDataSet();if(dataset.length===1&&dataset.get()[0].end===undefined){range=this.getDataRange();this.moveTo(range.min.valueOf(),{animation:animation},callback)}else{range=this.getItemRange();this.range.setRange(range.min,range.max,{animation:animation},callback)}};function getStart(item){return util.convert(item.data.start,\"Date\").valueOf()}function getEnd(item){var end=item.data.end!=undefined?item.data.end:item.data.start;return util.convert(end,\"Date\").valueOf()}function getItemVerticalScroll(timeline,item){var leftHeight=timeline.props.leftContainer.height;var contentHeight=timeline.props.left.height;var group=item.parent;var offset=group.top;var shouldScroll=true;var orientation=timeline.timeAxis.options.orientation.axis;var itemTop=function itemTop(){if(orientation==\"bottom\"){return group.height-item.top-item.height}else{return item.top}};var currentScrollHeight=timeline._getScrollTop()*-1;var targetOffset=offset+itemTop();var height=item.height;if(targetOffset<currentScrollHeight){if(offset+leftHeight<=offset+itemTop()+height){offset+=itemTop()-timeline.itemSet.options.margin.item.vertical}}else if(targetOffset+height>currentScrollHeight+leftHeight){offset+=itemTop()+height-leftHeight+timeline.itemSet.options.margin.item.vertical}else{shouldScroll=false}offset=Math.min(offset,contentHeight-leftHeight);return{shouldScroll:shouldScroll,scrollOffset:offset,itemTop:targetOffset}}Timeline.prototype.getItemRange=function(){var range=this.getDataRange();var min=range.min!==null?range.min.valueOf():null;var max=range.max!==null?range.max.valueOf():null;var minItem=null;var maxItem=null;if(min!=null&&max!=null){var interval=max-min;if(interval<=0){interval=10}var factor=interval/this.props.center.width;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.itemSet.items,function(item,key){if(item.groupShowing){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}util.forEach(this.itemSet.items,function(item){var start=getStart(item);var end=getEnd(item);var startSide;var endSide;if(this.options.rtl){startSide=start-(item.getWidthRight()+10)*factor;endSide=end+(item.getWidthLeft()+10)*factor}else{startSide=start-(item.getWidthLeft()+10)*factor;endSide=end+(item.getWidthRight()+10)*factor}if(startSide<min){min=startSide;minItem=item}if(endSide>max){max=endSide;maxItem=item}}.bind(this));if(minItem&&maxItem){var lhs=minItem.getWidthLeft()+10;var rhs=maxItem.getWidthRight()+10;var delta=this.props.center.width-lhs-rhs;if(delta>0){if(this.options.rtl){min=getStart(minItem)-rhs*interval/delta;max=getEnd(maxItem)+lhs*interval/delta}else{min=getStart(minItem)-lhs*interval/delta;max=getEnd(maxItem)+rhs*interval/delta}}}}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Timeline.prototype.getDataRange=function(){var min=null;var max=null;var dataset=this.itemsData&&this.itemsData.getDataSet();if(dataset){dataset.forEach(function(item){var start=util.convert(item.start,\"Date\").valueOf();var end=util.convert(item.end!=undefined?item.end:item.start,\"Date\").valueOf();if(min===null||start<min){min=start}if(max===null||end>max){max=end}})}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Timeline.prototype.getEventProperties=function(event){var clientX=event.center?event.center.x:event.clientX;var clientY=event.center?event.center.y:event.clientY;var x;if(this.options.rtl){x=util.getAbsoluteRight(this.dom.centerContainer)-clientX}else{x=clientX-util.getAbsoluteLeft(this.dom.centerContainer)}var y=clientY-util.getAbsoluteTop(this.dom.centerContainer);var item=this.itemSet.itemFromTarget(event);var group=this.itemSet.groupFromTarget(event);var customTime=CustomTime.customTimeFromTarget(event);var snap=this.itemSet.options.snap||null;var scale=this.body.util.getScale();var step=this.body.util.getStep();var time=this._toTime(x);var snappedTime=snap?snap(time,scale,step):time;var element=util.getTarget(event);var what=null;if(item!=null){what=\"item\"}else if(customTime!=null){what=\"custom-time\"}else if(util.hasParent(element,this.timeAxis.dom.foreground)){what=\"axis\"}else if(this.timeAxis2&&util.hasParent(element,this.timeAxis2.dom.foreground)){what=\"axis\"}else if(util.hasParent(element,this.itemSet.dom.labelSet)){what=\"group-label\"}else if(util.hasParent(element,this.currentTime.bar)){what=\"current-time\"}else if(util.hasParent(element,this.dom.center)){what=\"background\"}return{event:event,item:item?item.id:null,group:group?group.groupId:null,what:what,pageX:event.srcEvent?event.srcEvent.pageX:event.pageX,pageY:event.srcEvent?event.srcEvent.pageY:event.pageY,x:x,y:y,time:time,snappedTime:snappedTime}};Timeline.prototype.toggleRollingMode=function(){if(this.range.rolling){this.range.stopRolling()}else{if(this.options.rollingMode==undefined){this.setOptions(this.options)}this.range.startRolling()}};module.exports=Timeline},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var ColorPicker=function(){function ColorPicker(){var pixelRatio=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;(0,_classCallCheck3[\"default\"])(this,ColorPicker);this.pixelRatio=pixelRatio;this.generated=false;this.centerCoordinates={x:289/2,y:289/2};this.r=289*.49;this.color={r:255,g:255,b:255,a:1};this.hueCircle=undefined;this.initialColor={r:255,g:255,b:255,a:1};this.previousColor=undefined;this.applied=false;this.updateCallback=function(){};this.closeCallback=function(){};this._create()}(0,_createClass3[\"default\"])(ColorPicker,[{key:\"insertTo\",value:function insertTo(container){if(this.hammer!==undefined){this.hammer.destroy();this.hammer=undefined}this.container=container;this.container.appendChild(this.frame);this._bindHammer();this._setSize()}},{key:\"setUpdateCallback\",value:function setUpdateCallback(callback){if(typeof callback===\"function\"){this.updateCallback=callback}else{throw new Error(\"Function attempted to set as colorPicker update callback is not a function.\")}}},{key:\"setCloseCallback\",value:function setCloseCallback(callback){if(typeof callback===\"function\"){this.closeCallback=callback}else{throw new Error(\"Function attempted to set as colorPicker closing callback is not a function.\")}}},{key:\"_isColorString\",value:function _isColorString(color){var htmlColors={black:\"#000000\",navy:\"#000080\",darkblue:\"#00008B\",mediumblue:\"#0000CD\",blue:\"#0000FF\",darkgreen:\"#006400\",green:\"#008000\",teal:\"#008080\",darkcyan:\"#008B8B\",deepskyblue:\"#00BFFF\",darkturquoise:\"#00CED1\",mediumspringgreen:\"#00FA9A\",lime:\"#00FF00\",springgreen:\"#00FF7F\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",midnightblue:\"#191970\",dodgerblue:\"#1E90FF\",lightseagreen:\"#20B2AA\",forestgreen:\"#228B22\",seagreen:\"#2E8B57\",darkslategray:\"#2F4F4F\",limegreen:\"#32CD32\",mediumseagreen:\"#3CB371\",turquoise:\"#40E0D0\",royalblue:\"#4169E1\",steelblue:\"#4682B4\",darkslateblue:\"#483D8B\",mediumturquoise:\"#48D1CC\",indigo:\"#4B0082\",darkolivegreen:\"#556B2F\",cadetblue:\"#5F9EA0\",cornflowerblue:\"#6495ED\",mediumaquamarine:\"#66CDAA\",dimgray:\"#696969\",slateblue:\"#6A5ACD\",olivedrab:\"#6B8E23\",slategray:\"#708090\",lightslategray:\"#778899\",mediumslateblue:\"#7B68EE\",lawngreen:\"#7CFC00\",chartreuse:\"#7FFF00\",aquamarine:\"#7FFFD4\",maroon:\"#800000\",purple:\"#800080\",olive:\"#808000\",gray:\"#808080\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",blueviolet:\"#8A2BE2\",darkred:\"#8B0000\",darkmagenta:\"#8B008B\",saddlebrown:\"#8B4513\",darkseagreen:\"#8FBC8F\",lightgreen:\"#90EE90\",mediumpurple:\"#9370D8\",darkviolet:\"#9400D3\",palegreen:\"#98FB98\",darkorchid:\"#9932CC\",yellowgreen:\"#9ACD32\",sienna:\"#A0522D\",brown:\"#A52A2A\",darkgray:\"#A9A9A9\",lightblue:\"#ADD8E6\",greenyellow:\"#ADFF2F\",paleturquoise:\"#AFEEEE\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",firebrick:\"#B22222\",darkgoldenrod:\"#B8860B\",mediumorchid:\"#BA55D3\",rosybrown:\"#BC8F8F\",darkkhaki:\"#BDB76B\",silver:\"#C0C0C0\",mediumvioletred:\"#C71585\",indianred:\"#CD5C5C\",peru:\"#CD853F\",chocolate:\"#D2691E\",tan:\"#D2B48C\",lightgrey:\"#D3D3D3\",palevioletred:\"#D87093\",thistle:\"#D8BFD8\",orchid:\"#DA70D6\",goldenrod:\"#DAA520\",crimson:\"#DC143C\",gainsboro:\"#DCDCDC\",plum:\"#DDA0DD\",burlywood:\"#DEB887\",lightcyan:\"#E0FFFF\",lavender:\"#E6E6FA\",darksalmon:\"#E9967A\",violet:\"#EE82EE\",palegoldenrod:\"#EEE8AA\",lightcoral:\"#F08080\",khaki:\"#F0E68C\",aliceblue:\"#F0F8FF\",honeydew:\"#F0FFF0\",azure:\"#F0FFFF\",sandybrown:\"#F4A460\",wheat:\"#F5DEB3\",beige:\"#F5F5DC\",whitesmoke:\"#F5F5F5\",mintcream:\"#F5FFFA\",ghostwhite:\"#F8F8FF\",salmon:\"#FA8072\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lightgoldenrodyellow:\"#FAFAD2\",oldlace:\"#FDF5E6\",red:\"#FF0000\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",deeppink:\"#FF1493\",orangered:\"#FF4500\",tomato:\"#FF6347\",hotpink:\"#FF69B4\",coral:\"#FF7F50\",darkorange:\"#FF8C00\",lightsalmon:\"#FFA07A\",orange:\"#FFA500\",lightpink:\"#FFB6C1\",pink:\"#FFC0CB\",gold:\"#FFD700\",peachpuff:\"#FFDAB9\",navajowhite:\"#FFDEAD\",moccasin:\"#FFE4B5\",bisque:\"#FFE4C4\",mistyrose:\"#FFE4E1\",blanchedalmond:\"#FFEBCD\",papayawhip:\"#FFEFD5\",lavenderblush:\"#FFF0F5\",seashell:\"#FFF5EE\",cornsilk:\"#FFF8DC\",lemonchiffon:\"#FFFACD\",floralwhite:\"#FFFAF0\",snow:\"#FFFAFA\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",ivory:\"#FFFFF0\",white:\"#FFFFFF\"};if(typeof color===\"string\"){return htmlColors[color]}}},{key:\"setColor\",value:function setColor(color){var setInitial=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(color===\"none\"){return}var rgba=void 0;var htmlColor=this._isColorString(color);if(htmlColor!==undefined){color=htmlColor}if(util.isString(color)===true){if(util.isValidRGB(color)===true){var rgbaArray=color.substr(4).substr(0,color.length-5).split(\",\");rgba={r:rgbaArray[0],g:rgbaArray[1],b:rgbaArray[2],a:1}}else if(util.isValidRGBA(color)===true){var _rgbaArray=color.substr(5).substr(0,color.length-6).split(\",\");rgba={r:_rgbaArray[0],g:_rgbaArray[1],b:_rgbaArray[2],a:_rgbaArray[3]}}else if(util.isValidHex(color)===true){var rgbObj=util.hexToRGB(color);rgba={r:rgbObj.r,g:rgbObj.g,b:rgbObj.b,a:1}}}else{if(color instanceof Object){if(color.r!==undefined&&color.g!==undefined&&color.b!==undefined){var alpha=color.a!==undefined?color.a:\"1.0\";rgba={r:color.r,g:color.g,b:color.b,a:alpha}}}}if(rgba===undefined){throw new Error(\"Unknown color passed to the colorPicker. Supported are strings: rgb, hex, rgba. Object: rgb ({r:r,g:g,b:b,[a:a]}). Supplied: \"+(0,_stringify2[\"default\"])(color))}else{this._setColor(rgba,setInitial)}}},{key:\"show\",value:function show(){if(this.closeCallback!==undefined){this.closeCallback();this.closeCallback=undefined}this.applied=false;this.frame.style.display=\"block\";this._generateHueCircle()}},{key:\"_hide\",value:function _hide(){var _this=this;var storePrevious=arguments.length>0&&arguments[0]!==undefined?arguments[0]:true;if(storePrevious===true){this.previousColor=util.extend({},this.color)}if(this.applied===true){this.updateCallback(this.initialColor)}this.frame.style.display=\"none\";setTimeout(function(){if(_this.closeCallback!==undefined){_this.closeCallback();_this.closeCallback=undefined}},0)}},{key:\"_save\",value:function _save(){this.updateCallback(this.color);this.applied=false;this._hide()}},{key:\"_apply\",value:function _apply(){this.applied=true;this.updateCallback(this.color);this._updatePicker(this.color)}},{key:\"_loadLast\",value:function _loadLast(){if(this.previousColor!==undefined){this.setColor(this.previousColor,false)}else{alert(\"There is no last color to load...\")}}},{key:\"_setColor\",value:function _setColor(rgba){var setInitial=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(setInitial===true){this.initialColor=util.extend({},rgba)}this.color=rgba;var hsv=util.RGBToHSV(rgba.r,rgba.g,rgba.b);var angleConvert=2*Math.PI;var radius=this.r*hsv.s;var x=this.centerCoordinates.x+radius*Math.sin(angleConvert*hsv.h);var y=this.centerCoordinates.y+radius*Math.cos(angleConvert*hsv.h);this.colorPickerSelector.style.left=x-.5*this.colorPickerSelector.clientWidth+\"px\";this.colorPickerSelector.style.top=y-.5*this.colorPickerSelector.clientHeight+\"px\";this._updatePicker(rgba)}},{key:\"_setOpacity\",value:function _setOpacity(value){this.color.a=value/100;this._updatePicker(this.color)}},{key:\"_setBrightness\",value:function _setBrightness(value){var hsv=util.RGBToHSV(this.color.r,this.color.g,this.color.b);hsv.v=value/100;var rgba=util.HSVToRGB(hsv.h,hsv.s,hsv.v);rgba[\"a\"]=this.color.a;this.color=rgba;this._updatePicker()}},{key:\"_updatePicker\",value:function _updatePicker(){var rgba=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.color;var hsv=util.RGBToHSV(rgba.r,rgba.g,rgba.b);var ctx=this.colorPickerCanvas.getContext(\"2d\");if(this.pixelRation===undefined){this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1)}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var w=this.colorPickerCanvas.clientWidth;var h=this.colorPickerCanvas.clientHeight;ctx.clearRect(0,0,w,h);ctx.putImageData(this.hueCircle,0,0);ctx.fillStyle=\"rgba(0,0,0,\"+(1-hsv.v)+\")\";ctx.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r);ctx.fill();this.brightnessRange.value=100*hsv.v;this.opacityRange.value=100*rgba.a;this.initialColorDiv.style.backgroundColor=\"rgba(\"+this.initialColor.r+\",\"+this.initialColor.g+\",\"+this.initialColor.b+\",\"+this.initialColor.a+\")\";this.newColorDiv.style.backgroundColor=\"rgba(\"+this.color.r+\",\"+this.color.g+\",\"+this.color.b+\",\"+this.color.a+\")\"}},{key:\"_setSize\",value:function _setSize(){this.colorPickerCanvas.style.width=\"100%\";this.colorPickerCanvas.style.height=\"100%\";this.colorPickerCanvas.width=289*this.pixelRatio;this.colorPickerCanvas.height=289*this.pixelRatio}},{key:\"_create\",value:function _create(){this.frame=document.createElement(\"div\");this.frame.className=\"vis-color-picker\";this.colorPickerDiv=document.createElement(\"div\");this.colorPickerSelector=document.createElement(\"div\");this.colorPickerSelector.className=\"vis-selector\";this.colorPickerDiv.appendChild(this.colorPickerSelector);this.colorPickerCanvas=document.createElement(\"canvas\");this.colorPickerDiv.appendChild(this.colorPickerCanvas);if(!this.colorPickerCanvas.getContext){var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.colorPickerCanvas.appendChild(noCanvas)}else{var ctx=this.colorPickerCanvas.getContext(\"2d\");this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1);this.colorPickerCanvas.getContext(\"2d\").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}this.colorPickerDiv.className=\"vis-color\";this.opacityDiv=document.createElement(\"div\");this.opacityDiv.className=\"vis-opacity\";this.brightnessDiv=document.createElement(\"div\");this.brightnessDiv.className=\"vis-brightness\";this.arrowDiv=document.createElement(\"div\");this.arrowDiv.className=\"vis-arrow\";this.opacityRange=document.createElement(\"input\");try{this.opacityRange.type=\"range\";this.opacityRange.min=\"0\";this.opacityRange.max=\"100\"}catch(err){}this.opacityRange.value=\"100\";this.opacityRange.className=\"vis-range\";this.brightnessRange=document.createElement(\"input\");try{this.brightnessRange.type=\"range\";this.brightnessRange.min=\"0\";this.brightnessRange.max=\"100\"}catch(err){}this.brightnessRange.value=\"100\";this.brightnessRange.className=\"vis-range\";this.opacityDiv.appendChild(this.opacityRange);this.brightnessDiv.appendChild(this.brightnessRange);var me=this;this.opacityRange.onchange=function(){me._setOpacity(this.value)};this.opacityRange.oninput=function(){me._setOpacity(this.value)};this.brightnessRange.onchange=function(){me._setBrightness(this.value)};this.brightnessRange.oninput=function(){me._setBrightness(this.value)};this.brightnessLabel=document.createElement(\"div\");this.brightnessLabel.className=\"vis-label vis-brightness\";this.brightnessLabel.innerHTML=\"brightness:\";this.opacityLabel=document.createElement(\"div\");this.opacityLabel.className=\"vis-label vis-opacity\";this.opacityLabel.innerHTML=\"opacity:\";this.newColorDiv=document.createElement(\"div\");this.newColorDiv.className=\"vis-new-color\";this.newColorDiv.innerHTML=\"new\";this.initialColorDiv=document.createElement(\"div\");this.initialColorDiv.className=\"vis-initial-color\";this.initialColorDiv.innerHTML=\"initial\";this.cancelButton=document.createElement(\"div\");this.cancelButton.className=\"vis-button vis-cancel\";this.cancelButton.innerHTML=\"cancel\";this.cancelButton.onclick=this._hide.bind(this,false);this.applyButton=document.createElement(\"div\");this.applyButton.className=\"vis-button vis-apply\";this.applyButton.innerHTML=\"apply\";this.applyButton.onclick=this._apply.bind(this);this.saveButton=document.createElement(\"div\");this.saveButton.className=\"vis-button vis-save\";this.saveButton.innerHTML=\"save\";this.saveButton.onclick=this._save.bind(this);this.loadButton=document.createElement(\"div\");this.loadButton.className=\"vis-button vis-load\";this.loadButton.innerHTML=\"load last\";this.loadButton.onclick=this._loadLast.bind(this)\n;this.frame.appendChild(this.colorPickerDiv);this.frame.appendChild(this.arrowDiv);this.frame.appendChild(this.brightnessLabel);this.frame.appendChild(this.brightnessDiv);this.frame.appendChild(this.opacityLabel);this.frame.appendChild(this.opacityDiv);this.frame.appendChild(this.newColorDiv);this.frame.appendChild(this.initialColorDiv);this.frame.appendChild(this.cancelButton);this.frame.appendChild(this.applyButton);this.frame.appendChild(this.saveButton);this.frame.appendChild(this.loadButton)}},{key:\"_bindHammer\",value:function _bindHammer(){var _this2=this;this.drag={};this.pinch={};this.hammer=new Hammer(this.colorPickerCanvas);this.hammer.get(\"pinch\").set({enable:true});hammerUtil.onTouch(this.hammer,function(event){_this2._moveSelector(event)});this.hammer.on(\"tap\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panstart\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panmove\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panend\",function(event){_this2._moveSelector(event)})}},{key:\"_generateHueCircle\",value:function _generateHueCircle(){if(this.generated===false){var ctx=this.colorPickerCanvas.getContext(\"2d\");if(this.pixelRation===undefined){this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1)}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var w=this.colorPickerCanvas.clientWidth;var h=this.colorPickerCanvas.clientHeight;ctx.clearRect(0,0,w,h);var x=void 0,y=void 0,hue=void 0,sat=void 0;this.centerCoordinates={x:w*.5,y:h*.5};this.r=.49*w;var angleConvert=2*Math.PI/360;var hfac=1/360;var sfac=1/this.r;var rgb=void 0;for(hue=0;hue<360;hue++){for(sat=0;sat<this.r;sat++){x=this.centerCoordinates.x+sat*Math.sin(angleConvert*hue);y=this.centerCoordinates.y+sat*Math.cos(angleConvert*hue);rgb=util.HSVToRGB(hue*hfac,sat*sfac,1);ctx.fillStyle=\"rgb(\"+rgb.r+\",\"+rgb.g+\",\"+rgb.b+\")\";ctx.fillRect(x-.5,y-.5,2,2)}}ctx.strokeStyle=\"rgba(0,0,0,1)\";ctx.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r);ctx.stroke();this.hueCircle=ctx.getImageData(0,0,w,h)}this.generated=true}},{key:\"_moveSelector\",value:function _moveSelector(event){var rect=this.colorPickerDiv.getBoundingClientRect();var left=event.center.x-rect.left;var top=event.center.y-rect.top;var centerY=.5*this.colorPickerDiv.clientHeight;var centerX=.5*this.colorPickerDiv.clientWidth;var x=left-centerX;var y=top-centerY;var angle=Math.atan2(x,y);var radius=.98*Math.min(Math.sqrt(x*x+y*y),centerX);var newTop=Math.cos(angle)*radius+centerY;var newLeft=Math.sin(angle)*radius+centerX;this.colorPickerSelector.style.top=newTop-.5*this.colorPickerSelector.clientHeight+\"px\";this.colorPickerSelector.style.left=newLeft-.5*this.colorPickerSelector.clientWidth+\"px\";var h=angle/(2*Math.PI);h=h<0?h+1:h;var s=radius/this.r;var hsv=util.RGBToHSV(this.color.r,this.color.g,this.color.b);hsv.h=h;hsv.s=s;var rgba=util.HSVToRGB(hsv.h,hsv.s,hsv.v);rgba[\"a\"]=this.color.a;this.color=rgba;this.initialColorDiv.style.backgroundColor=\"rgba(\"+this.initialColor.r+\",\"+this.initialColor.g+\",\"+this.initialColor.b+\",\"+this.initialColor.a+\")\";this.newColorDiv.style.backgroundColor=\"rgba(\"+this.color.r+\",\"+this.color.g+\",\"+this.color.b+\",\"+this.color.a+\")\"}}]);return ColorPicker}();exports[\"default\"]=ColorPicker},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(64);var Core=__webpack_require__(65);var TimeAxis=__webpack_require__(45);var CurrentTime=__webpack_require__(67);var CustomTime=__webpack_require__(46);var LineGraph=__webpack_require__(106);var printStyle=__webpack_require__(15).printStyle;var allOptions=__webpack_require__(113).allOptions;var configureOptions=__webpack_require__(113).configureOptions;var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];function Graph2d(container,items,groups,options){if(!(Array.isArray(groups)||groups instanceof DataSet||groups instanceof DataView)&&groups instanceof Object){var forthArgument=options;options=groups;groups=forthArgument}if(options&&options.throttleRedraw){console.warn('Graph2d option \"throttleRedraw\" is DEPRICATED and no longer supported. It will be removed in the next MAJOR release.')}var me=this;this.defaultOptions={start:null,end:null,autoResize:true,orientation:{axis:\"bottom\",item:\"bottom\"},moment:moment,width:null,height:null,maxHeight:null,minHeight:null};this.options=util.deepExtend({},this.defaultOptions);this._create(container);this.components=[];this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{toScreen:me._toScreen.bind(me),toGlobalScreen:me._toGlobalScreen.bind(me),toTime:me._toTime.bind(me),toGlobalTime:me._toGlobalTime.bind(me)}};this.range=new Range(this.body);this.components.push(this.range);this.body.range=this.range;this.timeAxis=new TimeAxis(this.body);this.components.push(this.timeAxis);this.currentTime=new CurrentTime(this.body);this.components.push(this.currentTime);this.linegraph=new LineGraph(this.body);this.components.push(this.linegraph);this.itemsData=null;this.groupsData=null;this.on(\"tap\",function(event){me.emit(\"click\",me.getEventProperties(event))});this.on(\"doubletap\",function(event){me.emit(\"doubleClick\",me.getEventProperties(event))});this.dom.root.oncontextmenu=function(event){me.emit(\"contextmenu\",me.getEventProperties(event))};if(options){this.setOptions(options)}if(groups){this.setGroups(groups)}if(items){this.setItems(items)}this._redraw()}Graph2d.prototype=new Core;Graph2d.prototype.setOptions=function(options){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}Core.prototype.setOptions.call(this,options)};Graph2d.prototype.setItems=function(items){var initialLoad=this.itemsData==null;var newDataSet;if(!items){newDataSet=null}else if(items instanceof DataSet||items instanceof DataView){newDataSet=items}else{newDataSet=new DataSet(items,{type:{start:\"Date\",end:\"Date\"}})}this.itemsData=newDataSet;this.linegraph&&this.linegraph.setItems(newDataSet);if(initialLoad){if(this.options.start!=undefined||this.options.end!=undefined){var start=this.options.start!=undefined?this.options.start:null;var end=this.options.end!=undefined?this.options.end:null;this.setWindow(start,end,{animation:false})}else{this.fit({animation:false})}}};Graph2d.prototype.setGroups=function(groups){var newDataSet;if(!groups){newDataSet=null}else if(groups instanceof DataSet||groups instanceof DataView){newDataSet=groups}else{newDataSet=new DataSet(groups)}this.groupsData=newDataSet;this.linegraph.setGroups(newDataSet)};Graph2d.prototype.getLegend=function(groupId,width,height){if(width===undefined){width=15}if(height===undefined){height=15}if(this.linegraph.groups[groupId]!==undefined){return this.linegraph.groups[groupId].getLegend(width,height)}else{return\"cannot find group:'\"+groupId+\"'\"}};Graph2d.prototype.isGroupVisible=function(groupId){if(this.linegraph.groups[groupId]!==undefined){return this.linegraph.groups[groupId].visible&&(this.linegraph.options.groups.visibility[groupId]===undefined||this.linegraph.options.groups.visibility[groupId]==true)}else{return false}};Graph2d.prototype.getDataRange=function(){var min=null;var max=null;for(var groupId in this.linegraph.groups){if(this.linegraph.groups.hasOwnProperty(groupId)){if(this.linegraph.groups[groupId].visible==true){for(var i=0;i<this.linegraph.groups[groupId].itemsData.length;i++){var item=this.linegraph.groups[groupId].itemsData[i];var value=util.convert(item.x,\"Date\").valueOf();min=min==null?value:min>value?value:min;max=max==null?value:max<value?value:max}}}}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Graph2d.prototype.getEventProperties=function(event){var clientX=event.center?event.center.x:event.clientX;var clientY=event.center?event.center.y:event.clientY;var x=clientX-util.getAbsoluteLeft(this.dom.centerContainer);var y=clientY-util.getAbsoluteTop(this.dom.centerContainer);var time=this._toTime(x);var customTime=CustomTime.customTimeFromTarget(event);var element=util.getTarget(event);var what=null;if(util.hasParent(element,this.timeAxis.dom.foreground)){what=\"axis\"}else if(this.timeAxis2&&util.hasParent(element,this.timeAxis2.dom.foreground)){what=\"axis\"}else if(util.hasParent(element,this.linegraph.yAxisLeft.dom.frame)){what=\"data-axis\"}else if(util.hasParent(element,this.linegraph.yAxisRight.dom.frame)){what=\"data-axis\"}else if(util.hasParent(element,this.linegraph.legendLeft.dom.frame)){what=\"legend\"}else if(util.hasParent(element,this.linegraph.legendRight.dom.frame)){what=\"legend\"}else if(customTime!=null){what=\"custom-time\"}else if(util.hasParent(element,this.currentTime.bar)){what=\"current-time\"}else if(util.hasParent(element,this.dom.center)){what=\"background\"}var value=[];var yAxisLeft=this.linegraph.yAxisLeft;var yAxisRight=this.linegraph.yAxisRight;if(!yAxisLeft.hidden&&this.itemsData.length>0){value.push(yAxisLeft.screenToValue(y))}if(!yAxisRight.hidden&&this.itemsData.length>0){value.push(yAxisRight.screenToValue(y))}return{event:event,what:what,pageX:event.srcEvent?event.srcEvent.pageX:event.pageX,pageY:event.srcEvent?event.srcEvent.pageY:event.pageY,x:x,y:y,time:time,value:value}};Graph2d.prototype._createConfigurator=function(){return new Configurator(this,this.dom.container,configureOptions)};module.exports=Graph2d},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Network=__webpack_require__(182);exports.network={Images:__webpack_require__(116),dotparser:__webpack_require__(114),gephiParser:__webpack_require__(115),allOptions:__webpack_require__(122)};exports.network.convertDot=function(input){return exports.network.dotparser.DOTToGraph(input)};exports.network.convertGephi=function(input,options){return exports.network.gephiParser.parseGephi(input,options)};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){\"use strict\";__webpack_require__(183);var Emitter=__webpack_require__(44);var util=__webpack_require__(2);var dotparser=__webpack_require__(114);var gephiParser=__webpack_require__(115);var Activator=__webpack_require__(97);var locales=__webpack_require__(184);var Images=__webpack_require__(116)[\"default\"];var Groups=__webpack_require__(186)[\"default\"];var NodesHandler=__webpack_require__(187)[\"default\"];var EdgesHandler=__webpack_require__(214)[\"default\"];var PhysicsEngine=__webpack_require__(220)[\"default\"];var ClusterEngine=__webpack_require__(227)[\"default\"];var CanvasRenderer=__webpack_require__(229)[\"default\"];var Canvas=__webpack_require__(230)[\"default\"];var View=__webpack_require__(231)[\"default\"];var InteractionHandler=__webpack_require__(232)[\"default\"];var SelectionHandler=__webpack_require__(234)[\"default\"];var LayoutEngine=__webpack_require__(235)[\"default\"];var ManipulationSystem=__webpack_require__(237)[\"default\"];var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var _require2=__webpack_require__(122),allOptions=_require2.allOptions,configureOptions=_require2.configureOptions;var KamadaKawai=__webpack_require__(238)[\"default\"];function Network(container,data,options){var _this=this;if(!(this instanceof Network)){throw new SyntaxError(\"Constructor must be called with the new operator\")}this.options={};this.defaultOptions={locale:\"en\",locales:locales,clickToUse:false};util.extend(this.options,this.defaultOptions);this.body={container:container,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this),once:this.once.bind(this)},eventListeners:{onTap:function onTap(){},onTouch:function onTouch(){},onDoubleTap:function onDoubleTap(){},onHold:function onHold(){},onDragStart:function onDragStart(){},onDrag:function onDrag(){},onDragEnd:function onDragEnd(){},onMouseWheel:function onMouseWheel(){},onPinch:function onPinch(){},onMouseMove:function onMouseMove(){},onRelease:function onRelease(){},onContext:function onContext(){}},data:{nodes:null,edges:null},functions:{createNode:function createNode(){},createEdge:function createEdge(){},getPointer:function getPointer(){}},modules:{},view:{scale:1,translation:{x:0,y:0}}};this.bindEventListeners();this.images=new Images(function(){return _this.body.emitter.emit(\"_requestRedraw\")});this.groups=new Groups;this.canvas=new Canvas(this.body);this.selectionHandler=new SelectionHandler(this.body,this.canvas);this.interactionHandler=new InteractionHandler(this.body,this.canvas,this.selectionHandler);this.view=new View(this.body,this.canvas);this.renderer=new CanvasRenderer(this.body,this.canvas);this.physics=new PhysicsEngine(this.body);this.layoutEngine=new LayoutEngine(this.body);this.clustering=new ClusterEngine(this.body);this.manipulation=new ManipulationSystem(this.body,this.canvas,this.selectionHandler);this.nodesHandler=new NodesHandler(this.body,this.images,this.groups,this.layoutEngine);this.edgesHandler=new EdgesHandler(this.body,this.images,this.groups);this.body.modules[\"kamadaKawai\"]=new KamadaKawai(this.body,150,.05);this.body.modules[\"clustering\"]=this.clustering;this.canvas._create();this.setOptions(options);this.setData(data)}Emitter(Network.prototype);Network.prototype.setOptions=function(options){var _this2=this;if(options!==undefined){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}var fields=[\"locale\",\"locales\",\"clickToUse\"];util.selectiveDeepExtend(fields,this.options,options);options=this.layoutEngine.setOptions(options.layout,options);this.canvas.setOptions(options);this.groups.setOptions(options.groups);this.nodesHandler.setOptions(options.nodes);this.edgesHandler.setOptions(options.edges);this.physics.setOptions(options.physics);this.manipulation.setOptions(options.manipulation,options,this.options);this.interactionHandler.setOptions(options.interaction);this.renderer.setOptions(options.interaction);this.selectionHandler.setOptions(options.interaction);if(options.groups!==undefined){this.body.emitter.emit(\"refreshNodes\")}if(\"configure\"in options){if(!this.configurator){this.configurator=new Configurator(this,this.body.container,configureOptions,this.canvas.pixelRatio)}this.configurator.setOptions(options.configure)}if(this.configurator&&this.configurator.options.enabled===true){var networkOptions={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};util.deepExtend(networkOptions.nodes,this.nodesHandler.options);util.deepExtend(networkOptions.edges,this.edgesHandler.options);util.deepExtend(networkOptions.layout,this.layoutEngine.options);util.deepExtend(networkOptions.interaction,this.selectionHandler.options);util.deepExtend(networkOptions.interaction,this.renderer.options);util.deepExtend(networkOptions.interaction,this.interactionHandler.options);util.deepExtend(networkOptions.manipulation,this.manipulation.options);util.deepExtend(networkOptions.physics,this.physics.options);util.deepExtend(networkOptions.global,this.canvas.options);util.deepExtend(networkOptions.global,this.options);this.configurator.setModuleOptions(networkOptions)}if(options.clickToUse!==undefined){if(options.clickToUse===true){if(this.activator===undefined){this.activator=new Activator(this.canvas.frame);this.activator.on(\"change\",function(){_this2.body.emitter.emit(\"activate\")})}}else{if(this.activator!==undefined){this.activator.destroy();delete this.activator}this.body.emitter.emit(\"activate\")}}else{this.body.emitter.emit(\"activate\")}this.canvas.setSize();this.body.emitter.emit(\"startSimulation\")}};Network.prototype._updateVisibleIndices=function(){var nodes=this.body.nodes;var edges=this.body.edges;this.body.nodeIndices=[];this.body.edgeIndices=[];for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(!this.clustering._isClusteredNode(nodeId)&&nodes[nodeId].options.hidden===false){this.body.nodeIndices.push(nodes[nodeId].id)}}}for(var edgeId in edges){if(edges.hasOwnProperty(edgeId)){var edge=edges[edgeId];var fromNode=nodes[edge.fromId];var toNode=nodes[edge.toId];var edgeNodesPresent=fromNode!==undefined&&toNode!==undefined;var isVisible=!this.clustering._isClusteredEdge(edgeId)&&edge.options.hidden===false&&edgeNodesPresent&&fromNode.options.hidden===false&&toNode.options.hidden===false;if(isVisible){this.body.edgeIndices.push(edge.id)}}}};Network.prototype.bindEventListeners=function(){var _this3=this;this.body.emitter.on(\"_dataChanged\",function(){_this3.edgesHandler._updateState();_this3.body.emitter.emit(\"_dataUpdated\")});this.body.emitter.on(\"_dataUpdated\",function(){_this3.clustering._updateState();_this3._updateVisibleIndices();_this3._updateValueRange(_this3.body.nodes);_this3._updateValueRange(_this3.body.edges);_this3.body.emitter.emit(\"startSimulation\");_this3.body.emitter.emit(\"_requestRedraw\")})};Network.prototype.setData=function(data){this.body.emitter.emit(\"resetPhysics\");this.body.emitter.emit(\"_resetData\");this.selectionHandler.unselectAll();if(data&&data.dot&&(data.nodes||data.edges)){throw new SyntaxError('Data must contain either parameter \"dot\" or '+' parameter pair \"nodes\" and \"edges\", but not both.')}this.setOptions(data&&data.options);if(data&&data.dot){console.log(\"The dot property has been deprecated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);\");var dotData=dotparser.DOTToGraph(data.dot);this.setData(dotData);return}else if(data&&data.gephi){console.log(\"The gephi property has been deprecated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);\");var gephiData=gephiParser.parseGephi(data.gephi);this.setData(gephiData);return}else{this.nodesHandler.setData(data&&data.nodes,true);this.edgesHandler.setData(data&&data.edges,true)}this.body.emitter.emit(\"_dataChanged\");this.body.emitter.emit(\"_dataLoaded\");this.body.emitter.emit(\"initPhysics\")};Network.prototype.destroy=function(){this.body.emitter.emit(\"destroy\");this.body.emitter.off();this.off();delete this.groups;delete this.canvas;delete this.selectionHandler;delete this.interactionHandler;delete this.view;delete this.renderer;delete this.physics;delete this.layoutEngine;delete this.clustering;delete this.manipulation;delete this.nodesHandler;delete this.edgesHandler;delete this.configurator;delete this.images;for(var nodeId in this.body.nodes){if(!this.body.nodes.hasOwnProperty(nodeId))continue;delete this.body.nodes[nodeId]}for(var edgeId in this.body.edges){if(!this.body.edges.hasOwnProperty(edgeId))continue;delete this.body.edges[edgeId]}util.recursiveDOMDelete(this.body.container)};Network.prototype._updateValueRange=function(obj){var id;var valueMin=undefined;var valueMax=undefined;var valueTotal=0;for(id in obj){if(obj.hasOwnProperty(id)){var value=obj[id].getValue();if(value!==undefined){valueMin=valueMin===undefined?value:Math.min(value,valueMin);valueMax=valueMax===undefined?value:Math.max(value,valueMax);valueTotal+=value}}}if(valueMin!==undefined&&valueMax!==undefined){for(id in obj){if(obj.hasOwnProperty(id)){obj[id].setValueRange(valueMin,valueMax,valueTotal)}}}};Network.prototype.isActive=function(){return!this.activator||this.activator.active};Network.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};Network.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};Network.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};Network.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};Network.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};Network.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};Network.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};Network.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};Network.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};Network.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};Network.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};Network.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};Network.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};Network.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};Network.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};Network.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};Network.prototype.editNodeMode=function(){console.log(\"Deprecated: Please use editNode instead of editNodeMode.\");return this.manipulation.editNode.apply(this.manipulation,arguments)};Network.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};Network.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};Network.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};Network.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};Network.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};Network.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};Network.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};Network.prototype.getConnectedNodes=function(objectId){if(this.body.nodes[objectId]!==undefined){return this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments)}else{return this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)}};Network.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};Network.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};Network.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};Network.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};Network.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};Network.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};Network.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodes.apply(this.selectionHandler,arguments)};Network.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdges.apply(this.selectionHandler,arguments)};Network.prototype.getNodeAt=function(){var node=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);if(node!==undefined&&node.id!==undefined){return node.id}return node};Network.prototype.getEdgeAt=function(){var edge=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);if(edge!==undefined&&edge.id!==undefined){return edge.id}return edge};Network.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};Network.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};Network.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments);this.redraw()};Network.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};Network.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};Network.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};Network.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};Network.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};Network.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};Network.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};Network.prototype.getOptionsFromConfigurator=function(){var options={};if(this.configurator){options=this.configurator.getOptions.apply(this.configurator)}return options};module.exports=Network},function(module,exports,__webpack_require__){\"use strict\";if(typeof CanvasRenderingContext2D!==\"undefined\"){CanvasRenderingContext2D.prototype.circle=function(x,y,r){this.beginPath();this.arc(x,y,r,0,2*Math.PI,false);this.closePath()};CanvasRenderingContext2D.prototype.square=function(x,y,r){this.beginPath();this.rect(x-r,y-r,r*2,r*2);this.closePath()};CanvasRenderingContext2D.prototype.triangle=function(x,y,r){this.beginPath();r*=1.15;y+=.275*r;var s=r*2;var s2=s/2;var ir=Math.sqrt(3)/6*s;var h=Math.sqrt(s*s-s2*s2);this.moveTo(x,y-(h-ir));this.lineTo(x+s2,y+ir);this.lineTo(x-s2,y+ir);this.lineTo(x,y-(h-ir));this.closePath()};CanvasRenderingContext2D.prototype.triangleDown=function(x,y,r){this.beginPath();r*=1.15;y-=.275*r;var s=r*2;var s2=s/2;var ir=Math.sqrt(3)/6*s;var h=Math.sqrt(s*s-s2*s2);this.moveTo(x,y+(h-ir));this.lineTo(x+s2,y-ir);this.lineTo(x-s2,y-ir);this.lineTo(x,y+(h-ir));this.closePath()};CanvasRenderingContext2D.prototype.star=function(x,y,r){this.beginPath();r*=.82;y+=.1*r;for(var n=0;n<10;n++){var radius=n%2===0?r*1.3:r*.5;this.lineTo(x+radius*Math.sin(n*2*Math.PI/10),y-radius*Math.cos(n*2*Math.PI/10))}this.closePath()};CanvasRenderingContext2D.prototype.diamond=function(x,y,r){this.beginPath();this.lineTo(x,y+r);this.lineTo(x+r,y);this.lineTo(x,y-r);this.lineTo(x-r,y);this.closePath()};CanvasRenderingContext2D.prototype.roundRect=function(x,y,w,h,r){var r2d=Math.PI/180;if(w-2*r<0){r=w/2}if(h-2*r<0){r=h/2}this.beginPath();this.moveTo(x+r,y);this.lineTo(x+w-r,y);this.arc(x+w-r,y+r,r,r2d*270,r2d*360,false);this.lineTo(x+w,y+h-r);this.arc(x+w-r,y+h-r,r,0,r2d*90,false);this.lineTo(x+r,y+h);this.arc(x+r,y+h-r,r,r2d*90,r2d*180,false);this.lineTo(x,y+r);this.arc(x+r,y+r,r,r2d*180,r2d*270,false);this.closePath()};CanvasRenderingContext2D.prototype.ellipse_vis=function(x,y,w,h){var kappa=.5522848,ox=w/2*kappa,oy=h/2*kappa,xe=x+w,ye=y+h,xm=x+w/2,ym=y+h/2;this.beginPath();this.moveTo(x,ym);this.bezierCurveTo(x,ym-oy,xm-ox,y,xm,y);this.bezierCurveTo(xm+ox,y,xe,ym-oy,xe,ym);this.bezierCurveTo(xe,ym+oy,xm+ox,ye,xm,ye);this.bezierCurveTo(xm-ox,ye,x,ym+oy,x,ym);this.closePath()};CanvasRenderingContext2D.prototype.database=function(x,y,w,h){var f=1/3;var wEllipse=w;var hEllipse=h*f;var kappa=.5522848,ox=wEllipse/2*kappa,oy=hEllipse/2*kappa,xe=x+wEllipse,ye=y+hEllipse,xm=x+wEllipse/2,ym=y+hEllipse/2,ymb=y+(h-hEllipse/2),yeb=y+h;this.beginPath();this.moveTo(xe,ym);this.bezierCurveTo(xe,ym+oy,xm+ox,ye,xm,ye);this.bezierCurveTo(xm-ox,ye,x,ym+oy,x,ym);this.bezierCurveTo(x,ym-oy,xm-ox,y,xm,y);this.bezierCurveTo(xm+ox,y,xe,ym-oy,xe,ym);this.lineTo(xe,ymb);this.bezierCurveTo(xe,ymb+oy,xm+ox,yeb,xm,yeb);this.bezierCurveTo(xm-ox,yeb,x,ymb+oy,x,ymb);this.lineTo(x,ym)};CanvasRenderingContext2D.prototype.dashedLine=function(x,y,x2,y2,pattern){this.beginPath();this.moveTo(x,y);var patternLength=pattern.length;var dx=x2-x;var dy=y2-y;var slope=dy/dx;var distRemaining=Math.sqrt(dx*dx+dy*dy);var patternIndex=0;var draw=true;var xStep=0;var dashLength=pattern[0];while(distRemaining>=.1){dashLength=pattern[patternIndex++%patternLength];if(dashLength>distRemaining){dashLength=distRemaining}xStep=Math.sqrt(dashLength*dashLength/(1+slope*slope));xStep=dx<0?-xStep:xStep;x+=xStep;y+=slope*xStep;if(draw===true){this.lineTo(x,y)}else{this.moveTo(x,y)}distRemaining-=dashLength;draw=!draw}};CanvasRenderingContext2D.prototype.hexagon=function(x,y,r){this.beginPath();var sides=6;var a=Math.PI*2/sides;this.moveTo(x+r,y);for(var i=1;i<sides;i++){this.lineTo(x+r*Math.cos(a*i),y+r*Math.sin(a*i))}this.closePath()}}},function(module,exports,__webpack_require__){\"use strict\";exports[\"en\"]={edit:\"Edit\",del:\"Delete selected\",back:\"Back\",addNode:\"Add Node\",addEdge:\"Add Edge\",editNode:\"Edit Node\",editEdge:\"Edit Edge\",addDescription:\"Click in an empty space to place a new node.\",edgeDescription:\"Click on a node and drag the edge to another node to connect them.\",editEdgeDescription:\"Click on the control points and drag them to a node to connect to it.\",createEdgeError:\"Cannot link edges to a cluster.\",deleteClusterError:\"Clusters cannot be deleted.\",editClusterError:\"Clusters cannot be edited.\"};exports[\"en_EN\"]=exports[\"en\"];exports[\"en_US\"]=exports[\"en\"];exports[\"de\"]={edit:\"Editieren\",del:\"Lösche Auswahl\",back:\"Zurück\",addNode:\"Knoten hinzufügen\",addEdge:\"Kante hinzufügen\",editNode:\"Knoten editieren\",editEdge:\"Kante editieren\",addDescription:\"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.\",edgeDescription:\"Klicke auf einen Knoten und ziehe die Kante zu einem anderen Knoten, um diese zu verbinden.\",editEdgeDescription:\"Klicke auf die Verbindungspunkte und ziehe diese auf einen Knoten, um sie zu verbinden.\",createEdgeError:\"Es ist nicht möglich, Kanten mit Clustern zu verbinden.\",deleteClusterError:\"Cluster können nicht gelöscht werden.\",editClusterError:\"Cluster können nicht editiert werden.\"};exports[\"de_DE\"]=exports[\"de\"];exports[\"es\"]={edit:\"Editar\",del:\"Eliminar selección\",back:\"Átras\",addNode:\"Añadir nodo\",addEdge:\"Añadir arista\",editNode:\"Editar nodo\",editEdge:\"Editar arista\",addDescription:\"Haga clic en un lugar vacío para colocar un nuevo nodo.\",edgeDescription:\"Haga clic en un nodo y arrastre la arista hacia otro nodo para conectarlos.\",editEdgeDescription:\"Haga clic en un punto de control y arrastrelo a un nodo para conectarlo.\",createEdgeError:\"No se puede conectar una arista a un grupo.\",deleteClusterError:\"No es posible eliminar grupos.\",editClusterError:\"No es posible editar grupos.\"};exports[\"es_ES\"]=exports[\"es\"];exports[\"it\"]={edit:\"Modifica\",del:\"Cancella la selezione\",back:\"Indietro\",addNode:\"Aggiungi un nodo\",addEdge:\"Aggiungi un vertice\",editNode:\"Modifica il nodo\",editEdge:\"Modifica il vertice\",addDescription:\"Clicca per aggiungere un nuovo nodo\",edgeDescription:\"Clicca su un nodo e trascinalo ad un altro nodo per connetterli.\",editEdgeDescription:\"Clicca sui Punti di controllo e trascinali ad un nodo per connetterli.\",createEdgeError:\"Non si possono collegare vertici ad un cluster\",deleteClusterError:\"I cluster non possono essere cancellati\",editClusterError:\"I clusters non possono essere modificati.\"};exports[\"it_IT\"]=exports[\"it\"];exports[\"nl\"]={edit:\"Wijzigen\",del:\"Selectie verwijderen\",\nback:\"Terug\",addNode:\"Node toevoegen\",addEdge:\"Link toevoegen\",editNode:\"Node wijzigen\",editEdge:\"Link wijzigen\",addDescription:\"Klik op een leeg gebied om een nieuwe node te maken.\",edgeDescription:\"Klik op een node en sleep de link naar een andere node om ze te verbinden.\",editEdgeDescription:\"Klik op de verbindingspunten en sleep ze naar een node om daarmee te verbinden.\",createEdgeError:\"Kan geen link maken naar een cluster.\",deleteClusterError:\"Clusters kunnen niet worden verwijderd.\",editClusterError:\"Clusters kunnen niet worden aangepast.\"};exports[\"nl_NL\"]=exports[\"nl\"];exports[\"nl_BE\"]=exports[\"nl\"];exports[\"pt-br\"]={edit:\"Editar\",del:\"Remover selecionado\",back:\"Voltar\",addNode:\"Adicionar nó\",addEdge:\"Adicionar aresta\",editNode:\"Editar nó\",editEdge:\"Editar aresta\",addDescription:\"Clique em um espaço em branco para adicionar um novo nó\",edgeDescription:\"Clique em um nó e arraste a aresta até outro nó para conectá-los\",editEdgeDescription:\"Clique nos pontos de controle e os arraste para um nó para conectá-los\",createEdgeError:\"Não foi possível linkar arestas a um cluster.\",deleteClusterError:\"Clusters não puderam ser removidos.\",editClusterError:\"Clusters não puderam ser editados.\"};exports[\"pt-BR\"]=exports[\"pt-br\"];exports[\"pt_BR\"]=exports[\"pt-br\"];exports[\"pt_br\"]=exports[\"pt-br\"];exports[\"ru\"]={edit:\"Редактировать\",del:\"Удалить выбранное\",back:\"Назад\",addNode:\"Добавить узел\",addEdge:\"Добавить ребро\",editNode:\"Редактировать узел\",editEdge:\"Редактировать ребро\",addDescription:\"Кликните в свободное место, чтобы добавить новый узел.\",edgeDescription:\"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.\",editEdgeDescription:\"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.\",createEdgeError:\"Невозможно соединить ребра в кластер.\",deleteClusterError:\"Кластеры не могут быть удалены\",editClusterError:\"Кластеры недоступны для редактирования.\"};exports[\"ru_RU\"]=exports[\"ru\"];exports[\"cn\"]={edit:\"编辑\",del:\"删除选定\",back:\"返回\",addNode:\"添加节点\",addEdge:\"添加连接线\",editNode:\"编辑节点\",editEdge:\"编辑连接线\",addDescription:\"单击空白处放置新节点。\",edgeDescription:\"单击某个节点并将该连接线拖动到另一个节点以连接它们。\",editEdgeDescription:\"单击控制节点并将它们拖到节点上连接。\",createEdgeError:\"无法将连接线连接到群集。\",deleteClusterError:\"无法删除群集。\",editClusterError:\"无法编辑群集。\"};exports[\"zh_CN\"]=exports[\"cn\"]},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CachedImage=function(){function CachedImage(){(0,_classCallCheck3[\"default\"])(this,CachedImage);this.NUM_ITERATIONS=4;this.image=new Image;this.canvas=document.createElement(\"canvas\")}(0,_createClass3[\"default\"])(CachedImage,[{key:\"init\",value:function init(){if(this.initialized())return;this.src=this.image.src;var w=this.image.width;var h=this.image.height;this.width=w;this.height=h;var h2=Math.floor(h/2);var h4=Math.floor(h/4);var h8=Math.floor(h/8);var h16=Math.floor(h/16);var w2=Math.floor(w/2);var w4=Math.floor(w/4);var w8=Math.floor(w/8);var w16=Math.floor(w/16);this.canvas.width=3*w4;this.canvas.height=h2;this.coordinates=[[0,0,w2,h2],[w2,0,w4,h4],[w2,h4,w8,h8],[5*w8,h4,w16,h16]];this._fillMipMap()}},{key:\"initialized\",value:function initialized(){return this.coordinates!==undefined}},{key:\"_fillMipMap\",value:function _fillMipMap(){var ctx=this.canvas.getContext(\"2d\");var to=this.coordinates[0];ctx.drawImage(this.image,to[0],to[1],to[2],to[3]);for(var iterations=1;iterations<this.NUM_ITERATIONS;iterations++){var from=this.coordinates[iterations-1];var _to=this.coordinates[iterations];ctx.drawImage(this.canvas,from[0],from[1],from[2],from[3],_to[0],_to[1],_to[2],_to[3])}}},{key:\"drawImageAtPosition\",value:function drawImageAtPosition(ctx,factor,left,top,width,height){if(!this.initialized())return;if(factor>2){factor*=.5;var iterations=0;while(factor>2&&iterations<this.NUM_ITERATIONS){factor*=.5;iterations+=1}if(iterations>=this.NUM_ITERATIONS){iterations=this.NUM_ITERATIONS-1}var from=this.coordinates[iterations];ctx.drawImage(this.canvas,from[0],from[1],from[2],from[3],left,top,width,height)}else{ctx.drawImage(this.image,left,top,width,height)}}}]);return CachedImage}();exports[\"default\"]=CachedImage},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Groups=function(){function Groups(){(0,_classCallCheck3[\"default\"])(this,Groups);this.clear();this.defaultIndex=0;this.groupsArray=[];this.groupIndex=0;this.defaultGroups=[{border:\"#2B7CE9\",background:\"#97C2FC\",highlight:{border:\"#2B7CE9\",background:\"#D2E5FF\"},hover:{border:\"#2B7CE9\",background:\"#D2E5FF\"}},{border:\"#FFA500\",background:\"#FFFF00\",highlight:{border:\"#FFA500\",background:\"#FFFFA3\"},hover:{border:\"#FFA500\",background:\"#FFFFA3\"}},{border:\"#FA0A10\",background:\"#FB7E81\",highlight:{border:\"#FA0A10\",background:\"#FFAFB1\"},hover:{border:\"#FA0A10\",background:\"#FFAFB1\"}},{border:\"#41A906\",background:\"#7BE141\",highlight:{border:\"#41A906\",background:\"#A1EC76\"},hover:{border:\"#41A906\",background:\"#A1EC76\"}},{border:\"#E129F0\",background:\"#EB7DF4\",highlight:{border:\"#E129F0\",background:\"#F0B3F5\"},hover:{border:\"#E129F0\",background:\"#F0B3F5\"}},{border:\"#7C29F0\",background:\"#AD85E4\",highlight:{border:\"#7C29F0\",background:\"#D3BDF0\"},hover:{border:\"#7C29F0\",background:\"#D3BDF0\"}},{border:\"#C37F00\",background:\"#FFA807\",highlight:{border:\"#C37F00\",background:\"#FFCA66\"},hover:{border:\"#C37F00\",background:\"#FFCA66\"}},{border:\"#4220FB\",background:\"#6E6EFD\",highlight:{border:\"#4220FB\",background:\"#9B9BFD\"},hover:{border:\"#4220FB\",background:\"#9B9BFD\"}},{border:\"#FD5A77\",background:\"#FFC0CB\",highlight:{border:\"#FD5A77\",background:\"#FFD1D9\"},hover:{border:\"#FD5A77\",background:\"#FFD1D9\"}},{border:\"#4AD63A\",background:\"#C2FABC\",highlight:{border:\"#4AD63A\",background:\"#E6FFE3\"},hover:{border:\"#4AD63A\",background:\"#E6FFE3\"}},{border:\"#990000\",background:\"#EE0000\",highlight:{border:\"#BB0000\",background:\"#FF3333\"},hover:{border:\"#BB0000\",background:\"#FF3333\"}},{border:\"#FF6000\",background:\"#FF6000\",highlight:{border:\"#FF6000\",background:\"#FF6000\"},hover:{border:\"#FF6000\",background:\"#FF6000\"}},{border:\"#97C2FC\",background:\"#2B7CE9\",highlight:{border:\"#D2E5FF\",background:\"#2B7CE9\"},hover:{border:\"#D2E5FF\",background:\"#2B7CE9\"}},{border:\"#399605\",background:\"#255C03\",highlight:{border:\"#399605\",background:\"#255C03\"},hover:{border:\"#399605\",background:\"#255C03\"}},{border:\"#B70054\",background:\"#FF007E\",highlight:{border:\"#B70054\",background:\"#FF007E\"},hover:{border:\"#B70054\",background:\"#FF007E\"}},{border:\"#AD85E4\",background:\"#7C29F0\",highlight:{border:\"#D3BDF0\",background:\"#7C29F0\"},hover:{border:\"#D3BDF0\",background:\"#7C29F0\"}},{border:\"#4557FA\",background:\"#000EA1\",highlight:{border:\"#6E6EFD\",background:\"#000EA1\"},hover:{border:\"#6E6EFD\",background:\"#000EA1\"}},{border:\"#FFC0CB\",background:\"#FD5A77\",highlight:{border:\"#FFD1D9\",background:\"#FD5A77\"},hover:{border:\"#FFD1D9\",background:\"#FD5A77\"}},{border:\"#C2FABC\",background:\"#74D66A\",highlight:{border:\"#E6FFE3\",background:\"#74D66A\"},hover:{border:\"#E6FFE3\",background:\"#74D66A\"}},{border:\"#EE0000\",background:\"#990000\",highlight:{border:\"#FF3333\",background:\"#BB0000\"},hover:{border:\"#FF3333\",background:\"#BB0000\"}}];this.options={};this.defaultOptions={useDefaultGroups:true};util.extend(this.options,this.defaultOptions)}(0,_createClass3[\"default\"])(Groups,[{key:\"setOptions\",value:function setOptions(options){var optionFields=[\"useDefaultGroups\"];if(options!==undefined){for(var groupName in options){if(options.hasOwnProperty(groupName)){if(optionFields.indexOf(groupName)===-1){var group=options[groupName];this.add(groupName,group)}}}}}},{key:\"clear\",value:function clear(){this.groups={};this.groupsArray=[]}},{key:\"get\",value:function get(groupname){var shouldCreate=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var group=this.groups[groupname];if(group===undefined&&shouldCreate){if(this.options.useDefaultGroups===false&&this.groupsArray.length>0){var index=this.groupIndex%this.groupsArray.length;this.groupIndex++;group={};group.color=this.groups[this.groupsArray[index]];this.groups[groupname]=group}else{var _index=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++;group={};group.color=this.defaultGroups[_index];this.groups[groupname]=group}}return group}},{key:\"add\",value:function add(groupName,style){this.groups[groupName]=style;this.groupsArray.push(groupName);return style}}]);return Groups}();exports[\"default\"]=Groups},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Node=__webpack_require__(47)[\"default\"];var NodesHandler=function(){function NodesHandler(body,images,groups,layoutEngine){var _this=this;(0,_classCallCheck3[\"default\"])(this,NodesHandler);this.body=body;this.images=images;this.groups=groups;this.layoutEngine=layoutEngine;this.body.functions.createNode=this.create.bind(this);this.nodesListeners={add:function add(event,params){_this.add(params.items)},update:function update(event,params){_this.update(params.items,params.data,params.oldData)},remove:function remove(event,params){_this.remove(params.items)}};this.defaultOptions={borderWidth:1,borderWidthSelected:2,brokenImage:undefined,color:{border:\"#2B7CE9\",background:\"#97C2FC\",highlight:{border:\"#2B7CE9\",background:\"#D2E5FF\"},hover:{border:\"#2B7CE9\",background:\"#D2E5FF\"}},fixed:{x:false,y:false},font:{color:\"#343434\",size:14,face:\"arial\",background:\"none\",strokeWidth:0,strokeColor:\"#ffffff\",align:\"center\",vadjust:0,multi:false,bold:{mod:\"bold\"},boldital:{mod:\"bold italic\"},ital:{mod:\"italic\"},mono:{mod:\"\",size:15,face:\"monospace\",vadjust:2}},group:undefined,hidden:false,icon:{face:\"FontAwesome\",code:undefined,size:50,color:\"#2B7CE9\"},image:undefined,label:undefined,labelHighlightBold:true,level:undefined,margin:{top:5,right:5,bottom:5,left:5},mass:1,physics:true,scaling:{min:10,max:30,label:{enabled:false,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function customScalingFunction(min,max,total,value){if(max===min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}}},shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:10,x:5,y:5},shape:\"ellipse\",shapeProperties:{borderDashes:false,borderRadius:6,interpolation:true,useImageSize:false,useBorderWithImage:false},size:25,title:undefined,value:undefined,x:undefined,y:undefined};if(this.defaultOptions.mass<=0){throw\"Internal error: mass in defaultOptions of NodesHandler may not be zero or negative\"}this.options=util.bridgeObject(this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(NodesHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"refreshNodes\",this.refresh.bind(this));this.body.emitter.on(\"refresh\",this.refresh.bind(this));this.body.emitter.on(\"destroy\",function(){util.forEach(_this2.nodesListeners,function(callback,event){if(_this2.body.data.nodes)_this2.body.data.nodes.off(event,callback)});delete _this2.body.functions.createNode;delete _this2.nodesListeners.add;delete _this2.nodesListeners.update;delete _this2.nodesListeners.remove;delete _this2.nodesListeners})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){Node.parseOptions(this.options,options);if(options.shape!==undefined){for(var nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){this.body.nodes[nodeId].updateShape()}}}if(options.font!==undefined){for(var _nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId)){this.body.nodes[_nodeId].updateLabelModule();this.body.nodes[_nodeId].needsRefresh()}}}if(options.size!==undefined){for(var _nodeId2 in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId2)){this.body.nodes[_nodeId2].needsRefresh()}}}if(options.hidden!==undefined||options.physics!==undefined){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"setData\",value:function setData(nodes){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var oldNodesData=this.body.data.nodes;if(nodes instanceof DataSet||nodes instanceof DataView){this.body.data.nodes=nodes}else if(Array.isArray(nodes)){this.body.data.nodes=new DataSet;this.body.data.nodes.add(nodes)}else if(!nodes){this.body.data.nodes=new DataSet}else{throw new TypeError(\"Array or DataSet expected\")}if(oldNodesData){util.forEach(this.nodesListeners,function(callback,event){oldNodesData.off(event,callback)})}this.body.nodes={};if(this.body.data.nodes){var me=this;util.forEach(this.nodesListeners,function(callback,event){me.body.data.nodes.on(event,callback)});var ids=this.body.data.nodes.getIds();this.add(ids,true)}if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"add\",value:function add(ids){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var id=void 0;var newNodes=[];for(var i=0;i<ids.length;i++){id=ids[i];var properties=this.body.data.nodes.get(id);var node=this.create(properties);newNodes.push(node);this.body.nodes[id]=node}this.layoutEngine.positionInitially(newNodes);if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"update\",value:function update(ids,changedData,oldData){var nodes=this.body.nodes;var dataChanged=false;for(var i=0;i<ids.length;i++){var id=ids[i];var node=nodes[id];var data=changedData[i];if(node!==undefined){if(node.setOptions(data)){dataChanged=true}}else{dataChanged=true;node=this.create(data);nodes[id]=node}}if(!dataChanged&&oldData!==undefined){dataChanged=changedData.some(function(newValue,index){var oldValue=oldData[index];return oldValue&&oldValue.level!==newValue.level})}if(dataChanged===true){this.body.emitter.emit(\"_dataChanged\")}else{this.body.emitter.emit(\"_dataUpdated\")}}},{key:\"remove\",value:function remove(ids){var nodes=this.body.nodes;for(var i=0;i<ids.length;i++){var id=ids[i];delete nodes[id]}this.body.emitter.emit(\"_dataChanged\")}},{key:\"create\",value:function create(properties){var constructorClass=arguments.length>1&&arguments[1]!==undefined?arguments[1]:Node;return new constructorClass(properties,this.body,this.images,this.groups,this.options,this.defaultOptions)}},{key:\"refresh\",value:function refresh(){var _this3=this;var clearPositions=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;util.forEach(this.body.nodes,function(node,nodeId){var data=_this3.body.data.nodes.get(nodeId);if(data!==undefined){if(clearPositions===true){node.setOptions({x:null,y:null})}node.setOptions({fixed:false});node.setOptions(data)}})}},{key:\"getPositions\",value:function getPositions(ids){var dataArray={};if(ids!==undefined){if(Array.isArray(ids)===true){for(var i=0;i<ids.length;i++){if(this.body.nodes[ids[i]]!==undefined){var node=this.body.nodes[ids[i]];dataArray[ids[i]]={x:Math.round(node.x),y:Math.round(node.y)}}}}else{if(this.body.nodes[ids]!==undefined){var _node=this.body.nodes[ids];dataArray[ids]={x:Math.round(_node.x),y:Math.round(_node.y)}}}}else{for(var _i=0;_i<this.body.nodeIndices.length;_i++){var _node2=this.body.nodes[this.body.nodeIndices[_i]];dataArray[this.body.nodeIndices[_i]]={x:Math.round(_node2.x),y:Math.round(_node2.y)}}}return dataArray}},{key:\"storePositions\",value:function storePositions(){var dataArray=[];var dataset=this.body.data.nodes.getDataSet();for(var nodeId in dataset._data){if(dataset._data.hasOwnProperty(nodeId)){var node=this.body.nodes[nodeId];if(dataset._data[nodeId].x!=Math.round(node.x)||dataset._data[nodeId].y!=Math.round(node.y)){dataArray.push({id:node.id,x:Math.round(node.x),y:Math.round(node.y)})}}}dataset.update(dataArray)}},{key:\"getBoundingBox\",value:function getBoundingBox(nodeId){if(this.body.nodes[nodeId]!==undefined){return this.body.nodes[nodeId].shape.boundingBox}}},{key:\"getConnectedNodes\",value:function getConnectedNodes(nodeId,direction){var nodeList=[];if(this.body.nodes[nodeId]!==undefined){var node=this.body.nodes[nodeId];var nodeObj={};for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];if(direction!==\"to\"&&edge.toId==node.id){if(nodeObj[edge.fromId]===undefined){nodeList.push(edge.fromId);nodeObj[edge.fromId]=true}}else if(direction!==\"from\"&&edge.fromId==node.id){if(nodeObj[edge.toId]===undefined){nodeList.push(edge.toId);nodeObj[edge.toId]=true}}}}return nodeList}},{key:\"getConnectedEdges\",value:function getConnectedEdges(nodeId){var edgeList=[];if(this.body.nodes[nodeId]!==undefined){var node=this.body.nodes[nodeId];for(var i=0;i<node.edges.length;i++){edgeList.push(node.edges[i].id)}}else{console.log(\"NodeId provided for getConnectedEdges does not exist. Provided: \",nodeId)}return edgeList}},{key:\"moveNode\",value:function moveNode(nodeId,x,y){var _this4=this;if(this.body.nodes[nodeId]!==undefined){this.body.nodes[nodeId].x=Number(x);this.body.nodes[nodeId].y=Number(y);setTimeout(function(){_this4.body.emitter.emit(\"startSimulation\")},0)}else{console.log(\"Node id supplied to moveNode does not exist. Provided: \",nodeId)}}}]);return NodesHandler}();exports[\"default\"]=NodesHandler},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(189),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(49);__webpack_require__(60);module.exports=__webpack_require__(190)},function(module,exports,__webpack_require__){var classof=__webpack_require__(86);var ITERATOR=__webpack_require__(13)(\"iterator\");var Iterators=__webpack_require__(31);module.exports=__webpack_require__(7).isIterable=function(it){var O=Object(it);return O[ITERATOR]!==undefined||\"@@iterator\"in O||Iterators.hasOwnProperty(classof(O))}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var LabelAccumulator=__webpack_require__(192)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var LabelSplitter=function(){function LabelSplitter(ctx,parent,selected,hover){var _this=this;(0,_classCallCheck3[\"default\"])(this,LabelSplitter);this.ctx=ctx;this.parent=parent;var textWidth=function textWidth(text,mod){if(text===undefined)return 0;var values=_this.parent.getFormattingValues(ctx,selected,hover,mod);var width=0;if(text!==\"\"){var measure=_this.ctx.measureText(text);width=measure.width}return{width:width,values:values}};this.lines=new LabelAccumulator(textWidth)}(0,_createClass3[\"default\"])(LabelSplitter,[{key:\"process\",value:function process(text){if(!ComponentUtil.isValidLabel(text)){return this.lines.finalize()}var font=this.parent.fontOptions;text=text.replace(/\\r\\n/g,\"\\n\");text=text.replace(/\\r/g,\"\\n\");var nlLines=String(text).split(\"\\n\");var lineCount=nlLines.length;if(font.multi){for(var i=0;i<lineCount;i++){var blocks=this.splitBlocks(nlLines[i],font.multi);if(blocks===undefined)continue;if(blocks.length===0){this.lines.newLine(\"\");continue}if(font.maxWdt>0){for(var j=0;j<blocks.length;j++){var mod=blocks[j].mod;var _text=blocks[j].text;this.splitStringIntoLines(_text,mod,true)}}else{for(var _j=0;_j<blocks.length;_j++){var _mod=blocks[_j].mod;var _text2=blocks[_j].text;this.lines.append(_text2,_mod)}}this.lines.newLine()}}else{if(font.maxWdt>0){for(var _i=0;_i<lineCount;_i++){this.splitStringIntoLines(nlLines[_i])}}else{for(var _i2=0;_i2<lineCount;_i2++){this.lines.newLine(nlLines[_i2])}}}return this.lines.finalize()}},{key:\"decodeMarkupSystem\",value:function decodeMarkupSystem(markupSystem){var system=\"none\";if(markupSystem===\"markdown\"||markupSystem===\"md\"){system=\"markdown\"}else if(markupSystem===true||markupSystem===\"html\"){system=\"html\"}return system}},{key:\"splitHtmlBlocks\",value:function splitHtmlBlocks(text){var blocks=[];var s={bold:false,ital:false,mono:false,spacing:false,position:0,buffer:\"\",modStack:[]};s.mod=function(){return this.modStack.length===0?\"normal\":this.modStack[0]};s.modName=function(){if(this.modStack.length===0)return\"normal\";else if(this.modStack[0]===\"mono\")return\"mono\";else{if(s.bold&&s.ital){return\"boldital\"}else if(s.bold){return\"bold\"}else if(s.ital){return\"ital\"}}};s.emitBlock=function(){var override=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.spacing){this.add(\" \");this.spacing=false}if(this.buffer.length>0){blocks.push({text:this.buffer,mod:this.modName()});this.buffer=\"\"}};s.add=function(text){if(text===\" \"){s.spacing=true}if(s.spacing){this.buffer+=\" \";this.spacing=false}if(text!=\" \"){this.buffer+=text}};while(s.position<text.length){var ch=text.charAt(s.position);if(/[ \\t]/.test(ch)){if(!s.mono){s.spacing=true}else{s.add(ch)}}else if(/</.test(ch)){if(!s.mono&&!s.bold&&/<b>/.test(text.substr(s.position,3))){s.emitBlock();s.bold=true;s.modStack.unshift(\"bold\");s.position+=2}else if(!s.mono&&!s.ital&&/<i>/.test(text.substr(s.position,3))){s.emitBlock();s.ital=true;s.modStack.unshift(\"ital\");s.position+=2}else if(!s.mono&&/<code>/.test(text.substr(s.position,6))){s.emitBlock();s.mono=true;s.modStack.unshift(\"mono\");s.position+=5}else if(!s.mono&&s.mod()===\"bold\"&&/<\\/b>/.test(text.substr(s.position,4))){s.emitBlock();s.bold=false;s.modStack.shift();s.position+=3}else if(!s.mono&&s.mod()===\"ital\"&&/<\\/i>/.test(text.substr(s.position,4))){s.emitBlock();s.ital=false;s.modStack.shift();s.position+=3}else if(s.mod()===\"mono\"&&/<\\/code>/.test(text.substr(s.position,7))){s.emitBlock();s.mono=false;s.modStack.shift();s.position+=6}else{s.add(ch)}}else if(/&/.test(ch)){if(/</.test(text.substr(s.position,4))){s.add(\"<\");s.position+=3}else if(/&/.test(text.substr(s.position,5))){s.add(\"&\");s.position+=4}else{s.add(\"&\")}}else{s.add(ch)}s.position++}s.emitBlock();return blocks}},{key:\"splitMarkdownBlocks\",value:function splitMarkdownBlocks(text){var blocks=[];var s={bold:false,ital:false,mono:false,beginable:true,spacing:false,position:0,buffer:\"\",modStack:[]};s.mod=function(){return this.modStack.length===0?\"normal\":this.modStack[0]};s.modName=function(){if(this.modStack.length===0)return\"normal\";else if(this.modStack[0]===\"mono\")return\"mono\";else{if(s.bold&&s.ital){return\"boldital\"}else if(s.bold){return\"bold\"}else if(s.ital){return\"ital\"}}};s.emitBlock=function(){var override=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.spacing){this.add(\" \");this.spacing=false}if(this.buffer.length>0){blocks.push({text:this.buffer,mod:this.modName()});this.buffer=\"\"}};s.add=function(text){if(text===\" \"){s.spacing=true}if(s.spacing){this.buffer+=\" \";this.spacing=false}if(text!=\" \"){this.buffer+=text}};while(s.position<text.length){var ch=text.charAt(s.position);if(/[ \\t]/.test(ch)){if(!s.mono){s.spacing=true}else{s.add(ch)}s.beginable=true}else if(/\\\\/.test(ch)){if(s.position<text.length+1){s.position++;ch=text.charAt(s.position);if(/ \\t/.test(ch)){s.spacing=true}else{s.add(ch);s.beginable=false}}}else if(!s.mono&&!s.bold&&(s.beginable||s.spacing)&&/\\*/.test(ch)){s.emitBlock();s.bold=true;s.modStack.unshift(\"bold\")}else if(!s.mono&&!s.ital&&(s.beginable||s.spacing)&&/\\_/.test(ch)){s.emitBlock();s.ital=true;s.modStack.unshift(\"ital\")}else if(!s.mono&&(s.beginable||s.spacing)&&/`/.test(ch)){s.emitBlock();s.mono=true;s.modStack.unshift(\"mono\")}else if(!s.mono&&s.mod()===\"bold\"&&/\\*/.test(ch)){if(s.position===text.length-1||/[.,_` \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.bold=false;s.modStack.shift()}else{s.add(ch)}}else if(!s.mono&&s.mod()===\"ital\"&&/\\_/.test(ch)){if(s.position===text.length-1||/[.,*` \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.ital=false;s.modStack.shift()}else{s.add(ch)}}else if(s.mono&&s.mod()===\"mono\"&&/`/.test(ch)){if(s.position===text.length-1||/[.,*_ \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.mono=false;s.modStack.shift()}else{s.add(ch)}}else{s.add(ch);s.beginable=false}s.position++}s.emitBlock();return blocks}},{key:\"splitBlocks\",value:function splitBlocks(text,markupSystem){var system=this.decodeMarkupSystem(markupSystem);if(system===\"none\"){return[{text:text,mod:\"normal\"}]}else if(system===\"markdown\"){return this.splitMarkdownBlocks(text)}else if(system===\"html\"){return this.splitHtmlBlocks(text)}}},{key:\"overMaxWidth\",value:function overMaxWidth(text){var width=this.ctx.measureText(text).width;return this.lines.curWidth()+width>this.parent.fontOptions.maxWdt}},{key:\"getLongestFit\",value:function getLongestFit(words){var text=\"\";var w=0;while(w<words.length){var pre=text===\"\"?\"\":\" \";var newText=text+pre+words[w];if(this.overMaxWidth(newText))break;text=newText;w++}return w}},{key:\"getLongestFitWord\",value:function getLongestFitWord(words){var w=0;while(w<words.length){if(this.overMaxWidth(words.slice(0,w)))break;w++}return w}},{key:\"splitStringIntoLines\",value:function splitStringIntoLines(str){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";var appendLast=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;str=str.replace(/^( +)/g,\"$1\\r\");str=str.replace(/([^\\r][^ ]*)( +)/g,\"$1\\r$2\\r\");var words=str.split(\"\\r\");while(words.length>0){var w=this.getLongestFit(words);if(w===0){var word=words[0];var x=this.getLongestFitWord(word);this.lines.newLine(word.slice(0,x),mod);words[0]=word.slice(x)}else{var newW=w;if(words[w-1]===\" \"){w--}else if(words[newW]===\" \"){newW++}var text=words.slice(0,w).join(\"\");if(w==words.length&&appendLast){this.lines.append(text,mod)}else{this.lines.newLine(text,mod)}words=words.slice(newW)}}}}]);return LabelSplitter}();exports[\"default\"]=LabelSplitter},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _assign=__webpack_require__(90);var _assign2=_interopRequireDefault(_assign);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var LabelAccumulator=function(){function LabelAccumulator(measureText){(0,_classCallCheck3[\"default\"])(this,LabelAccumulator);this.measureText=measureText;this.current=0;this.width=0;this.height=0;this.lines=[]}(0,_createClass3[\"default\"])(LabelAccumulator,[{key:\"_add\",value:function _add(l,text){var mod=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"normal\";if(this.lines[l]===undefined){this.lines[l]={width:0,height:0,blocks:[]}}var tmpText=text;if(text===undefined||text===\"\")tmpText=\" \";var result=this.measureText(tmpText,mod);var block=(0,_assign2[\"default\"])({},result.values);block.text=text;block.width=result.width;block.mod=mod;if(text===undefined||text===\"\"){block.width=0}this.lines[l].blocks.push(block);this.lines[l].width+=block.width}},{key:\"curWidth\",value:function curWidth(){var line=this.lines[this.current];if(line===undefined)return 0;return line.width}},{key:\"append\",value:function append(text){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";this._add(this.current,text,mod)}},{key:\"newLine\",value:function newLine(text){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";this._add(this.current,text,mod);this.current++}},{key:\"determineLineHeights\",value:function determineLineHeights(){for(var k=0;k<this.lines.length;k++){var line=this.lines[k];var height=0;if(line.blocks!==undefined){for(var l=0;l<line.blocks.length;l++){var block=line.blocks[l];if(height<block.height){height=block.height}}}line.height=height}}},{key:\"determineLabelSize\",value:function determineLabelSize(){var width=0;var height=0;for(var k=0;k<this.lines.length;k++){var line=this.lines[k];if(line.width>width){width=line.width}height+=line.height}this.width=width;this.height=height}},{key:\"removeEmptyBlocks\",value:function removeEmptyBlocks(){var tmpLines=[];for(var k=0;k<this.lines.length;k++){var line=this.lines[k];if(line.blocks.length===0)continue;if(k===this.lines.length-1){if(line.width===0)continue}var tmpLine={};(0,_assign2[\"default\"])(tmpLine,line);tmpLine.blocks=[];var firstEmptyBlock=void 0;var tmpBlocks=[];for(var l=0;l<line.blocks.length;l++){var block=line.blocks[l];if(block.width!==0){tmpBlocks.push(block)}else{if(firstEmptyBlock===undefined){firstEmptyBlock=block}}}if(tmpBlocks.length===0&&firstEmptyBlock!==undefined){tmpBlocks.push(firstEmptyBlock)}tmpLine.blocks=tmpBlocks;tmpLines.push(tmpLine)}return tmpLines}},{key:\"finalize\",value:function finalize(){this.determineLineHeights();this.determineLabelSize();var tmpLines=this.removeEmptyBlocks();return{width:this.width,height:this.height,lines:tmpLines}}}]);return LabelAccumulator}();exports[\"default\"]=LabelAccumulator},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Box=function(_NodeBase){(0,_inherits3[\"default\"])(Box,_NodeBase);function Box(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Box);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Box.__proto__||(0,_getPrototypeOf2[\"default\"])(Box)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Box,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);this.width=dimensions.width+this.margin.right+this.margin.left;this.height=dimensions.height+this.margin.top+this.margin.bottom;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx.roundRect(this.left,this.top,this.width,this.height,values.borderRadius);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y,ctx,selected,hover){this._updateBoundingBox(x,y,ctx,selected,hover)\n;var borderRadius=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(borderRadius)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);var borderWidth=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(angle)),Math.abs(this.height/2/Math.sin(angle)))+borderWidth}}]);return Box}(_NodeBase3[\"default\"]);exports[\"default\"]=Box},function(module,exports,__webpack_require__){__webpack_require__(195);module.exports=__webpack_require__(7).Object.getPrototypeOf},function(module,exports,__webpack_require__){var toObject=__webpack_require__(41);var $getPrototypeOf=__webpack_require__(85);__webpack_require__(87)(\"getPrototypeOf\",function(){return function getPrototypeOf(it){return $getPrototypeOf(toObject(it))}})},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(197),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(198);module.exports=__webpack_require__(7).Object.setPrototypeOf},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Object\",{setPrototypeOf:__webpack_require__(199).set})},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);var anObject=__webpack_require__(27);var check=function(O,proto){anObject(O);if(!isObject(proto)&&proto!==null)throw TypeError(proto+\": can't set as prototype!\")};module.exports={set:Object.setPrototypeOf||(\"__proto__\"in{}?function(test,buggy,set){try{set=__webpack_require__(80)(Function.call,__webpack_require__(89).f(Object.prototype,\"__proto__\").set,2);set(test,[]);buggy=!(test instanceof Array)}catch(e){buggy=true}return function setPrototypeOf(O,proto){check(O,proto);if(buggy)O.__proto__=proto;else set(O,proto);return O}}({},false):undefined),check:check}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Circle=function(_CircleImageBase){(0,_inherits3[\"default\"])(Circle,_CircleImageBase);function Circle(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Circle);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Circle.__proto__||(0,_getPrototypeOf2[\"default\"])(Circle)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Circle,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);var diameter=Math.max(dimensions.width+this.margin.right+this.margin.left,dimensions.height+this.margin.top+this.margin.bottom);this.options.size=diameter/2;this.width=diameter;this.height=diameter;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this._drawRawCircle(ctx,x,y,values);this.updateBoundingBox(x,y);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,y,selected,hover)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.width*.5}}]);return Circle}(_CircleImageBase3[\"default\"]);exports[\"default\"]=Circle},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CircularImage=function(_CircleImageBase){(0,_inherits3[\"default\"])(CircularImage,_CircleImageBase);function CircularImage(options,body,labelModule,imageObj,imageObjAlt){(0,_classCallCheck3[\"default\"])(this,CircularImage);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(CircularImage.__proto__||(0,_getPrototypeOf2[\"default\"])(CircularImage)).call(this,options,body,labelModule));_this.setImages(imageObj,imageObjAlt);return _this}(0,_createClass3[\"default\"])(CircularImage,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var imageAbsent=this.imageObj.src===undefined||this.imageObj.width===undefined||this.imageObj.height===undefined;if(imageAbsent){var diameter=this.options.size*2;this.width=diameter;this.height=diameter;this.radius=.5*this.width;return}if(this.needsRefresh(selected,hover)){this._resizeImage()}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.switchImages(selected);this.resize();this.left=x-this.width/2;this.top=y-this.height/2;this._drawRawCircle(ctx,x,y,values);ctx.save();ctx.clip();this._drawImageAtPosition(ctx,values);ctx.restore();this._drawImageLabel(ctx,x,y,selected,hover);this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.width*.5}}]);return CircularImage}(_CircleImageBase3[\"default\"]);exports[\"default\"]=CircularImage},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Database=function(_NodeBase){(0,_inherits3[\"default\"])(Database,_NodeBase);function Database(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Database);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Database.__proto__||(0,_getPrototypeOf2[\"default\"])(Database)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Database,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);var size=dimensions.width+this.margin.right+this.margin.left;this.width=size;this.height=size;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx.database(x-this.width/2,y-this.height/2,this.width,this.height);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Database}(_NodeBase3[\"default\"]);exports[\"default\"]=Database},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Diamond=function(_ShapeBase){(0,_inherits3[\"default\"])(Diamond,_ShapeBase);function Diamond(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Diamond);return(0,_possibleConstructorReturn3[\"default\"])(this,(Diamond.__proto__||(0,_getPrototypeOf2[\"default\"])(Diamond)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Diamond,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"diamond\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Diamond}(_ShapeBase3[\"default\"]);exports[\"default\"]=Diamond},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Dot=function(_ShapeBase){(0,_inherits3[\"default\"])(Dot,_ShapeBase);function Dot(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Dot);return(0,_possibleConstructorReturn3[\"default\"])(this,(Dot.__proto__||(0,_getPrototypeOf2[\"default\"])(Dot)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Dot,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"circle\",2,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.options.size}}]);return Dot}(_ShapeBase3[\"default\"]);exports[\"default\"]=Dot},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Ellipse=function(_NodeBase){(0,_inherits3[\"default\"])(Ellipse,_NodeBase);function Ellipse(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Ellipse);return(0,_possibleConstructorReturn3[\"default\"])(this,(Ellipse.__proto__||(0,_getPrototypeOf2[\"default\"])(Ellipse)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Ellipse,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);this.height=dimensions.height*2;this.width=dimensions.width+dimensions.height;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width*.5;this.top=y-this.height*.5;this.initContextForDraw(ctx,values);ctx.ellipse_vis(this.left,this.top,this.width,this.height);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,x,y,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);var a=this.width*.5;var b=this.height*.5;var w=Math.sin(angle)*a;var h=Math.cos(angle)*b;return a*b/Math.sqrt(w*w+h*h)}}]);return Ellipse}(_NodeBase3[\"default\"]);exports[\"default\"]=Ellipse},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Icon=function(_NodeBase){(0,_inherits3[\"default\"])(Icon,_NodeBase);function Icon(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Icon);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Icon.__proto__||(0,_getPrototypeOf2[\"default\"])(Icon)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Icon,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){this.iconSize={width:Number(this.options.icon.size),height:Number(this.options.icon.size)};this.width=this.iconSize.width+this.margin.right+this.margin.left;this.height=this.iconSize.height+this.margin.top+this.margin.bottom;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.options.icon.size=this.options.icon.size||50;this.left=x-this.width/2;this.top=y-this.height/2;this._icon(ctx,x,y,selected,hover,values);if(this.options.label!==undefined){var iconTextSpacing=5;this.labelModule.draw(ctx,this.left+this.iconSize.width/2+this.margin.left,y+this.height/2+iconTextSpacing,selected)}this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.icon.size*.5;this.boundingBox.left=x-this.options.icon.size*.5;this.boundingBox.right=x+this.options.icon.size*.5;this.boundingBox.bottom=y+this.options.icon.size*.5;if(this.options.label!==undefined&&this.labelModule.size.width>0){var iconTextSpacing=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+iconTextSpacing)}}},{key:\"_icon\",value:function _icon(ctx,x,y,selected,hover,values){var iconSize=Number(this.options.icon.size);if(this.options.icon.code!==undefined){ctx.font=(selected?\"bold \":\"\")+iconSize+\"px \"+this.options.icon.face;ctx.fillStyle=this.options.icon.color||\"black\";ctx.textAlign=\"center\";ctx.textBaseline=\"middle\";this.enableShadow(ctx,values);ctx.fillText(this.options.icon.code,x,y);this.disableShadow(ctx,values)}else{console.error(\"When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.\")}}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Icon}(_NodeBase3[\"default\"]);exports[\"default\"]=Icon},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Image=function(_CircleImageBase){(0,_inherits3[\"default\"])(Image,_CircleImageBase);function Image(options,body,labelModule,imageObj,imageObjAlt){(0,_classCallCheck3[\"default\"])(this,Image);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Image.__proto__||(0,_getPrototypeOf2[\"default\"])(Image)).call(this,options,body,labelModule));_this.setImages(imageObj,imageObjAlt);return _this}(0,_createClass3[\"default\"])(Image,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var imageAbsent=this.imageObj.src===undefined||this.imageObj.width===undefined||this.imageObj.height===undefined;if(imageAbsent){var side=this.options.size*2;this.width=side;this.height=side;return}if(this.needsRefresh(selected,hover)){this._resizeImage()}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.switchImages(selected);this.resize();this.left=x-this.width/2;this.top=y-this.height/2;if(this.options.shapeProperties.useBorderWithImage===true){var neutralborderWidth=this.options.borderWidth;var selectionLineWidth=this.options.borderWidthSelected||2*this.options.borderWidth;var borderWidth=(selected?selectionLineWidth:neutralborderWidth)/this.body.view.scale;ctx.lineWidth=Math.min(this.width,borderWidth);ctx.beginPath();ctx.strokeStyle=selected?this.options.color.highlight.border:hover?this.options.color.hover.border:this.options.color.border;ctx.fillStyle=selected?this.options.color.highlight.background:hover?this.options.color.hover.background:this.options.color.background;ctx.rect(this.left-.5*ctx.lineWidth,this.top-.5*ctx.lineWidth,this.width+ctx.lineWidth,this.height+ctx.lineWidth);ctx.fill();this.performStroke(ctx,values);ctx.closePath()}this._drawImageAtPosition(ctx,values);this._drawImageLabel(ctx,x,y,selected,hover);this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.resize();this._updateBoundingBox(x,y);if(this.options.label!==undefined&&this.labelModule.size.width>0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Image}(_CircleImageBase3[\"default\"]);exports[\"default\"]=Image},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Square=function(_ShapeBase){(0,_inherits3[\"default\"])(Square,_ShapeBase);function Square(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Square);return(0,_possibleConstructorReturn3[\"default\"])(this,(Square.__proto__||(0,_getPrototypeOf2[\"default\"])(Square)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Square,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"square\",2,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Square}(_ShapeBase3[\"default\"]);exports[\"default\"]=Square},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hexagon=function(_ShapeBase){(0,_inherits3[\"default\"])(Hexagon,_ShapeBase);function Hexagon(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Hexagon);return(0,_possibleConstructorReturn3[\"default\"])(this,(Hexagon.__proto__||(0,_getPrototypeOf2[\"default\"])(Hexagon)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Hexagon,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"hexagon\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Hexagon}(_ShapeBase3[\"default\"]);exports[\"default\"]=Hexagon},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Star=function(_ShapeBase){(0,_inherits3[\"default\"])(Star,_ShapeBase);function Star(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Star);return(0,_possibleConstructorReturn3[\"default\"])(this,(Star.__proto__||(0,_getPrototypeOf2[\"default\"])(Star)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Star,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"star\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Star}(_ShapeBase3[\"default\"]);exports[\"default\"]=Star},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Text=function(_NodeBase){(0,_inherits3[\"default\"])(Text,_NodeBase);function Text(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Text);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Text.__proto__||(0,_getPrototypeOf2[\"default\"])(Text)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Text,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){this.textSize=this.labelModule.getTextSize(ctx,selected,hover);this.width=this.textSize.width+this.margin.right+this.margin.left;this.height=this.textSize.height+this.margin.top+this.margin.bottom;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.enableShadow(ctx,values);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover);this.disableShadow(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Text}(_NodeBase3[\"default\"]);exports[\"default\"]=Text},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Triangle=function(_ShapeBase){(0,_inherits3[\"default\"])(Triangle,_ShapeBase);function Triangle(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Triangle);return(0,_possibleConstructorReturn3[\"default\"])(this,(Triangle.__proto__||(0,_getPrototypeOf2[\"default\"])(Triangle)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Triangle,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"triangle\",3,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Triangle}(_ShapeBase3[\"default\"]);exports[\"default\"]=Triangle},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var TriangleDown=function(_ShapeBase){(0,_inherits3[\"default\"])(TriangleDown,_ShapeBase);function TriangleDown(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,TriangleDown);return(0,_possibleConstructorReturn3[\"default\"])(this,(TriangleDown.__proto__||(0,_getPrototypeOf2[\"default\"])(TriangleDown)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(TriangleDown,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"triangleDown\",3,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return TriangleDown}(_ShapeBase3[\"default\"]);exports[\"default\"]=TriangleDown},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Edge=__webpack_require__(74)[\"default\"];var EdgesHandler=function(){function EdgesHandler(body,images,groups){var _this=this;(0,_classCallCheck3[\"default\"])(this,EdgesHandler);this.body=body;this.images=images;this.groups=groups;this.body.functions.createEdge=this.create.bind(this);this.edgesListeners={add:function add(event,params){_this.add(params.items)},update:function update(event,params){_this.update(params.items)},remove:function remove(event,params){_this.remove(params.items)}};this.options={};this.defaultOptions={arrows:{to:{enabled:false,\nscaleFactor:1,type:\"arrow\"},middle:{enabled:false,scaleFactor:1,type:\"arrow\"},from:{enabled:false,scaleFactor:1,type:\"arrow\"}},arrowStrikethrough:true,color:{color:\"#848484\",highlight:\"#848484\",hover:\"#848484\",inherit:\"from\",opacity:1},dashes:false,font:{color:\"#343434\",size:14,face:\"arial\",background:\"none\",strokeWidth:2,strokeColor:\"#ffffff\",align:\"horizontal\",multi:false,vadjust:0,bold:{mod:\"bold\"},boldital:{mod:\"bold italic\"},ital:{mod:\"italic\"},mono:{mod:\"\",size:15,face:\"courier new\",vadjust:2}},hidden:false,hoverWidth:1.5,label:undefined,labelHighlightBold:true,length:undefined,physics:true,scaling:{min:1,max:15,label:{enabled:true,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function customScalingFunction(min,max,total,value){if(max===min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}}},selectionWidth:1.5,selfReferenceSize:20,shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:10,x:5,y:5},smooth:{enabled:true,type:\"dynamic\",forceDirection:\"none\",roundness:.5},title:undefined,width:1,value:undefined};util.deepExtend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(EdgesHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"_forceDisableDynamicCurves\",function(type){var emit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(type===\"dynamic\"){type=\"continuous\"}var dataChanged=false;for(var edgeId in _this2.body.edges){if(_this2.body.edges.hasOwnProperty(edgeId)){var edge=_this2.body.edges[edgeId];var edgeData=_this2.body.data.edges._data[edgeId];if(edgeData!==undefined){var smoothOptions=edgeData.smooth;if(smoothOptions!==undefined){if(smoothOptions.enabled===true&&smoothOptions.type===\"dynamic\"){if(type===undefined){edge.setOptions({smooth:false})}else{edge.setOptions({smooth:{type:type}})}dataChanged=true}}}}}if(emit===true&&dataChanged===true){_this2.body.emitter.emit(\"_dataChanged\")}});this.body.emitter.on(\"_dataUpdated\",function(){_this2.reconnectEdges()});this.body.emitter.on(\"refreshEdges\",this.refresh.bind(this));this.body.emitter.on(\"refresh\",this.refresh.bind(this));this.body.emitter.on(\"destroy\",function(){util.forEach(_this2.edgesListeners,function(callback,event){if(_this2.body.data.edges)_this2.body.data.edges.off(event,callback)});delete _this2.body.functions.createEdge;delete _this2.edgesListeners.add;delete _this2.edgesListeners.update;delete _this2.edgesListeners.remove;delete _this2.edgesListeners})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){Edge.parseOptions(this.options,options,true,this.defaultOptions,true);var dataChanged=false;if(options.smooth!==undefined){for(var edgeId in this.body.edges){if(this.body.edges.hasOwnProperty(edgeId)){dataChanged=this.body.edges[edgeId].updateEdgeType()||dataChanged}}}if(options.font!==undefined){for(var _edgeId in this.body.edges){if(this.body.edges.hasOwnProperty(_edgeId)){this.body.edges[_edgeId].updateLabelModule()}}}if(options.hidden!==undefined||options.physics!==undefined||dataChanged===true){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"setData\",value:function setData(edges){var _this3=this;var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var oldEdgesData=this.body.data.edges;if(edges instanceof DataSet||edges instanceof DataView){this.body.data.edges=edges}else if(Array.isArray(edges)){this.body.data.edges=new DataSet;this.body.data.edges.add(edges)}else if(!edges){this.body.data.edges=new DataSet}else{throw new TypeError(\"Array or DataSet expected\")}if(oldEdgesData){util.forEach(this.edgesListeners,function(callback,event){oldEdgesData.off(event,callback)})}this.body.edges={};if(this.body.data.edges){util.forEach(this.edgesListeners,function(callback,event){_this3.body.data.edges.on(event,callback)});var ids=this.body.data.edges.getIds();this.add(ids,true)}this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"add\",value:function add(ids){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var edges=this.body.edges;var edgesData=this.body.data.edges;for(var i=0;i<ids.length;i++){var id=ids[i];var oldEdge=edges[id];if(oldEdge){oldEdge.disconnect()}var data=edgesData.get(id,{showInternalIds:true});edges[id]=this.create(data)}this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"update\",value:function update(ids){var edges=this.body.edges;var edgesData=this.body.data.edges;var dataChanged=false;for(var i=0;i<ids.length;i++){var id=ids[i];var data=edgesData.get(id);var edge=edges[id];if(edge!==undefined){edge.disconnect();dataChanged=edge.setOptions(data)||dataChanged;edge.connect()}else{this.body.edges[id]=this.create(data);dataChanged=true}}if(dataChanged===true){this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");this.body.emitter.emit(\"_dataChanged\")}else{this.body.emitter.emit(\"_dataUpdated\")}}},{key:\"remove\",value:function remove(ids){var emit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(ids.length===0)return;var edges=this.body.edges;util.forEach(ids,function(id){var edge=edges[id];if(edge!==undefined){edge.remove()}});if(emit){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"refresh\",value:function refresh(){var _this4=this;util.forEach(this.body.edges,function(edge,edgeId){var data=_this4.body.data.edges._data[edgeId];if(data!==undefined){edge.setOptions(data)}})}},{key:\"create\",value:function create(properties){return new Edge(properties,this.body,this.options,this.defaultOptions)}},{key:\"reconnectEdges\",value:function reconnectEdges(){var id;var nodes=this.body.nodes;var edges=this.body.edges;for(id in nodes){if(nodes.hasOwnProperty(id)){nodes[id].edges=[]}}for(id in edges){if(edges.hasOwnProperty(id)){var edge=edges[id];edge.from=null;edge.to=null;edge.connect()}}}},{key:\"getConnectedNodes\",value:function getConnectedNodes(edgeId){var nodeList=[];if(this.body.edges[edgeId]!==undefined){var edge=this.body.edges[edgeId];if(edge.fromId!==undefined){nodeList.push(edge.fromId)}if(edge.toId!==undefined){nodeList.push(edge.toId)}}return nodeList}},{key:\"_updateState\",value:function _updateState(){this._addMissingEdges();this._removeInvalidEdges()}},{key:\"_removeInvalidEdges\",value:function _removeInvalidEdges(){var _this5=this;var edgesToDelete=[];util.forEach(this.body.edges,function(edge,id){var toNode=_this5.body.nodes[edge.toId];var fromNode=_this5.body.nodes[edge.fromId];if(toNode!==undefined&&toNode.isCluster===true||fromNode!==undefined&&fromNode.isCluster===true){return}if(toNode===undefined||fromNode===undefined){edgesToDelete.push(id)}});this.remove(edgesToDelete,false)}},{key:\"_addMissingEdges\",value:function _addMissingEdges(){var edges=this.body.edges;var edgesData=this.body.data.edges;var addIds=[];edgesData.forEach(function(edgeData,edgeId){var edge=edges[edgeId];if(edge===undefined){addIds.push(edgeId)}});this.add(addIds,true)}}]);return EdgesHandler}();exports[\"default\"]=EdgesHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CubicBezierEdgeBase2=__webpack_require__(216);var _CubicBezierEdgeBase3=_interopRequireDefault(_CubicBezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CubicBezierEdge=function(_CubicBezierEdgeBase){(0,_inherits3[\"default\"])(CubicBezierEdge,_CubicBezierEdgeBase);function CubicBezierEdge(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CubicBezierEdge);return(0,_possibleConstructorReturn3[\"default\"])(this,(CubicBezierEdge.__proto__||(0,_getPrototypeOf2[\"default\"])(CubicBezierEdge)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(CubicBezierEdge,[{key:\"_line\",value:function _line(ctx,values,viaNodes){var via1=viaNodes[0];var via2=viaNodes[1];this._bezierCurve(ctx,values,via1,via2)}},{key:\"_getViaCoordinates\",value:function _getViaCoordinates(){var dx=this.from.x-this.to.x;var dy=this.from.y-this.to.y;var x1=void 0,y1=void 0,x2=void 0,y2=void 0;var roundness=this.options.smooth.roundness;if((Math.abs(dx)>Math.abs(dy)||this.options.smooth.forceDirection===true||this.options.smooth.forceDirection===\"horizontal\")&&this.options.smooth.forceDirection!==\"vertical\"){y1=this.from.y;y2=this.to.y;x1=this.from.x-roundness*dx;x2=this.to.x+roundness*dx}else{y1=this.from.y-roundness*dy;y2=this.to.y+roundness*dy;x1=this.from.x;x2=this.to.x}return[{x:x1,y:y1},{x:x2,y:y2}]}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){return this._findBorderPositionBezier(nearNode,ctx)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){var _ref=arguments.length>6&&arguments[6]!==undefined?arguments[6]:this._getViaCoordinates(),_ref2=(0,_slicedToArray3[\"default\"])(_ref,2),via1=_ref2[0],via2=_ref2[1];return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via1,via2)}},{key:\"getPoint\",value:function getPoint(percentage){var _ref3=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this._getViaCoordinates(),_ref4=(0,_slicedToArray3[\"default\"])(_ref3,2),via1=_ref4[0],via2=_ref4[1];var t=percentage;var vec=[];vec[0]=Math.pow(1-t,3);vec[1]=3*t*Math.pow(1-t,2);vec[2]=3*Math.pow(t,2)*(1-t);vec[3]=Math.pow(t,3);var x=vec[0]*this.fromPoint.x+vec[1]*via1.x+vec[2]*via2.x+vec[3]*this.toPoint.x;var y=vec[0]*this.fromPoint.y+vec[1]*via1.y+vec[2]*via2.y+vec[3]*this.toPoint.y;return{x:x,y:y}}}]);return CubicBezierEdge}(_CubicBezierEdgeBase3[\"default\"]);exports[\"default\"]=CubicBezierEdge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CubicBezierEdgeBase=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(CubicBezierEdgeBase,_BezierEdgeBase);function CubicBezierEdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CubicBezierEdgeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(CubicBezierEdgeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(CubicBezierEdgeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(CubicBezierEdgeBase,[{key:\"_getDistanceToBezierEdge\",value:function _getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via1,via2){var minDistance=1e9;var distance=void 0;var i=void 0,t=void 0,x=void 0,y=void 0;var lastX=x1;var lastY=y1;var vec=[0,0,0,0];for(i=1;i<10;i++){t=.1*i;vec[0]=Math.pow(1-t,3);vec[1]=3*t*Math.pow(1-t,2);vec[2]=3*Math.pow(t,2)*(1-t);vec[3]=Math.pow(t,3);x=vec[0]*x1+vec[1]*via1.x+vec[2]*via2.x+vec[3]*x2;y=vec[0]*y1+vec[1]*via1.y+vec[2]*via2.y+vec[3]*y2;if(i>0){distance=this._getDistanceToLine(lastX,lastY,x,y,x3,y3);minDistance=distance<minDistance?distance:minDistance}lastX=x;lastY=y}return minDistance}}]);return CubicBezierEdgeBase}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=CubicBezierEdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeDynamic=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(BezierEdgeDynamic,_BezierEdgeBase);function BezierEdgeDynamic(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeDynamic);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeDynamic.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeDynamic)).call(this,options,body,labelModule));_this._boundFunction=function(){_this.positionBezierNode()};_this.body.emitter.on(\"_repositionBezierNodes\",_this._boundFunction);return _this}(0,_createClass3[\"default\"])(BezierEdgeDynamic,[{key:\"setOptions\",value:function setOptions(options){var physicsChange=false;if(this.options.physics!==options.physics){physicsChange=true}this.options=options;this.id=this.options.id;this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];this.setupSupportNode();this.connect();if(physicsChange===true){this.via.setOptions({physics:this.options.physics});this.positionBezierNode()}}},{key:\"connect\",value:function connect(){this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];if(this.from===undefined||this.to===undefined||this.options.physics===false){this.via.setOptions({physics:false})}else{if(this.from.id===this.to.id){this.via.setOptions({physics:false})}else{this.via.setOptions({physics:true})}}}},{key:\"cleanup\",value:function cleanup(){this.body.emitter.off(\"_repositionBezierNodes\",this._boundFunction);if(this.via!==undefined){delete this.body.nodes[this.via.id];this.via=undefined;return true}return false}},{key:\"setupSupportNode\",value:function setupSupportNode(){if(this.via===undefined){var nodeId=\"edgeId:\"+this.id;var node=this.body.functions.createNode({id:nodeId,shape:\"circle\",physics:true,hidden:true});this.body.nodes[nodeId]=node;this.via=node;this.via.parentEdgeId=this.id;this.positionBezierNode()}}},{key:\"positionBezierNode\",value:function positionBezierNode(){if(this.via!==undefined&&this.from!==undefined&&this.to!==undefined){this.via.x=.5*(this.from.x+this.to.x);this.via.y=.5*(this.from.y+this.to.y)}else if(this.via!==undefined){this.via.x=0;this.via.y=0}}},{key:\"_line\",value:function _line(ctx,values,viaNode){this._bezierCurve(ctx,values,viaNode)}},{key:\"getViaNode\",value:function getViaNode(){return this.via}},{key:\"getPoint\",value:function getPoint(percentage){var viaNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.via;var t=percentage;var x=void 0,y=void 0;if(this.from===this.to){var _getCircleData=this._getCircleData(this.from),_getCircleData2=(0,_slicedToArray3[\"default\"])(_getCircleData,3),cx=_getCircleData2[0],cy=_getCircleData2[1],cr=_getCircleData2[2];var a=2*Math.PI*(1-t);x=cx+cr*Math.sin(a);y=cy+cr-cr*(1-Math.cos(a))}else{x=Math.pow(1-t,2)*this.fromPoint.x+2*t*(1-t)*viaNode.x+Math.pow(t,2)*this.toPoint.x;y=Math.pow(1-t,2)*this.fromPoint.y+2*t*(1-t)*viaNode.y+Math.pow(t,2)*this.toPoint.y}return{x:x,y:y}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){return this._findBorderPositionBezier(nearNode,ctx,this.via)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,this.via)}}]);return BezierEdgeDynamic}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeDynamic},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeStatic=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(BezierEdgeStatic,_BezierEdgeBase);function BezierEdgeStatic(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeStatic);return(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeStatic.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeStatic)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(BezierEdgeStatic,[{key:\"_line\",value:function _line(ctx,values,viaNode){this._bezierCurve(ctx,values,viaNode)}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}},{key:\"_getViaCoordinates\",value:function _getViaCoordinates(){var xVia=undefined;var yVia=undefined;var factor=this.options.smooth.roundness;var type=this.options.smooth.type;var dx=Math.abs(this.from.x-this.to.x);var dy=Math.abs(this.from.y-this.to.y);if(type===\"discrete\"||type===\"diagonalCross\"){var stepX=void 0;var stepY=void 0;if(dx<=dy){stepX=stepY=factor*dy}else{stepX=stepY=factor*dx}if(this.from.x>this.to.x)stepX=-stepX;if(this.from.y>=this.to.y)stepY=-stepY;xVia=this.from.x+stepX;yVia=this.from.y+stepY;if(type===\"discrete\"){if(dx<=dy){xVia=dx<factor*dy?this.from.x:xVia}else{yVia=dy<factor*dx?this.from.y:yVia}}}else if(type===\"straightCross\"){var _stepX=(1-factor)*dx;var _stepY=(1-factor)*dy;if(dx<=dy){_stepX=0;if(this.from.y<this.to.y)_stepY=-_stepY}else{if(this.from.x<this.to.x)_stepX=-_stepX;_stepY=0}xVia=this.to.x+_stepX;yVia=this.to.y+_stepY}else if(type===\"horizontal\"){var _stepX2=(1-factor)*dx;if(this.from.x<this.to.x)_stepX2=-_stepX2;xVia=this.to.x+_stepX2;yVia=this.from.y}else if(type===\"vertical\"){var _stepY2=(1-factor)*dy;if(this.from.y<this.to.y)_stepY2=-_stepY2;xVia=this.from.x;yVia=this.to.y+_stepY2}else if(type===\"curvedCW\"){dx=this.to.x-this.from.x;dy=this.from.y-this.to.y;var radius=Math.sqrt(dx*dx+dy*dy);var pi=Math.PI;var originalAngle=Math.atan2(dy,dx);var myAngle=(originalAngle+(factor*.5+.5)*pi)%(2*pi);xVia=this.from.x+(factor*.5+.5)*radius*Math.sin(myAngle);yVia=this.from.y+(factor*.5+.5)*radius*Math.cos(myAngle)}else if(type===\"curvedCCW\"){dx=this.to.x-this.from.x;dy=this.from.y-this.to.y;var _radius=Math.sqrt(dx*dx+dy*dy);var _pi=Math.PI;var _originalAngle=Math.atan2(dy,dx);var _myAngle=(_originalAngle+(-factor*.5+.5)*_pi)%(2*_pi);xVia=this.from.x+(factor*.5+.5)*_radius*Math.sin(_myAngle);yVia=this.from.y+(factor*.5+.5)*_radius*Math.cos(_myAngle)}else{var _stepX3=void 0;var _stepY3=void 0;if(dx<=dy){_stepX3=_stepY3=factor*dy}else{_stepX3=_stepY3=factor*dx}if(this.from.x>this.to.x)_stepX3=-_stepX3;if(this.from.y>=this.to.y)_stepY3=-_stepY3;xVia=this.from.x+_stepX3;yVia=this.from.y+_stepY3;if(dx<=dy){if(this.from.x<=this.to.x){xVia=this.to.x<xVia?this.to.x:xVia}else{xVia=this.to.x>xVia?this.to.x:xVia}}else{if(this.from.y>=this.to.y){yVia=this.to.y>yVia?this.to.y:yVia}else{yVia=this.to.y<yVia?this.to.y:yVia}}}return{x:xVia,y:yVia}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){var options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};return this._findBorderPositionBezier(nearNode,ctx,options.via)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){var viaNode=arguments.length>6&&arguments[6]!==undefined?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,viaNode)}},{key:\"getPoint\",value:function getPoint(percentage){var viaNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this._getViaCoordinates();var t=percentage;var x=Math.pow(1-t,2)*this.fromPoint.x+2*t*(1-t)*viaNode.x+Math.pow(t,2)*this.toPoint.x;var y=Math.pow(1-t,2)*this.fromPoint.y+2*t*(1-t)*viaNode.y+Math.pow(t,2)*this.toPoint.y;return{x:x,y:y}}}]);return BezierEdgeStatic}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeStatic},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _EdgeBase2=__webpack_require__(118);var _EdgeBase3=_interopRequireDefault(_EdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var StraightEdge=function(_EdgeBase){(0,_inherits3[\"default\"])(StraightEdge,_EdgeBase);function StraightEdge(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,StraightEdge);return(0,_possibleConstructorReturn3[\"default\"])(this,(StraightEdge.__proto__||(0,_getPrototypeOf2[\"default\"])(StraightEdge)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(StraightEdge,[{key:\"_line\",value:function _line(ctx,values){ctx.beginPath();ctx.moveTo(this.fromPoint.x,this.fromPoint.y);ctx.lineTo(this.toPoint.x,this.toPoint.y);this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getViaNode\",value:function getViaNode(){return undefined}},{key:\"getPoint\",value:function getPoint(percentage){return{x:(1-percentage)*this.fromPoint.x+percentage*this.toPoint.x,y:(1-percentage)*this.fromPoint.y+percentage*this.toPoint.y}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){var node1=this.to;var node2=this.from;if(nearNode.id===this.from.id){node1=this.from;node2=this.to}var angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);var dx=node1.x-node2.x;var dy=node1.y-node2.y;var edgeSegmentLength=Math.sqrt(dx*dx+dy*dy);var toBorderDist=nearNode.distanceToBorder(ctx,angle);var toBorderPoint=(edgeSegmentLength-toBorderDist)/edgeSegmentLength;var borderPos={};borderPos.x=(1-toBorderPoint)*node2.x+toBorderPoint*node1.x;borderPos.y=(1-toBorderPoint)*node2.y+toBorderPoint*node1.y;return borderPos}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){return this._getDistanceToLine(x1,y1,x2,y2,x3,y3)}}]);return StraightEdge}(_EdgeBase3[\"default\"]);exports[\"default\"]=StraightEdge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BarnesHutSolver=__webpack_require__(120)[\"default\"];var Repulsion=__webpack_require__(221)[\"default\"];var HierarchicalRepulsion=__webpack_require__(222)[\"default\"];var SpringSolver=__webpack_require__(223)[\"default\"];var HierarchicalSpringSolver=__webpack_require__(224)[\"default\"];var CentralGravitySolver=__webpack_require__(121)[\"default\"];var ForceAtlas2BasedRepulsionSolver=__webpack_require__(225)[\"default\"];var ForceAtlas2BasedCentralGravitySolver=__webpack_require__(226)[\"default\"];var util=__webpack_require__(2);var EndPoints=__webpack_require__(119)[\"default\"];var PhysicsEngine=function(){function PhysicsEngine(body){(0,_classCallCheck3[\"default\"])(this,PhysicsEngine);this.body=body;this.physicsBody={physicsNodeIndices:[],physicsEdgeIndices:[],forces:{},velocities:{}};this.physicsEnabled=true;this.simulationInterval=1e3/60;this.requiresTimeout=true;this.previousStates={};this.referenceState={};this.freezeCache={};this.renderTimer=undefined;this.adaptiveTimestep=false;this.adaptiveTimestepEnabled=false;this.adaptiveCounter=0;this.adaptiveInterval=3;this.stabilized=false;this.startedStabilization=false;this.stabilizationIterations=0;this.ready=false;this.options={};this.defaultOptions={enabled:true,barnesHut:{theta:.5,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09,avoidOverlap:0},forceAtlas2Based:{theta:.5,gravitationalConstant:-50,centralGravity:.01,springConstant:.08,springLength:100,damping:.4,avoidOverlap:0},repulsion:{centralGravity:.2,springLength:200,springConstant:.05,nodeDistance:100,damping:.09,avoidOverlap:0},hierarchicalRepulsion:{centralGravity:0,springLength:100,springConstant:.01,nodeDistance:120,damping:.09},maxVelocity:50,minVelocity:.75,solver:\"barnesHut\",stabilization:{enabled:true,iterations:1e3,updateInterval:50,onlyDynamicEdges:false,fit:true},timestep:.5,adaptiveTimestep:true};util.extend(this.options,this.defaultOptions);this.timestep=.5;this.layoutFailed=false;this.bindEventListeners()}(0,_createClass3[\"default\"])(PhysicsEngine,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"initPhysics\",function(){_this.initPhysics()});this.body.emitter.on(\"_layoutFailed\",function(){_this.layoutFailed=true});this.body.emitter.on(\"resetPhysics\",function(){_this.stopSimulation();_this.ready=false});this.body.emitter.on(\"disablePhysics\",function(){_this.physicsEnabled=false;_this.stopSimulation()});this.body.emitter.on(\"restorePhysics\",function(){_this.setOptions(_this.options);if(_this.ready===true){_this.startSimulation()}});this.body.emitter.on(\"startSimulation\",function(){if(_this.ready===true){_this.startSimulation()}});this.body.emitter.on(\"stopSimulation\",function(){_this.stopSimulation()});this.body.emitter.on(\"destroy\",function(){_this.stopSimulation(false);_this.body.emitter.off()});this.body.emitter.on(\"_dataChanged\",function(){_this.updatePhysicsData()})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){if(options===false){this.options.enabled=false;this.physicsEnabled=false;this.stopSimulation()}else if(options===true){this.options.enabled=true;this.physicsEnabled=true;this.startSimulation()}else{this.physicsEnabled=true;util.selectiveNotDeepExtend([\"stabilization\"],this.options,options);util.mergeOptions(this.options,options,\"stabilization\");if(options.enabled===undefined){this.options.enabled=true}if(this.options.enabled===false){this.physicsEnabled=false;this.stopSimulation()}this.timestep=this.options.timestep}}this.init()}},{key:\"init\",value:function init(){var options;if(this.options.solver===\"forceAtlas2Based\"){options=this.options.forceAtlas2Based;this.nodesSolver=new ForceAtlas2BasedRepulsionSolver(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new ForceAtlas2BasedCentralGravitySolver(this.body,this.physicsBody,options)}else if(this.options.solver===\"repulsion\"){options=this.options.repulsion;this.nodesSolver=new Repulsion(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}else if(this.options.solver===\"hierarchicalRepulsion\"){options=this.options.hierarchicalRepulsion;this.nodesSolver=new HierarchicalRepulsion(this.body,this.physicsBody,options);this.edgesSolver=new HierarchicalSpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}else{options=this.options.barnesHut;this.nodesSolver=new BarnesHutSolver(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}this.modelOptions=options}},{key:\"initPhysics\",value:function initPhysics(){if(this.physicsEnabled===true&&this.options.enabled===true){if(this.options.stabilization.enabled===true){this.stabilize()}else{this.stabilized=false;this.ready=true;this.body.emitter.emit(\"fit\",{},this.layoutFailed);this.startSimulation()}}else{this.ready=true;this.body.emitter.emit(\"fit\")}}},{key:\"startSimulation\",value:function startSimulation(){if(this.physicsEnabled===true&&this.options.enabled===true){this.stabilized=false;this.adaptiveTimestep=false;this.body.emitter.emit(\"_resizeNodes\");if(this.viewFunction===undefined){this.viewFunction=this.simulationStep.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction);this.body.emitter.emit(\"_startRendering\")}}else{this.body.emitter.emit(\"_redraw\")}}},{key:\"stopSimulation\",value:function stopSimulation(){var emit=arguments.length>0&&arguments[0]!==undefined?arguments[0]:true;this.stabilized=true;if(emit===true){this._emitStabilized()}if(this.viewFunction!==undefined){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.viewFunction=undefined;if(emit===true){this.body.emitter.emit(\"_stopRendering\")}}}},{key:\"simulationStep\",value:function simulationStep(){var startTime=Date.now();this.physicsTick();var physicsTime=Date.now()-startTime;if((physicsTime<.4*this.simulationInterval||this.runDoubleSpeed===true)&&this.stabilized===false){this.physicsTick();this.runDoubleSpeed=true}if(this.stabilized===true){this.stopSimulation()}}},{key:\"_emitStabilized\",value:function _emitStabilized(){var _this2=this;var amountOfIterations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.stabilizationIterations;if(this.stabilizationIterations>1||this.startedStabilization===true){setTimeout(function(){_this2.body.emitter.emit(\"stabilized\",{iterations:amountOfIterations});_this2.startedStabilization=false;_this2.stabilizationIterations=0},0)}}},{key:\"physicsStep\",value:function physicsStep(){this.gravitySolver.solve();this.nodesSolver.solve();this.edgesSolver.solve();this.moveNodes()}},{key:\"adjustTimeStep\",value:function adjustTimeStep(){var factor=1.2;if(this._evaluateStepQuality()===true){this.timestep=factor*this.timestep}else{if(this.timestep/factor<this.options.timestep){this.timestep=this.options.timestep}else{this.adaptiveCounter=-1;this.timestep=Math.max(this.options.timestep,this.timestep/factor)}}}},{key:\"physicsTick\",value:function physicsTick(){this._startStabilizing();if(this.stabilized===true)return;if(this.adaptiveTimestep===true&&this.adaptiveTimestepEnabled===true){var doAdaptive=this.adaptiveCounter%this.adaptiveInterval===0;if(doAdaptive){this.timestep=2*this.timestep;this.physicsStep();this.revert();this.timestep=.5*this.timestep;this.physicsStep();this.physicsStep();this.adjustTimeStep()}else{this.physicsStep()}this.adaptiveCounter+=1}else{this.timestep=this.options.timestep;this.physicsStep()}\nif(this.stabilized===true)this.revert();this.stabilizationIterations++}},{key:\"updatePhysicsData\",value:function updatePhysicsData(){this.physicsBody.forces={};this.physicsBody.physicsNodeIndices=[];this.physicsBody.physicsEdgeIndices=[];var nodes=this.body.nodes;var edges=this.body.edges;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(nodes[nodeId].options.physics===true){this.physicsBody.physicsNodeIndices.push(nodes[nodeId].id)}}}for(var edgeId in edges){if(edges.hasOwnProperty(edgeId)){if(edges[edgeId].options.physics===true){this.physicsBody.physicsEdgeIndices.push(edges[edgeId].id)}}}for(var i=0;i<this.physicsBody.physicsNodeIndices.length;i++){var _nodeId=this.physicsBody.physicsNodeIndices[i];this.physicsBody.forces[_nodeId]={x:0,y:0};if(this.physicsBody.velocities[_nodeId]===undefined){this.physicsBody.velocities[_nodeId]={x:0,y:0}}}for(var _nodeId2 in this.physicsBody.velocities){if(nodes[_nodeId2]===undefined){delete this.physicsBody.velocities[_nodeId2]}}}},{key:\"revert\",value:function revert(){var nodeIds=(0,_keys2[\"default\"])(this.previousStates);var nodes=this.body.nodes;var velocities=this.physicsBody.velocities;this.referenceState={};for(var i=0;i<nodeIds.length;i++){var nodeId=nodeIds[i];if(nodes[nodeId]!==undefined){if(nodes[nodeId].options.physics===true){this.referenceState[nodeId]={positions:{x:nodes[nodeId].x,y:nodes[nodeId].y}};velocities[nodeId].x=this.previousStates[nodeId].vx;velocities[nodeId].y=this.previousStates[nodeId].vy;nodes[nodeId].x=this.previousStates[nodeId].x;nodes[nodeId].y=this.previousStates[nodeId].y}}else{delete this.previousStates[nodeId]}}}},{key:\"_evaluateStepQuality\",value:function _evaluateStepQuality(){var dx=void 0,dy=void 0,dpos=void 0;var nodes=this.body.nodes;var reference=this.referenceState;var posThreshold=.3;for(var nodeId in this.referenceState){if(this.referenceState.hasOwnProperty(nodeId)&&nodes[nodeId]!==undefined){dx=nodes[nodeId].x-reference[nodeId].positions.x;dy=nodes[nodeId].y-reference[nodeId].positions.y;dpos=Math.sqrt(Math.pow(dx,2)+Math.pow(dy,2));if(dpos>posThreshold){return false}}}return true}},{key:\"moveNodes\",value:function moveNodes(){var nodeIndices=this.physicsBody.physicsNodeIndices;var maxNodeVelocity=0;var averageNodeVelocity=0;var velocityAdaptiveThreshold=5;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];var nodeVelocity=this._performStep(nodeId);maxNodeVelocity=Math.max(maxNodeVelocity,nodeVelocity);averageNodeVelocity+=nodeVelocity}this.adaptiveTimestepEnabled=averageNodeVelocity/nodeIndices.length<velocityAdaptiveThreshold;this.stabilized=maxNodeVelocity<this.options.minVelocity}},{key:\"calculateComponentVelocity\",value:function calculateComponentVelocity(v,f,m){var df=this.modelOptions.damping*v;var a=(f-df)/m;v+=a*this.timestep;var maxV=this.options.maxVelocity||1e9;if(Math.abs(v)>maxV){v=v>0?maxV:-maxV}return v}},{key:\"_performStep\",value:function _performStep(nodeId){var node=this.body.nodes[nodeId];var force=this.physicsBody.forces[nodeId];var velocity=this.physicsBody.velocities[nodeId];this.previousStates[nodeId]={x:node.x,y:node.y,vx:velocity.x,vy:velocity.y};if(node.options.fixed.x===false){velocity.x=this.calculateComponentVelocity(velocity.x,force.x,node.options.mass);node.x+=velocity.x*this.timestep}else{force.x=0;velocity.x=0}if(node.options.fixed.y===false){velocity.y=this.calculateComponentVelocity(velocity.y,force.y,node.options.mass);node.y+=velocity.y*this.timestep}else{force.y=0;velocity.y=0}var totalVelocity=Math.sqrt(Math.pow(velocity.x,2)+Math.pow(velocity.y,2));return totalVelocity}},{key:\"_freezeNodes\",value:function _freezeNodes(){var nodes=this.body.nodes;for(var id in nodes){if(nodes.hasOwnProperty(id)){if(nodes[id].x&&nodes[id].y){var fixed=nodes[id].options.fixed;this.freezeCache[id]={x:fixed.x,y:fixed.y};fixed.x=true;fixed.y=true}}}}},{key:\"_restoreFrozenNodes\",value:function _restoreFrozenNodes(){var nodes=this.body.nodes;for(var id in nodes){if(nodes.hasOwnProperty(id)){if(this.freezeCache[id]!==undefined){nodes[id].options.fixed.x=this.freezeCache[id].x;nodes[id].options.fixed.y=this.freezeCache[id].y}}}this.freezeCache={}}},{key:\"stabilize\",value:function stabilize(){var _this3=this;var iterations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.options.stabilization.iterations;if(typeof iterations!==\"number\"){iterations=this.options.stabilization.iterations;console.log(\"The stabilize method needs a numeric amount of iterations. Switching to default: \",iterations)}if(this.physicsBody.physicsNodeIndices.length===0){this.ready=true;return}this.adaptiveTimestep=true&&this.options.adaptiveTimestep;this.body.emitter.emit(\"_resizeNodes\");this.stopSimulation();this.stabilized=false;this.body.emitter.emit(\"_blockRedraw\");this.targetIterations=iterations;if(this.options.stabilization.onlyDynamicEdges===true){this._freezeNodes()}this.stabilizationIterations=0;setTimeout(function(){return _this3._stabilizationBatch()},0)}},{key:\"_startStabilizing\",value:function _startStabilizing(){if(this.startedStabilization===true)return false;this.body.emitter.emit(\"startStabilizing\");this.startedStabilization=true;return true}},{key:\"_stabilizationBatch\",value:function _stabilizationBatch(){var _this4=this;var running=function running(){return _this4.stabilized===false&&_this4.stabilizationIterations<_this4.targetIterations};var sendProgress=function sendProgress(){_this4.body.emitter.emit(\"stabilizationProgress\",{iterations:_this4.stabilizationIterations,total:_this4.targetIterations})};if(this._startStabilizing()){sendProgress()}var count=0;while(running()&&count<this.options.stabilization.updateInterval){this.physicsTick();count++}sendProgress();if(running()){setTimeout(this._stabilizationBatch.bind(this),0)}else{this._finalizeStabilization()}}},{key:\"_finalizeStabilization\",value:function _finalizeStabilization(){this.body.emitter.emit(\"_allowRedraw\");if(this.options.stabilization.fit===true){this.body.emitter.emit(\"fit\")}if(this.options.stabilization.onlyDynamicEdges===true){this._restoreFrozenNodes()}this.body.emitter.emit(\"stabilizationIterationsDone\");this.body.emitter.emit(\"_requestRedraw\");if(this.stabilized===true){this._emitStabilized()}else{this.startSimulation()}this.ready=true}},{key:\"_drawForces\",value:function _drawForces(ctx){for(var i=0;i<this.physicsBody.physicsNodeIndices.length;i++){var index=this.physicsBody.physicsNodeIndices[i];var node=this.body.nodes[index];var force=this.physicsBody.forces[index];var factor=20;var colorFactor=.03;var forceSize=Math.sqrt(Math.pow(force.x,2)+Math.pow(force.x,2));var size=Math.min(Math.max(5,forceSize),15);var arrowSize=3*size;var color=util.HSVToHex((180-Math.min(1,Math.max(0,colorFactor*forceSize))*180)/360,1,1);var point={x:node.x+factor*force.x,y:node.y+factor*force.y};ctx.lineWidth=size;ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(node.x,node.y);ctx.lineTo(point.x,point.y);ctx.stroke();var angle=Math.atan2(force.y,force.x);ctx.fillStyle=color;EndPoints.draw(ctx,{type:\"arrow\",point:point,angle:angle,length:arrowSize});ctx.fill()}}}]);return PhysicsEngine}();exports[\"default\"]=PhysicsEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var RepulsionSolver=function(){function RepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,RepulsionSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(RepulsionSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx,dy,distance,fx,fy,repulsingForce,node1,node2;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;var nodeDistance=this.options.nodeDistance;var a=-2/3/nodeDistance;var b=4/3;for(var i=0;i<nodeIndices.length-1;i++){node1=nodes[nodeIndices[i]];for(var j=i+1;j<nodeIndices.length;j++){node2=nodes[nodeIndices[j]];dx=node2.x-node1.x;dy=node2.y-node1.y;distance=Math.sqrt(dx*dx+dy*dy);if(distance===0){distance=.1*Math.random();dx=distance}if(distance<2*nodeDistance){if(distance<.5*nodeDistance){repulsingForce=1}else{repulsingForce=a*distance+b}repulsingForce=repulsingForce/distance;fx=dx*repulsingForce;fy=dy*repulsingForce;forces[node1.id].x-=fx;forces[node1.id].y-=fy;forces[node2.id].x+=fx;forces[node2.id].y+=fy}}}}}]);return RepulsionSolver}();exports[\"default\"]=RepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var HierarchicalRepulsionSolver=function(){function HierarchicalRepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,HierarchicalRepulsionSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(HierarchicalRepulsionSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx,dy,distance,fx,fy,repulsingForce,node1,node2,i,j;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;var nodeDistance=this.options.nodeDistance;for(i=0;i<nodeIndices.length-1;i++){node1=nodes[nodeIndices[i]];for(j=i+1;j<nodeIndices.length;j++){node2=nodes[nodeIndices[j]];if(node1.level===node2.level){dx=node2.x-node1.x;dy=node2.y-node1.y;distance=Math.sqrt(dx*dx+dy*dy);var steepness=.05;if(distance<nodeDistance){repulsingForce=-Math.pow(steepness*distance,2)+Math.pow(steepness*nodeDistance,2)}else{repulsingForce=0}if(distance===0){distance=.01}else{repulsingForce=repulsingForce/distance}fx=dx*repulsingForce;fy=dy*repulsingForce;forces[node1.id].x-=fx;forces[node1.id].y-=fy;forces[node2.id].x+=fx;forces[node2.id].y+=fy}}}}}]);return HierarchicalRepulsionSolver}();exports[\"default\"]=HierarchicalRepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var SpringSolver=function(){function SpringSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,SpringSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(SpringSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var edgeLength=void 0,edge=void 0;var edgeIndices=this.physicsBody.physicsEdgeIndices;var edges=this.body.edges;var node1=void 0,node2=void 0,node3=void 0;for(var i=0;i<edgeIndices.length;i++){edge=edges[edgeIndices[i]];if(edge.connected===true&&edge.toId!==edge.fromId){if(this.body.nodes[edge.toId]!==undefined&&this.body.nodes[edge.fromId]!==undefined){if(edge.edgeType.via!==undefined){edgeLength=edge.options.length===undefined?this.options.springLength:edge.options.length;node1=edge.to;node2=edge.edgeType.via;node3=edge.from;this._calculateSpringForce(node1,node2,.5*edgeLength);this._calculateSpringForce(node2,node3,.5*edgeLength)}else{edgeLength=edge.options.length===undefined?this.options.springLength*1.5:edge.options.length;this._calculateSpringForce(edge.from,edge.to,edgeLength)}}}}}},{key:\"_calculateSpringForce\",value:function _calculateSpringForce(node1,node2,edgeLength){var dx=node1.x-node2.x;var dy=node1.y-node2.y;var distance=Math.max(Math.sqrt(dx*dx+dy*dy),.01);var springForce=this.options.springConstant*(edgeLength-distance)/distance;var fx=dx*springForce;var fy=dy*springForce;if(this.physicsBody.forces[node1.id]!==undefined){this.physicsBody.forces[node1.id].x+=fx;this.physicsBody.forces[node1.id].y+=fy}if(this.physicsBody.forces[node2.id]!==undefined){this.physicsBody.forces[node2.id].x-=fx;this.physicsBody.forces[node2.id].y-=fy}}}]);return SpringSolver}();exports[\"default\"]=SpringSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var HierarchicalSpringSolver=function(){function HierarchicalSpringSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,HierarchicalSpringSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(HierarchicalSpringSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var edgeLength,edge;var dx,dy,fx,fy,springForce,distance;var edges=this.body.edges;var factor=.5;var edgeIndices=this.physicsBody.physicsEdgeIndices;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];forces[nodeId].springFx=0;forces[nodeId].springFy=0}for(var _i=0;_i<edgeIndices.length;_i++){edge=edges[edgeIndices[_i]];if(edge.connected===true){edgeLength=edge.options.length===undefined?this.options.springLength:edge.options.length;dx=edge.from.x-edge.to.x;dy=edge.from.y-edge.to.y;distance=Math.sqrt(dx*dx+dy*dy);distance=distance===0?.01:distance;springForce=this.options.springConstant*(edgeLength-distance)/distance;fx=dx*springForce;fy=dy*springForce;if(edge.to.level!=edge.from.level){if(forces[edge.toId]!==undefined){forces[edge.toId].springFx-=fx;forces[edge.toId].springFy-=fy}if(forces[edge.fromId]!==undefined){forces[edge.fromId].springFx+=fx;forces[edge.fromId].springFy+=fy}}else{if(forces[edge.toId]!==undefined){forces[edge.toId].x-=factor*fx;forces[edge.toId].y-=factor*fy}if(forces[edge.fromId]!==undefined){forces[edge.fromId].x+=factor*fx;forces[edge.fromId].y+=factor*fy}}}}springForce=1;var springFx,springFy;for(var _i2=0;_i2<nodeIndices.length;_i2++){var _nodeId=nodeIndices[_i2];springFx=Math.min(springForce,Math.max(-springForce,forces[_nodeId].springFx));springFy=Math.min(springForce,Math.max(-springForce,forces[_nodeId].springFy));forces[_nodeId].x+=springFx;forces[_nodeId].y+=springFy}var totalFx=0;var totalFy=0;for(var _i3=0;_i3<nodeIndices.length;_i3++){var _nodeId2=nodeIndices[_i3];totalFx+=forces[_nodeId2].x;totalFy+=forces[_nodeId2].y}var correctionFx=totalFx/nodeIndices.length;var correctionFy=totalFy/nodeIndices.length;for(var _i4=0;_i4<nodeIndices.length;_i4++){var _nodeId3=nodeIndices[_i4];forces[_nodeId3].x-=correctionFx;forces[_nodeId3].y-=correctionFy}}}]);return HierarchicalSpringSolver}();exports[\"default\"]=HierarchicalSpringSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BarnesHutSolver2=__webpack_require__(120);var _BarnesHutSolver3=_interopRequireDefault(_BarnesHutSolver2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ForceAtlas2BasedRepulsionSolver=function(_BarnesHutSolver){(0,_inherits3[\"default\"])(ForceAtlas2BasedRepulsionSolver,_BarnesHutSolver);function ForceAtlas2BasedRepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,ForceAtlas2BasedRepulsionSolver);return(0,_possibleConstructorReturn3[\"default\"])(this,(ForceAtlas2BasedRepulsionSolver.__proto__||(0,_getPrototypeOf2[\"default\"])(ForceAtlas2BasedRepulsionSolver)).call(this,body,physicsBody,options))}(0,_createClass3[\"default\"])(ForceAtlas2BasedRepulsionSolver,[{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,node,parentBranch){if(distance===0){distance=.1*Math.random();dx=distance}if(this.overlapAvoidanceFactor<1&&node.shape.radius){distance=Math.max(.1+this.overlapAvoidanceFactor*node.shape.radius,distance-node.shape.radius)}var degree=node.edges.length+1;var gravityForce=this.options.gravitationalConstant*parentBranch.mass*node.options.mass*degree/Math.pow(distance,2);var fx=dx*gravityForce;var fy=dy*gravityForce;this.physicsBody.forces[node.id].x+=fx;this.physicsBody.forces[node.id].y+=fy}}]);return ForceAtlas2BasedRepulsionSolver}(_BarnesHutSolver3[\"default\"]);exports[\"default\"]=ForceAtlas2BasedRepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CentralGravitySolver2=__webpack_require__(121);var _CentralGravitySolver3=_interopRequireDefault(_CentralGravitySolver2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ForceAtlas2BasedCentralGravitySolver=function(_CentralGravitySolver){(0,_inherits3[\"default\"])(ForceAtlas2BasedCentralGravitySolver,_CentralGravitySolver);function ForceAtlas2BasedCentralGravitySolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,ForceAtlas2BasedCentralGravitySolver);return(0,_possibleConstructorReturn3[\"default\"])(this,(ForceAtlas2BasedCentralGravitySolver.__proto__||(0,_getPrototypeOf2[\"default\"])(ForceAtlas2BasedCentralGravitySolver)).call(this,body,physicsBody,options))}(0,_createClass3[\"default\"])(ForceAtlas2BasedCentralGravitySolver,[{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,forces,node){if(distance>0){var degree=node.edges.length+1;var gravityForce=this.options.centralGravity*degree*node.options.mass;forces[node.id].x=dx*gravityForce;forces[node.id].y=dy*gravityForce}}}]);return ForceAtlas2BasedCentralGravitySolver}(_CentralGravitySolver3[\"default\"]);exports[\"default\"]=ForceAtlas2BasedCentralGravitySolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var Cluster=__webpack_require__(228)[\"default\"];var Edge=__webpack_require__(74)[\"default\"];var Node=__webpack_require__(47)[\"default\"];var ClusterEngine=function(){function ClusterEngine(body){var _this=this;(0,_classCallCheck3[\"default\"])(this,ClusterEngine);this.body=body;this.clusteredNodes={};this.clusteredEdges={};this.options={};this.defaultOptions={};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"_resetData\",function(){_this.clusteredNodes={};_this.clusteredEdges={}})}(0,_createClass3[\"default\"])(ClusterEngine,[{key:\"clusterByHubsize\",value:function clusterByHubsize(hubsize,options){if(hubsize===undefined){hubsize=this._getHubSize()}else if((typeof hubsize===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(hubsize))===\"object\"){options=this._checkOptions(hubsize);hubsize=this._getHubSize()}var nodesToCluster=[];for(var i=0;i<this.body.nodeIndices.length;i++){var node=this.body.nodes[this.body.nodeIndices[i]];if(node.edges.length>=hubsize){nodesToCluster.push(node.id)}}for(var _i=0;_i<nodesToCluster.length;_i++){this.clusterByConnection(nodesToCluster[_i],options,true)}this.body.emitter.emit(\"_dataChanged\")}},{key:\"cluster\",value:function cluster(){var _this2=this;var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(options.joinCondition===undefined){throw new Error(\"Cannot call clusterByNodeData without a joinCondition function in the options.\")}options=this._checkOptions(options);var childNodesObj={};var childEdgesObj={};util.forEach(this.body.nodes,function(node,nodeId){var clonedOptions=NetworkUtil.cloneOptions(node);if(options.joinCondition(clonedOptions)===true){childNodesObj[nodeId]=node;util.forEach(node.edges,function(edge){if(_this2.clusteredEdges[edge.id]===undefined){childEdgesObj[edge.id]=edge}})}});this._cluster(childNodesObj,childEdgesObj,options,refreshData)}},{key:\"clusterByEdgeCount\",value:function clusterByEdgeCount(edgeCount,options){var _this3=this;var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;options=this._checkOptions(options);var clusters=[];var usedNodes={};var edge=void 0,edges=void 0,relevantEdgeCount=void 0;var _loop=function _loop(i){var childNodesObj={};var childEdgesObj={};var nodeId=_this3.body.nodeIndices[i];var node=_this3.body.nodes[nodeId];if(usedNodes[nodeId]===undefined){relevantEdgeCount=0;edges=[];for(var j=0;j<node.edges.length;j++){edge=node.edges[j];if(_this3.clusteredEdges[edge.id]===undefined){if(edge.toId!==edge.fromId){relevantEdgeCount++}edges.push(edge)}}if(relevantEdgeCount===edgeCount){checkJoinCondition=function checkJoinCondition(node){if(options.joinCondition===undefined||options.joinCondition===null){return true}var clonedOptions=NetworkUtil.cloneOptions(node);return options.joinCondition(clonedOptions)};var gatheringSuccessful=true;for(var _j=0;_j<edges.length;_j++){edge=edges[_j];var childNodeId=_this3._getConnectedId(edge,nodeId);if(checkJoinCondition(node)){childEdgesObj[edge.id]=edge;childNodesObj[nodeId]=node;childNodesObj[childNodeId]=_this3.body.nodes[childNodeId];usedNodes[nodeId]=true}else{gatheringSuccessful=false;break}}if((0,_keys2[\"default\"])(childNodesObj).length>0&&(0,_keys2[\"default\"])(childEdgesObj).length>0&&gatheringSuccessful===true){findClusterData=function findClusterData(){for(var n=0;n<clusters.length;++n){for(var m in childNodesObj){if(clusters[n].nodes[m]!==undefined){return clusters[n]}}}return undefined};foundCluster=findClusterData();if(foundCluster!==undefined){for(var m in childNodesObj){if(foundCluster.nodes[m]===undefined){foundCluster.nodes[m]=childNodesObj[m]}}for(var _m in childEdgesObj){if(foundCluster.edges[_m]===undefined){foundCluster.edges[_m]=childEdgesObj[_m]}}}else{clusters.push({nodes:childNodesObj,edges:childEdgesObj})}}}}};for(var i=0;i<this.body.nodeIndices.length;i++){var checkJoinCondition;var findClusterData;var foundCluster;_loop(i)}for(var i=0;i<clusters.length;i++){this._cluster(clusters[i].nodes,clusters[i].edges,options,false)}if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"clusterOutliers\",value:function clusterOutliers(options){var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;this.clusterByEdgeCount(1,options,refreshData)}},{key:\"clusterBridges\",value:function clusterBridges(options){var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;this.clusterByEdgeCount(2,options,refreshData)}},{key:\"clusterByConnection\",value:function clusterByConnection(nodeId,options){var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;if(nodeId===undefined){throw new Error(\"No nodeId supplied to clusterByConnection!\")}if(this.body.nodes[nodeId]===undefined){throw new Error(\"The nodeId given to clusterByConnection does not exist!\")}var node=this.body.nodes[nodeId];options=this._checkOptions(options,node);if(options.clusterNodeProperties.x===undefined){options.clusterNodeProperties.x=node.x}if(options.clusterNodeProperties.y===undefined){options.clusterNodeProperties.y=node.y}if(options.clusterNodeProperties.fixed===undefined){options.clusterNodeProperties.fixed={};options.clusterNodeProperties.fixed.x=node.options.fixed.x;options.clusterNodeProperties.fixed.y=node.options.fixed.y}var childNodesObj={};var childEdgesObj={};var parentNodeId=node.id;var parentClonedOptions=NetworkUtil.cloneOptions(node);childNodesObj[parentNodeId]=node;for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];if(this.clusteredEdges[edge.id]===undefined){var childNodeId=this._getConnectedId(edge,parentNodeId);if(this.clusteredNodes[childNodeId]===undefined){if(childNodeId!==parentNodeId){if(options.joinCondition===undefined){childEdgesObj[edge.id]=edge;childNodesObj[childNodeId]=this.body.nodes[childNodeId]}else{var childClonedOptions=NetworkUtil.cloneOptions(this.body.nodes[childNodeId]);if(options.joinCondition(parentClonedOptions,childClonedOptions)===true){childEdgesObj[edge.id]=edge;childNodesObj[childNodeId]=this.body.nodes[childNodeId]}}}else{childEdgesObj[edge.id]=edge}}}}var childNodeIDs=(0,_keys2[\"default\"])(childNodesObj).map(function(childNode){return childNodesObj[childNode].id});for(childNode in childNodesObj){if(!childNodesObj.hasOwnProperty(childNode))continue;var childNode=childNodesObj[childNode];for(var y=0;y<childNode.edges.length;y++){var childEdge=childNode.edges[y];if(childNodeIDs.indexOf(this._getConnectedId(childEdge,childNode.id))>-1){childEdgesObj[childEdge.id]=childEdge}}}this._cluster(childNodesObj,childEdgesObj,options,refreshData)}},{key:\"_createClusterEdges\",value:function _createClusterEdges(childNodesObj,childEdgesObj,clusterNodeProperties,clusterEdgeProperties){var edge=void 0,childNodeId=void 0,childNode=void 0,toId=void 0,fromId=void 0,otherNodeId=void 0;var childKeys=(0,_keys2[\"default\"])(childNodesObj);var createEdges=[];for(var i=0;i<childKeys.length;i++){childNodeId=childKeys[i];childNode=childNodesObj[childNodeId];for(var j=0;j<childNode.edges.length;j++){edge=childNode.edges[j];if(this.clusteredEdges[edge.id]===undefined){if(edge.toId==edge.fromId){childEdgesObj[edge.id]=edge}else{if(edge.toId==childNodeId){toId=clusterNodeProperties.id;fromId=edge.fromId;otherNodeId=fromId}else{toId=edge.toId;fromId=clusterNodeProperties.id;otherNodeId=toId}}if(childNodesObj[otherNodeId]===undefined){createEdges.push({edge:edge,fromId:fromId,toId:toId})}}}}var newEdges=[];var getNewEdge=function getNewEdge(createdEdge){for(var _j2=0;_j2<newEdges.length;_j2++){var newEdge=newEdges[_j2];var matchToDirection=createdEdge.fromId===newEdge.fromId&&createdEdge.toId===newEdge.toId;var matchFromDirection=createdEdge.fromId===newEdge.toId&&createdEdge.toId===newEdge.fromId;if(matchToDirection||matchFromDirection){return newEdge}}return null};for(var _j3=0;_j3<createEdges.length;_j3++){var createdEdge=createEdges[_j3];var _edge=createdEdge.edge;var newEdge=getNewEdge(createdEdge);if(newEdge===null){newEdge=this._createClusteredEdge(createdEdge.fromId,createdEdge.toId,_edge,clusterEdgeProperties);newEdges.push(newEdge)}else{newEdge.clusteringEdgeReplacingIds.push(_edge.id)}this.body.edges[_edge.id].edgeReplacedById=newEdge.id;this._backupEdgeOptions(_edge);_edge.setOptions({physics:false})}}},{key:\"_checkOptions\",value:function _checkOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(options.clusterEdgeProperties===undefined){options.clusterEdgeProperties={}}if(options.clusterNodeProperties===undefined){options.clusterNodeProperties={}}return options}},{key:\"_cluster\",value:function _cluster(childNodesObj,childEdgesObj,options){var refreshData=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var tmpNodesToRemove=[];for(var _nodeId in childNodesObj){if(childNodesObj.hasOwnProperty(_nodeId)){if(this.clusteredNodes[_nodeId]!==undefined){tmpNodesToRemove.push(_nodeId)}}}for(var n=0;n<tmpNodesToRemove.length;++n){delete childNodesObj[tmpNodesToRemove[n]]}if((0,_keys2[\"default\"])(childNodesObj).length==0){return}if((0,_keys2[\"default\"])(childNodesObj).length==1&&options.clusterNodeProperties.allowSingleNodeCluster!=true){return}var clusterNodeProperties=util.deepExtend({},options.clusterNodeProperties);if(options.processProperties!==undefined){var childNodesOptions=[];for(var _nodeId2 in childNodesObj){if(childNodesObj.hasOwnProperty(_nodeId2)){var clonedOptions=NetworkUtil.cloneOptions(childNodesObj[_nodeId2]);childNodesOptions.push(clonedOptions)}}var childEdgesOptions=[];for(var edgeId in childEdgesObj){if(childEdgesObj.hasOwnProperty(edgeId)){if(edgeId.substr(0,12)!==\"clusterEdge:\"){var _clonedOptions=NetworkUtil.cloneOptions(childEdgesObj[edgeId],\"edge\");childEdgesOptions.push(_clonedOptions)}}}clusterNodeProperties=options.processProperties(clusterNodeProperties,childNodesOptions,childEdgesOptions);if(!clusterNodeProperties){throw new Error(\"The processProperties function does not return properties!\")}}if(clusterNodeProperties.id===undefined){clusterNodeProperties.id=\"cluster:\"+util.randomUUID()}var clusterId=clusterNodeProperties.id;if(clusterNodeProperties.label===undefined){clusterNodeProperties.label=\"cluster\"}var pos=undefined;if(clusterNodeProperties.x===undefined){pos=this._getClusterPosition(childNodesObj);clusterNodeProperties.x=pos.x}if(clusterNodeProperties.y===undefined){if(pos===undefined){pos=this._getClusterPosition(childNodesObj)}clusterNodeProperties.y=pos.y}clusterNodeProperties.id=clusterId;var clusterNode=this.body.functions.createNode(clusterNodeProperties,Cluster);clusterNode.containedNodes=childNodesObj;clusterNode.containedEdges=childEdgesObj;clusterNode.clusterEdgeProperties=options.clusterEdgeProperties;this.body.nodes[clusterNodeProperties.id]=clusterNode;this._clusterEdges(childNodesObj,childEdgesObj,clusterNodeProperties,options.clusterEdgeProperties);clusterNodeProperties.id=undefined;if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"_backupEdgeOptions\",value:function _backupEdgeOptions(edge){if(this.clusteredEdges[edge.id]===undefined){this.clusteredEdges[edge.id]={physics:edge.options.physics}}}},{key:\"_restoreEdge\",value:function _restoreEdge(edge){var originalOptions=this.clusteredEdges[edge.id];if(originalOptions!==undefined){edge.setOptions({physics:originalOptions.physics});delete this.clusteredEdges[edge.id]}}},{key:\"isCluster\",value:function isCluster(nodeId){if(this.body.nodes[nodeId]!==undefined){return this.body.nodes[nodeId].isCluster===true}else{console.log(\"Node does not exist.\");return false}}},{key:\"_getClusterPosition\",value:function _getClusterPosition(childNodesObj){var childKeys=(0,_keys2[\"default\"])(childNodesObj);var minX=childNodesObj[childKeys[0]].x;var maxX=childNodesObj[childKeys[0]].x;var minY=childNodesObj[childKeys[0]].y;var maxY=childNodesObj[childKeys[0]].y;var node=void 0;for(var i=1;i<childKeys.length;i++){node=childNodesObj[childKeys[i]];minX=node.x<minX?node.x:minX;maxX=node.x>maxX?node.x:maxX\n;minY=node.y<minY?node.y:minY;maxY=node.y>maxY?node.y:maxY}return{x:.5*(minX+maxX),y:.5*(minY+maxY)}}},{key:\"openCluster\",value:function openCluster(clusterNodeId,options){var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;if(clusterNodeId===undefined){throw new Error(\"No clusterNodeId supplied to openCluster.\")}var clusterNode=this.body.nodes[clusterNodeId];if(clusterNode===undefined){throw new Error(\"The clusterNodeId supplied to openCluster does not exist.\")}if(clusterNode.isCluster!==true||clusterNode.containedNodes===undefined||clusterNode.containedEdges===undefined){throw new Error(\"The node:\"+clusterNodeId+\" is not a valid cluster.\")}var stack=this.findNode(clusterNodeId);var parentIndex=stack.indexOf(clusterNodeId)-1;if(parentIndex>=0){var parentClusterNodeId=stack[parentIndex];var parentClusterNode=this.body.nodes[parentClusterNodeId];parentClusterNode._openChildCluster(clusterNodeId);delete this.body.nodes[clusterNodeId];if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}return}var containedNodes=clusterNode.containedNodes;var containedEdges=clusterNode.containedEdges;if(options!==undefined&&options.releaseFunction!==undefined&&typeof options.releaseFunction===\"function\"){var positions={};var clusterPosition={x:clusterNode.x,y:clusterNode.y};for(var _nodeId3 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId3)){var containedNode=this.body.nodes[_nodeId3];positions[_nodeId3]={x:containedNode.x,y:containedNode.y}}}var newPositions=options.releaseFunction(clusterPosition,positions);for(var _nodeId4 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId4)){var _containedNode=this.body.nodes[_nodeId4];if(newPositions[_nodeId4]!==undefined){_containedNode.x=newPositions[_nodeId4].x===undefined?clusterNode.x:newPositions[_nodeId4].x;_containedNode.y=newPositions[_nodeId4].y===undefined?clusterNode.y:newPositions[_nodeId4].y}}}}else{util.forEach(containedNodes,function(containedNode){if(containedNode.options.fixed.x===false){containedNode.x=clusterNode.x}if(containedNode.options.fixed.y===false){containedNode.y=clusterNode.y}})}for(var _nodeId5 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId5)){var _containedNode2=this.body.nodes[_nodeId5];_containedNode2.vx=clusterNode.vx;_containedNode2.vy=clusterNode.vy;_containedNode2.setOptions({physics:true});delete this.clusteredNodes[_nodeId5]}}var edgesToBeDeleted=[];for(var i=0;i<clusterNode.edges.length;i++){edgesToBeDeleted.push(clusterNode.edges[i])}for(var _i2=0;_i2<edgesToBeDeleted.length;_i2++){var edge=edgesToBeDeleted[_i2];var otherNodeId=this._getConnectedId(edge,clusterNodeId);var otherNode=this.clusteredNodes[otherNodeId];for(var j=0;j<edge.clusteringEdgeReplacingIds.length;j++){var transferId=edge.clusteringEdgeReplacingIds[j];var transferEdge=this.body.edges[transferId];if(transferEdge===undefined)continue;if(otherNode!==undefined){var otherCluster=this.body.nodes[otherNode.clusterId];otherCluster.containedEdges[transferEdge.id]=transferEdge;delete containedEdges[transferEdge.id];var fromId=transferEdge.fromId;var toId=transferEdge.toId;if(transferEdge.toId==otherNodeId){toId=otherNode.clusterId}else{fromId=otherNode.clusterId}this._createClusteredEdge(fromId,toId,transferEdge,otherCluster.clusterEdgeProperties,{hidden:false,physics:true})}else{this._restoreEdge(transferEdge)}}edge.remove()}for(var edgeId in containedEdges){if(containedEdges.hasOwnProperty(edgeId)){this._restoreEdge(containedEdges[edgeId])}}delete this.body.nodes[clusterNodeId];if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"getNodesInCluster\",value:function getNodesInCluster(clusterId){var nodesArray=[];if(this.isCluster(clusterId)===true){var containedNodes=this.body.nodes[clusterId].containedNodes;for(var _nodeId6 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId6)){nodesArray.push(this.body.nodes[_nodeId6].id)}}}return nodesArray}},{key:\"findNode\",value:function findNode(nodeId){var stack=[];var max=100;var counter=0;var node=void 0;while(this.clusteredNodes[nodeId]!==undefined&&counter<max){node=this.body.nodes[nodeId];if(node===undefined)return[];stack.push(node.id);nodeId=this.clusteredNodes[nodeId].clusterId;counter++}node=this.body.nodes[nodeId];if(node===undefined)return[];stack.push(node.id);stack.reverse();return stack}},{key:\"updateClusteredNode\",value:function updateClusteredNode(clusteredNodeId,newOptions){if(clusteredNodeId===undefined){throw new Error(\"No clusteredNodeId supplied to updateClusteredNode.\")}if(newOptions===undefined){throw new Error(\"No newOptions supplied to updateClusteredNode.\")}if(this.body.nodes[clusteredNodeId]===undefined){throw new Error(\"The clusteredNodeId supplied to updateClusteredNode does not exist.\")}this.body.nodes[clusteredNodeId].setOptions(newOptions);this.body.emitter.emit(\"_dataChanged\")}},{key:\"updateEdge\",value:function updateEdge(startEdgeId,newOptions){if(startEdgeId===undefined){throw new Error(\"No startEdgeId supplied to updateEdge.\")}if(newOptions===undefined){throw new Error(\"No newOptions supplied to updateEdge.\")}if(this.body.edges[startEdgeId]===undefined){throw new Error(\"The startEdgeId supplied to updateEdge does not exist.\")}var allEdgeIds=this.getClusteredEdges(startEdgeId);for(var i=0;i<allEdgeIds.length;i++){var edge=this.body.edges[allEdgeIds[i]];edge.setOptions(newOptions)}this.body.emitter.emit(\"_dataChanged\")}},{key:\"getClusteredEdges\",value:function getClusteredEdges(edgeId){var stack=[];var max=100;var counter=0;while(edgeId!==undefined&&this.body.edges[edgeId]!==undefined&&counter<max){stack.push(this.body.edges[edgeId].id);edgeId=this.body.edges[edgeId].edgeReplacedById;counter++}stack.reverse();return stack}},{key:\"getBaseEdge\",value:function getBaseEdge(clusteredEdgeId){return this.getBaseEdges(clusteredEdgeId)[0]}},{key:\"getBaseEdges\",value:function getBaseEdges(clusteredEdgeId){var IdsToHandle=[clusteredEdgeId];var doneIds=[];var foundIds=[];var max=100;var counter=0;while(IdsToHandle.length>0&&counter<max){var nextId=IdsToHandle.pop();if(nextId===undefined)continue;var nextEdge=this.body.edges[nextId];if(nextEdge===undefined)continue;counter++;var replacingIds=nextEdge.clusteringEdgeReplacingIds;if(replacingIds===undefined){foundIds.push(nextId)}else{for(var i=0;i<replacingIds.length;++i){var replacingId=replacingIds[i];if(IdsToHandle.indexOf(replacingIds)!==-1||doneIds.indexOf(replacingIds)!==-1){continue}IdsToHandle.push(replacingId)}}doneIds.push(nextId)}return foundIds}},{key:\"_getConnectedId\",value:function _getConnectedId(edge,nodeId){if(edge.toId!=nodeId){return edge.toId}else if(edge.fromId!=nodeId){return edge.fromId}else{return edge.fromId}}},{key:\"_getHubSize\",value:function _getHubSize(){var average=0;var averageSquared=0;var hubCounter=0;var largestHub=0;for(var i=0;i<this.body.nodeIndices.length;i++){var _node=this.body.nodes[this.body.nodeIndices[i]];if(_node.edges.length>largestHub){largestHub=_node.edges.length}average+=_node.edges.length;averageSquared+=Math.pow(_node.edges.length,2);hubCounter+=1}average=average/hubCounter;averageSquared=averageSquared/hubCounter;var variance=averageSquared-Math.pow(average,2);var standardDeviation=Math.sqrt(variance);var hubThreshold=Math.floor(average+2*standardDeviation);if(hubThreshold>largestHub){hubThreshold=largestHub}return hubThreshold}},{key:\"_createClusteredEdge\",value:function _createClusteredEdge(fromId,toId,baseEdge,clusterEdgeProperties,extraOptions){var clonedOptions=NetworkUtil.cloneOptions(baseEdge,\"edge\");util.deepExtend(clonedOptions,clusterEdgeProperties);clonedOptions.from=fromId;clonedOptions.to=toId;clonedOptions.id=\"clusterEdge:\"+util.randomUUID();if(extraOptions!==undefined){util.deepExtend(clonedOptions,extraOptions)}var newEdge=this.body.functions.createEdge(clonedOptions);newEdge.clusteringEdgeReplacingIds=[baseEdge.id];newEdge.connect();this.body.edges[newEdge.id]=newEdge;return newEdge}},{key:\"_clusterEdges\",value:function _clusterEdges(childNodes,childEdges,clusterNode,clusterEdgeProperties){if(childEdges instanceof Edge){var edge=childEdges;var obj={};obj[edge.id]=edge;childEdges=obj}if(childNodes instanceof Node){var _node2=childNodes;var _obj={};_obj[_node2.id]=_node2;childNodes=_obj}if(clusterNode===undefined||clusterNode===null){throw new Error(\"_clusterEdges: parameter clusterNode required\")}if(clusterEdgeProperties===undefined){clusterEdgeProperties=clusterNode.clusterEdgeProperties}this._createClusterEdges(childNodes,childEdges,clusterNode,clusterEdgeProperties);for(var edgeId in childEdges){if(childEdges.hasOwnProperty(edgeId)){if(this.body.edges[edgeId]!==undefined){var _edge2=this.body.edges[edgeId];this._backupEdgeOptions(_edge2);_edge2.setOptions({physics:false})}}}for(var _nodeId7 in childNodes){if(childNodes.hasOwnProperty(_nodeId7)){this.clusteredNodes[_nodeId7]={clusterId:clusterNode.id,node:this.body.nodes[_nodeId7]};this.body.nodes[_nodeId7].setOptions({physics:false})}}}},{key:\"_getClusterNodeForNode\",value:function _getClusterNodeForNode(nodeId){if(nodeId===undefined)return undefined;var clusteredNode=this.clusteredNodes[nodeId];if(clusteredNode===undefined)return undefined;var clusterId=clusteredNode.clusterId;if(clusterId===undefined)return undefined;return this.body.nodes[clusterId]}},{key:\"_filter\",value:function _filter(arr,callback){var ret=[];util.forEach(arr,function(item){if(callback(item)){ret.push(item)}});return ret}},{key:\"_updateState\",value:function _updateState(){var _this4=this;var nodeId=void 0;var deletedNodeIds=[];var deletedEdgeIds=[];var eachClusterNode=function eachClusterNode(callback){util.forEach(_this4.body.nodes,function(node){if(node.isCluster===true){callback(node)}})};for(nodeId in this.clusteredNodes){if(!this.clusteredNodes.hasOwnProperty(nodeId))continue;var _node3=this.body.nodes[nodeId];if(_node3===undefined){deletedNodeIds.push(nodeId)}}eachClusterNode(function(clusterNode){for(var n=0;n<deletedNodeIds.length;n++){delete clusterNode.containedNodes[deletedNodeIds[n]]}});for(var n=0;n<deletedNodeIds.length;n++){delete this.clusteredNodes[deletedNodeIds[n]]}util.forEach(this.clusteredEdges,function(edgeId){var edge=_this4.body.edges[edgeId];if(edge===undefined||!edge.endPointsValid()){deletedEdgeIds.push(edgeId)}});eachClusterNode(function(clusterNode){util.forEach(clusterNode.containedEdges,function(edge,edgeId){if(!edge.endPointsValid()&&deletedEdgeIds.indexOf(edgeId)===-1){deletedEdgeIds.push(edgeId)}})});util.forEach(this.body.edges,function(edge,edgeId){var isValid=true;var replacedIds=edge.clusteringEdgeReplacingIds;if(replacedIds!==undefined){var numValid=0;util.forEach(replacedIds,function(containedEdgeId){var containedEdge=_this4.body.edges[containedEdgeId];if(containedEdge!==undefined&&containedEdge.endPointsValid()){numValid+=1}});isValid=numValid>0}if(!edge.endPointsValid()||!isValid){deletedEdgeIds.push(edgeId)}});eachClusterNode(function(clusterNode){util.forEach(deletedEdgeIds,function(deletedEdgeId){delete clusterNode.containedEdges[deletedEdgeId];util.forEach(clusterNode.edges,function(edge,m){if(edge.id===deletedEdgeId){clusterNode.edges[m]=null;return}edge.clusteringEdgeReplacingIds=_this4._filter(edge.clusteringEdgeReplacingIds,function(id){return deletedEdgeIds.indexOf(id)===-1})});clusterNode.edges=_this4._filter(clusterNode.edges,function(item){return item!==null})})});util.forEach(deletedEdgeIds,function(edgeId){delete _this4.clusteredEdges[edgeId]});util.forEach(deletedEdgeIds,function(edgeId){delete _this4.body.edges[edgeId]});var ids=(0,_keys2[\"default\"])(this.body.edges);util.forEach(ids,function(edgeId){var edge=_this4.body.edges[edgeId];var shouldBeClustered=_this4._isClusteredNode(edge.fromId)||_this4._isClusteredNode(edge.toId);if(shouldBeClustered===_this4._isClusteredEdge(edge.id)){return}if(shouldBeClustered){var clusterFrom=_this4._getClusterNodeForNode(edge.fromId);if(clusterFrom!==undefined){_this4._clusterEdges(_this4.body.nodes[edge.fromId],edge,clusterFrom)}var clusterTo=_this4._getClusterNodeForNode(edge.toId);if(clusterTo!==undefined){_this4._clusterEdges(_this4.body.nodes[edge.toId],edge,clusterTo)}}else{throw new Error(\"remove edge from clustering not implemented!\")}});var changed=false;var continueLoop=true;var _loop2=function _loop2(){var clustersToOpen=[];eachClusterNode(function(clusterNode){var numNodes=(0,_keys2[\"default\"])(clusterNode.containedNodes).length;var allowSingle=clusterNode.options.allowSingleNodeCluster===true;if(allowSingle&&numNodes<1||!allowSingle&&numNodes<2){clustersToOpen.push(clusterNode.id)}});for(var _n=0;_n<clustersToOpen.length;++_n){_this4.openCluster(clustersToOpen[_n],{},false)}continueLoop=clustersToOpen.length>0;changed=changed||continueLoop};while(continueLoop){_loop2()}if(changed){this._updateState()}}},{key:\"_isClusteredNode\",value:function _isClusteredNode(nodeId){return this.clusteredNodes[nodeId]!==undefined}},{key:\"_isClusteredEdge\",value:function _isClusteredEdge(edgeId){return this.clusteredEdges[edgeId]!==undefined}}]);return ClusterEngine}();exports[\"default\"]=ClusterEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Node=__webpack_require__(47)[\"default\"];var Cluster=function(_Node){(0,_inherits3[\"default\"])(Cluster,_Node);function Cluster(options,body,imagelist,grouplist,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Cluster);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Cluster.__proto__||(0,_getPrototypeOf2[\"default\"])(Cluster)).call(this,options,body,imagelist,grouplist,globalOptions,defaultOptions));_this.isCluster=true;_this.containedNodes={};_this.containedEdges={};return _this}(0,_createClass3[\"default\"])(Cluster,[{key:\"_openChildCluster\",value:function _openChildCluster(childClusterId){var _this2=this;var childCluster=this.body.nodes[childClusterId];if(this.containedNodes[childClusterId]===undefined){throw new Error(\"node with id: \"+childClusterId+\" not in current cluster\")}if(!childCluster.isCluster){throw new Error(\"node with id: \"+childClusterId+\" is not a cluster\")}delete this.containedNodes[childClusterId];util.forEach(childCluster.edges,function(edge){delete _this2.containedEdges[edge.id]});util.forEach(childCluster.containedNodes,function(node,nodeId){_this2.containedNodes[nodeId]=node});childCluster.containedNodes={};util.forEach(childCluster.containedEdges,function(edge,edgeId){_this2.containedEdges[edgeId]=edge});childCluster.containedEdges={};util.forEach(childCluster.edges,function(clusterEdge){util.forEach(_this2.edges,function(parentClusterEdge){var index=parentClusterEdge.clusteringEdgeReplacingIds.indexOf(clusterEdge.id);if(index===-1)return;util.forEach(clusterEdge.clusteringEdgeReplacingIds,function(srcId){parentClusterEdge.clusteringEdgeReplacingIds.push(srcId);_this2.body.edges[srcId].edgeReplacedById=parentClusterEdge.id});parentClusterEdge.clusteringEdgeReplacingIds.splice(index,1)})});childCluster.edges=[]}}]);return Cluster}(Node);exports[\"default\"]=Cluster},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _initRequestAnimationFrame(){var func;if(window!==undefined){func=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame}if(func===undefined){window.requestAnimationFrame=function(callback){callback()}}else{window.requestAnimationFrame=func}}var util=__webpack_require__(2);var CanvasRenderer=function(){function CanvasRenderer(body,canvas){(0,_classCallCheck3[\"default\"])(this,CanvasRenderer);_initRequestAnimationFrame();this.body=body;this.canvas=canvas;this.redrawRequested=false;this.renderTimer=undefined;this.requiresTimeout=true;this.renderingActive=false;this.renderRequests=0;this.allowRedraw=true;this.dragging=false;this.options={};this.defaultOptions={hideEdgesOnDrag:false,hideNodesOnDrag:false};util.extend(this.options,this.defaultOptions);this._determineBrowserMethod();this.bindEventListeners()}(0,_createClass3[\"default\"])(CanvasRenderer,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"dragStart\",function(){_this.dragging=true});this.body.emitter.on(\"dragEnd\",function(){_this.dragging=false});this.body.emitter.on(\"_resizeNodes\",function(){_this._resizeNodes()});this.body.emitter.on(\"_redraw\",function(){if(_this.renderingActive===false){_this._redraw()}});this.body.emitter.on(\"_blockRedraw\",function(){_this.allowRedraw=false});this.body.emitter.on(\"_allowRedraw\",function(){_this.allowRedraw=true;_this.redrawRequested=false});this.body.emitter.on(\"_requestRedraw\",this._requestRedraw.bind(this));this.body.emitter.on(\"_startRendering\",function(){_this.renderRequests+=1;_this.renderingActive=true;_this._startRendering()});this.body.emitter.on(\"_stopRendering\",function(){_this.renderRequests-=1;_this.renderingActive=_this.renderRequests>0;_this.renderTimer=undefined});this.body.emitter.on(\"destroy\",function(){_this.renderRequests=0;_this.allowRedraw=false;_this.renderingActive=false;if(_this.requiresTimeout===true){clearTimeout(_this.renderTimer)}else{window.cancelAnimationFrame(_this.renderTimer)}_this.body.emitter.off()})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"hideEdgesOnDrag\",\"hideNodesOnDrag\"];util.selectiveDeepExtend(fields,this.options,options)}}},{key:\"_requestNextFrame\",value:function _requestNextFrame(callback,delay){if(typeof window===\"undefined\")return;var timer=void 0;var myWindow=window;if(this.requiresTimeout===true){timer=myWindow.setTimeout(callback,delay)}else{if(myWindow.requestAnimationFrame){timer=myWindow.requestAnimationFrame(callback)}}return timer}},{key:\"_startRendering\",value:function _startRendering(){if(this.renderingActive===true){if(this.renderTimer===undefined){this.renderTimer=this._requestNextFrame(this._renderStep.bind(this),this.simulationInterval)}}}},{key:\"_renderStep\",value:function _renderStep(){if(this.renderingActive===true){this.renderTimer=undefined;if(this.requiresTimeout===true){this._startRendering()}this._redraw();if(this.requiresTimeout===false){this._startRendering()}}}},{key:\"redraw\",value:function redraw(){this.body.emitter.emit(\"setSize\");this._redraw()}},{key:\"_requestRedraw\",value:function _requestRedraw(){var _this2=this;if(this.redrawRequested!==true&&this.renderingActive===false&&this.allowRedraw===true){this.redrawRequested=true;this._requestNextFrame(function(){_this2._redraw(false)},0)}}},{key:\"_redraw\",value:function _redraw(){var hidden=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.allowRedraw===true){this.body.emitter.emit(\"initRedraw\");this.redrawRequested=false;if(this.canvas.frame.canvas.width===0||this.canvas.frame.canvas.height===0){this.canvas.setSize()}this.canvas.setTransform();var ctx=this.canvas.getContext();var w=this.canvas.frame.canvas.clientWidth;var h=this.canvas.frame.canvas.clientHeight;ctx.clearRect(0,0,w,h);if(this.canvas.frame.clientWidth===0){return}ctx.save();ctx.translate(this.body.view.translation.x,this.body.view.translation.y);ctx.scale(this.body.view.scale,this.body.view.scale);ctx.beginPath();this.body.emitter.emit(\"beforeDrawing\",ctx);ctx.closePath();if(hidden===false){if(this.dragging===false||this.dragging===true&&this.options.hideEdgesOnDrag===false){this._drawEdges(ctx)}}if(this.dragging===false||this.dragging===true&&this.options.hideNodesOnDrag===false){this._drawNodes(ctx,hidden)}ctx.beginPath();this.body.emitter.emit(\"afterDrawing\",ctx);ctx.closePath();ctx.restore();if(hidden===true){ctx.clearRect(0,0,w,h)}}}},{key:\"_resizeNodes\",value:function _resizeNodes(){this.canvas.setTransform();var ctx=this.canvas.getContext();ctx.save();ctx.translate(this.body.view.translation.x,this.body.view.translation.y);ctx.scale(this.body.view.scale,this.body.view.scale);var nodes=this.body.nodes;var node=void 0;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){node=nodes[nodeId];node.resize(ctx);node.updateBoundingBox(ctx,node.selected)}}ctx.restore()}},{key:\"_drawNodes\",value:function _drawNodes(ctx){var alwaysShow=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var nodes=this.body.nodes;var nodeIndices=this.body.nodeIndices;var node=void 0;var selected=[];var margin=20;var topLeft=this.canvas.DOMtoCanvas({x:-margin,y:-margin});var bottomRight=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+margin,y:this.canvas.frame.canvas.clientHeight+margin});var viewableArea={top:topLeft.y,left:topLeft.x,bottom:bottomRight.y,right:bottomRight.x};for(var i=0;i<nodeIndices.length;i++){node=nodes[nodeIndices[i]];if(node.isSelected()){selected.push(nodeIndices[i])}else{if(alwaysShow===true){node.draw(ctx)}else if(node.isBoundingBoxOverlappingWith(viewableArea)===true){node.draw(ctx)}else{node.updateBoundingBox(ctx,node.selected)}}}for(var _i=0;_i<selected.length;_i++){node=nodes[selected[_i]];node.draw(ctx)}}},{key:\"_drawEdges\",value:function _drawEdges(ctx){var edges=this.body.edges;var edgeIndices=this.body.edgeIndices;var edge=void 0;for(var i=0;i<edgeIndices.length;i++){edge=edges[edgeIndices[i]];if(edge.connected===true){edge.draw(ctx)}}}},{key:\"_determineBrowserMethod\",value:function _determineBrowserMethod(){if(typeof window!==\"undefined\"){var browserType=navigator.userAgent.toLowerCase();this.requiresTimeout=false;if(browserType.indexOf(\"msie 9.0\")!=-1){this.requiresTimeout=true}else if(browserType.indexOf(\"safari\")!=-1){if(browserType.indexOf(\"chrome\")<=-1){this.requiresTimeout=true}}}else{this.requiresTimeout=true}}}]);return CanvasRenderer}();exports[\"default\"]=CanvasRenderer},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var Canvas=function(){function Canvas(body){(0,_classCallCheck3[\"default\"])(this,Canvas);this.body=body;this.pixelRatio=1;this.resizeTimer=undefined;this.resizeFunction=this._onResize.bind(this);this.cameraState={};this.initialized=false;this.canvasViewCenter={};this.options={};this.defaultOptions={autoResize:true,height:\"100%\",width:\"100%\"};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(Canvas,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.once(\"resize\",function(obj){if(obj.width!==0){_this.body.view.translation.x=obj.width*.5}if(obj.height!==0){_this.body.view.translation.y=obj.height*.5}});this.body.emitter.on(\"setSize\",this.setSize.bind(this));this.body.emitter.on(\"destroy\",function(){_this.hammerFrame.destroy();_this.hammer.destroy();_this._cleanUp()})}},{key:\"setOptions\",value:function setOptions(options){var _this2=this;if(options!==undefined){var fields=[\"width\",\"height\",\"autoResize\"];util.selectiveDeepExtend(fields,this.options,options)}if(this.options.autoResize===true){this._cleanUp();this.resizeTimer=setInterval(function(){var changed=_this2.setSize();if(changed===true){_this2.body.emitter.emit(\"_requestRedraw\")}},1e3);this.resizeFunction=this._onResize.bind(this);util.addEventListener(window,\"resize\",this.resizeFunction)}}},{key:\"_cleanUp\",value:function _cleanUp(){if(this.resizeTimer!==undefined){clearInterval(this.resizeTimer)}util.removeEventListener(window,\"resize\",this.resizeFunction);this.resizeFunction=undefined}},{key:\"_onResize\",value:function _onResize(){this.setSize();this.body.emitter.emit(\"_redraw\")}},{key:\"_getCameraState\",value:function _getCameraState(){var pixelRatio=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.pixelRatio;if(this.initialized===true){this.cameraState.previousWidth=this.frame.canvas.width/pixelRatio;this.cameraState.previousHeight=this.frame.canvas.height/pixelRatio;this.cameraState.scale=this.body.view.scale;this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/pixelRatio,y:.5*this.frame.canvas.height/pixelRatio})}}},{key:\"_setCameraState\",value:function _setCameraState(){if(this.cameraState.scale!==undefined&&this.frame.canvas.clientWidth!==0&&this.frame.canvas.clientHeight!==0&&this.pixelRatio!==0&&this.cameraState.previousWidth>0){var widthRatio=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth;var heightRatio=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight;var newScale=this.cameraState.scale;if(widthRatio!=1&&heightRatio!=1){newScale=this.cameraState.scale*.5*(widthRatio+heightRatio)}else if(widthRatio!=1){newScale=this.cameraState.scale*widthRatio}else if(heightRatio!=1){newScale=this.cameraState.scale*heightRatio}this.body.view.scale=newScale;var currentViewCenter=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight});var distanceFromCenter={x:currentViewCenter.x-this.cameraState.position.x,y:currentViewCenter.y-this.cameraState.position.y};this.body.view.translation.x+=distanceFromCenter.x*this.body.view.scale;this.body.view.translation.y+=distanceFromCenter.y*this.body.view.scale}}},{key:\"_prepareValue\",value:function _prepareValue(value){if(typeof value===\"number\"){return value+\"px\"}else if(typeof value===\"string\"){if(value.indexOf(\"%\")!==-1||value.indexOf(\"px\")!==-1){return value}else if(value.indexOf(\"%\")===-1){return value+\"px\"}}throw new Error(\"Could not use the value supplied for width or height:\"+value)}},{key:\"_create\",value:function _create(){while(this.body.container.hasChildNodes()){this.body.container.removeChild(this.body.container.firstChild)}this.frame=document.createElement(\"div\");this.frame.className=\"vis-network\";this.frame.style.position=\"relative\";this.frame.style.overflow=\"hidden\";this.frame.tabIndex=900;this.frame.canvas=document.createElement(\"canvas\");this.frame.canvas.style.position=\"relative\";this.frame.appendChild(this.frame.canvas);if(!this.frame.canvas.getContext){var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.frame.canvas.appendChild(noCanvas)}else{this._setPixelRatio();this.setTransform()}this.body.container.appendChild(this.frame);this.body.view.scale=1;this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight};this._bindHammer()}},{key:\"_bindHammer\",value:function _bindHammer(){var _this3=this;if(this.hammer!==undefined){this.hammer.destroy()}this.drag={};this.pinch={};this.hammer=new Hammer(this.frame.canvas);this.hammer.get(\"pinch\").set({enable:true});this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_ALL});hammerUtil.onTouch(this.hammer,function(event){_this3.body.eventListeners.onTouch(event)});this.hammer.on(\"tap\",function(event){_this3.body.eventListeners.onTap(event)});this.hammer.on(\"doubletap\",function(event){_this3.body.eventListeners.onDoubleTap(event)});this.hammer.on(\"press\",function(event){_this3.body.eventListeners.onHold(event)});this.hammer.on(\"panstart\",function(event){_this3.body.eventListeners.onDragStart(event)});this.hammer.on(\"panmove\",function(event){_this3.body.eventListeners.onDrag(event)});this.hammer.on(\"panend\",function(event){_this3.body.eventListeners.onDragEnd(event)});this.hammer.on(\"pinch\",function(event){_this3.body.eventListeners.onPinch(event)});this.frame.canvas.addEventListener(\"mousewheel\",function(event){_this3.body.eventListeners.onMouseWheel(event)});this.frame.canvas.addEventListener(\"DOMMouseScroll\",function(event){_this3.body.eventListeners.onMouseWheel(event)});this.frame.canvas.addEventListener(\"mousemove\",function(event){_this3.body.eventListeners.onMouseMove(event)});this.frame.canvas.addEventListener(\"contextmenu\",function(event){_this3.body.eventListeners.onContext(event)});this.hammerFrame=new Hammer(this.frame);hammerUtil.onRelease(this.hammerFrame,function(event){_this3.body.eventListeners.onRelease(event)})}},{key:\"setSize\",value:function setSize(){var width=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.options.width;var height=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.options.height;width=this._prepareValue(width);height=this._prepareValue(height);var emitEvent=false;var oldWidth=this.frame.canvas.width;var oldHeight=this.frame.canvas.height;var previousRatio=this.pixelRatio;this._setPixelRatio();if(width!=this.options.width||height!=this.options.height||this.frame.style.width!=width||this.frame.style.height!=height){this._getCameraState(previousRatio);this.frame.style.width=width;this.frame.style.height=height;this.frame.canvas.style.width=\"100%\";this.frame.canvas.style.height=\"100%\";this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio);this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);this.options.width=width;this.options.height=height;this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight};emitEvent=true}else{var newWidth=Math.round(this.frame.canvas.clientWidth*this.pixelRatio);var newHeight=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);if(this.frame.canvas.width!==newWidth||this.frame.canvas.height!==newHeight){this._getCameraState(previousRatio)}if(this.frame.canvas.width!==newWidth){this.frame.canvas.width=newWidth;emitEvent=true}if(this.frame.canvas.height!==newHeight){this.frame.canvas.height=newHeight;emitEvent=true}}if(emitEvent===true){this.body.emitter.emit(\"resize\",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(oldWidth/this.pixelRatio),oldHeight:Math.round(oldHeight/this.pixelRatio)});this._setCameraState()}this.initialized=true;return emitEvent}},{key:\"getContext\",value:function getContext(){return this.frame.canvas.getContext(\"2d\")}},{key:\"_determinePixelRatio\",value:function _determinePixelRatio(){var ctx=this.getContext();if(ctx===undefined){throw new Error(\"Could not get canvax context\")}var numerator=1;if(typeof window!==\"undefined\"){numerator=window.devicePixelRatio||1}var denominator=ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1;return numerator/denominator}},{key:\"_setPixelRatio\",value:function _setPixelRatio(){this.pixelRatio=this._determinePixelRatio()}},{key:\"setTransform\",value:function setTransform(){var ctx=this.getContext();if(ctx===undefined){throw new Error(\"Could not get canvax context\")}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}},{key:\"_XconvertDOMtoCanvas\",value:function _XconvertDOMtoCanvas(x){return(x-this.body.view.translation.x)/this.body.view.scale}},{\nkey:\"_XconvertCanvasToDOM\",value:function _XconvertCanvasToDOM(x){return x*this.body.view.scale+this.body.view.translation.x}},{key:\"_YconvertDOMtoCanvas\",value:function _YconvertDOMtoCanvas(y){return(y-this.body.view.translation.y)/this.body.view.scale}},{key:\"_YconvertCanvasToDOM\",value:function _YconvertCanvasToDOM(y){return y*this.body.view.scale+this.body.view.translation.y}},{key:\"canvasToDOM\",value:function canvasToDOM(pos){return{x:this._XconvertCanvasToDOM(pos.x),y:this._YconvertCanvasToDOM(pos.y)}}},{key:\"DOMtoCanvas\",value:function DOMtoCanvas(pos){return{x:this._XconvertDOMtoCanvas(pos.x),y:this._YconvertDOMtoCanvas(pos.y)}}}]);return Canvas}();exports[\"default\"]=Canvas},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var View=function(){function View(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,View);this.body=body;this.canvas=canvas;this.animationSpeed=1/this.renderRefreshRate;this.animationEasingFunction=\"easeInOutQuint\";this.easingTime=0;this.sourceScale=0;this.targetScale=0;this.sourceTranslation=0;this.targetTranslation=0;this.lockedOnNodeId=undefined;this.lockedOnNodeOffset=undefined;this.touchTime=0;this.viewFunction=undefined;this.body.emitter.on(\"fit\",this.fit.bind(this));this.body.emitter.on(\"animationFinished\",function(){_this.body.emitter.emit(\"_stopRendering\")});this.body.emitter.on(\"unlockNode\",this.releaseNode.bind(this))}(0,_createClass3[\"default\"])(View,[{key:\"setOptions\",value:function setOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.options=options}},{key:\"fit\",value:function fit(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{nodes:[]};var initialZoom=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var range=void 0;var zoomLevel=void 0;if(options.nodes===undefined||options.nodes.length===0){options.nodes=this.body.nodeIndices}if(initialZoom===true){var positionDefined=0;for(var nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){var node=this.body.nodes[nodeId];if(node.predefinedPosition===true){positionDefined+=1}}}if(positionDefined>.5*this.body.nodeIndices.length){this.fit(options,false);return}range=NetworkUtil.getRange(this.body.nodes,options.nodes);var numberOfNodes=this.body.nodeIndices.length;zoomLevel=12.662/(numberOfNodes+7.4147)+.0964822;var factor=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);zoomLevel*=factor}else{this.body.emitter.emit(\"_resizeNodes\");range=NetworkUtil.getRange(this.body.nodes,options.nodes);var xDistance=Math.abs(range.maxX-range.minX)*1.1;var yDistance=Math.abs(range.maxY-range.minY)*1.1;var xZoomLevel=this.canvas.frame.canvas.clientWidth/xDistance;var yZoomLevel=this.canvas.frame.canvas.clientHeight/yDistance;zoomLevel=xZoomLevel<=yZoomLevel?xZoomLevel:yZoomLevel}if(zoomLevel>1){zoomLevel=1}else if(zoomLevel===0){zoomLevel=1}var center=NetworkUtil.findCenter(range);var animationOptions={position:center,scale:zoomLevel,animation:options.animation};this.moveTo(animationOptions)}},{key:\"focus\",value:function focus(nodeId){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};if(this.body.nodes[nodeId]!==undefined){var nodePosition={x:this.body.nodes[nodeId].x,y:this.body.nodes[nodeId].y};options.position=nodePosition;options.lockedOnNode=nodeId;this.moveTo(options)}else{console.log(\"Node: \"+nodeId+\" cannot be found.\")}}},{key:\"moveTo\",value:function moveTo(options){if(options===undefined){options={};return}if(options.offset===undefined){options.offset={x:0,y:0}}if(options.offset.x===undefined){options.offset.x=0}if(options.offset.y===undefined){options.offset.y=0}if(options.scale===undefined){options.scale=this.body.view.scale}if(options.position===undefined){options.position=this.getViewPosition()}if(options.animation===undefined){options.animation={duration:0}}if(options.animation===false){options.animation={duration:0}}if(options.animation===true){options.animation={}}if(options.animation.duration===undefined){options.animation.duration=1e3}if(options.animation.easingFunction===undefined){options.animation.easingFunction=\"easeInOutQuad\"}this.animateView(options)}},{key:\"animateView\",value:function animateView(options){if(options===undefined){return}this.animationEasingFunction=options.animation.easingFunction;this.releaseNode();if(options.locked===true){this.lockedOnNodeId=options.lockedOnNode;this.lockedOnNodeOffset=options.offset}if(this.easingTime!=0){this._transitionRedraw(true)}this.sourceScale=this.body.view.scale;this.sourceTranslation=this.body.view.translation;this.targetScale=options.scale;this.body.view.scale=this.targetScale;var viewCenter=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight});var distanceFromCenter={x:viewCenter.x-options.position.x,y:viewCenter.y-options.position.y};this.targetTranslation={x:this.sourceTranslation.x+distanceFromCenter.x*this.targetScale+options.offset.x,y:this.sourceTranslation.y+distanceFromCenter.y*this.targetScale+options.offset.y};if(options.animation.duration===0){if(this.lockedOnNodeId!=undefined){this.viewFunction=this._lockedRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction)}else{this.body.view.scale=this.targetScale;this.body.view.translation=this.targetTranslation;this.body.emitter.emit(\"_requestRedraw\")}}else{this.animationSpeed=1/(60*options.animation.duration*.001)||1/60;this.animationEasingFunction=options.animation.easingFunction;this.viewFunction=this._transitionRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction);this.body.emitter.emit(\"_startRendering\")}}},{key:\"_lockedRedraw\",value:function _lockedRedraw(){var nodePosition={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y};var viewCenter=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight});var distanceFromCenter={x:viewCenter.x-nodePosition.x,y:viewCenter.y-nodePosition.y};var sourceTranslation=this.body.view.translation;var targetTranslation={x:sourceTranslation.x+distanceFromCenter.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:sourceTranslation.y+distanceFromCenter.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=targetTranslation}},{key:\"releaseNode\",value:function releaseNode(){if(this.lockedOnNodeId!==undefined&&this.viewFunction!==undefined){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.lockedOnNodeId=undefined;this.lockedOnNodeOffset=undefined}}},{key:\"_transitionRedraw\",value:function _transitionRedraw(){var finished=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;this.easingTime+=this.animationSpeed;this.easingTime=finished===true?1:this.easingTime;var progress=util.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*progress;this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*progress,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*progress};if(this.easingTime>=1){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.easingTime=0;if(this.lockedOnNodeId!=undefined){this.viewFunction=this._lockedRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction)}this.body.emitter.emit(\"animationFinished\")}}},{key:\"getScale\",value:function getScale(){return this.body.view.scale}},{key:\"getViewPosition\",value:function getViewPosition(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]);return View}();exports[\"default\"]=View},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NavigationHandler=__webpack_require__(233)[\"default\"];var Popup=__webpack_require__(104)[\"default\"];var InteractionHandler=function(){function InteractionHandler(body,canvas,selectionHandler){(0,_classCallCheck3[\"default\"])(this,InteractionHandler);this.body=body;this.canvas=canvas;this.selectionHandler=selectionHandler;this.navigationHandler=new NavigationHandler(body,canvas);this.body.eventListeners.onTap=this.onTap.bind(this);this.body.eventListeners.onTouch=this.onTouch.bind(this);this.body.eventListeners.onDoubleTap=this.onDoubleTap.bind(this);this.body.eventListeners.onHold=this.onHold.bind(this);this.body.eventListeners.onDragStart=this.onDragStart.bind(this);this.body.eventListeners.onDrag=this.onDrag.bind(this);this.body.eventListeners.onDragEnd=this.onDragEnd.bind(this);this.body.eventListeners.onMouseWheel=this.onMouseWheel.bind(this);this.body.eventListeners.onPinch=this.onPinch.bind(this);this.body.eventListeners.onMouseMove=this.onMouseMove.bind(this);this.body.eventListeners.onRelease=this.onRelease.bind(this);this.body.eventListeners.onContext=this.onContext.bind(this);this.touchTime=0;this.drag={};this.pinch={};this.popup=undefined;this.popupObj=undefined;this.popupTimer=undefined;this.body.functions.getPointer=this.getPointer.bind(this);this.options={};this.defaultOptions={dragNodes:true,dragView:true,hover:false,keyboard:{enabled:false,speed:{x:10,y:10,zoom:.02},bindToWindow:true},navigationButtons:false,tooltipDelay:300,zoomView:true};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(InteractionHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"destroy\",function(){clearTimeout(_this.popupTimer);delete _this.body.functions.getPointer})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"hideEdgesOnDrag\",\"hideNodesOnDrag\",\"keyboard\",\"multiselect\",\"selectable\",\"selectConnectedEdges\"];util.selectiveNotDeepExtend(fields,this.options,options);util.mergeOptions(this.options,options,\"keyboard\");if(options.tooltip){util.extend(this.options.tooltip,options.tooltip);if(options.tooltip.color){this.options.tooltip.color=util.parseColor(options.tooltip.color)}}}this.navigationHandler.setOptions(this.options)}},{key:\"getPointer\",value:function getPointer(touch){return{x:touch.x-util.getAbsoluteLeft(this.canvas.frame.canvas),y:touch.y-util.getAbsoluteTop(this.canvas.frame.canvas)}}},{key:\"onTouch\",value:function onTouch(event){if((new Date).valueOf()-this.touchTime>50){this.drag.pointer=this.getPointer(event.center);this.drag.pinched=false;this.pinch.scale=this.body.view.scale;this.touchTime=(new Date).valueOf()}}},{key:\"onTap\",value:function onTap(event){var pointer=this.getPointer(event.center);var multiselect=this.selectionHandler.options.multiselect&&(event.changedPointers[0].ctrlKey||event.changedPointers[0].metaKey);this.checkSelectionChanges(pointer,event,multiselect);this.selectionHandler._generateClickEvent(\"click\",event,pointer)}},{key:\"onDoubleTap\",value:function onDoubleTap(event){var pointer=this.getPointer(event.center);this.selectionHandler._generateClickEvent(\"doubleClick\",event,pointer)}},{key:\"onHold\",value:function onHold(event){var pointer=this.getPointer(event.center);var multiselect=this.selectionHandler.options.multiselect;this.checkSelectionChanges(pointer,event,multiselect);this.selectionHandler._generateClickEvent(\"click\",event,pointer);this.selectionHandler._generateClickEvent(\"hold\",event,pointer)}},{key:\"onRelease\",value:function onRelease(event){if((new Date).valueOf()-this.touchTime>10){var pointer=this.getPointer(event.center);this.selectionHandler._generateClickEvent(\"release\",event,pointer);this.touchTime=(new Date).valueOf()}}},{key:\"onContext\",value:function onContext(event){var pointer=this.getPointer({x:event.clientX,y:event.clientY});this.selectionHandler._generateClickEvent(\"oncontext\",event,pointer)}},{key:\"checkSelectionChanges\",value:function checkSelectionChanges(pointer,event){var add=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var previousSelection=this.selectionHandler.getSelection();var selected=false;if(add===true){selected=this.selectionHandler.selectAdditionalOnPoint(pointer)}else{selected=this.selectionHandler.selectOnPoint(pointer)}var currentSelection=this.selectionHandler.getSelection();var deselectedItems=this._determineDifference(previousSelection,currentSelection);var selectedItems=this._determineDifference(currentSelection,previousSelection);if(deselectedItems.edges.length>0){this.selectionHandler._generateClickEvent(\"deselectEdge\",event,pointer,previousSelection);selected=true}if(deselectedItems.nodes.length>0){this.selectionHandler._generateClickEvent(\"deselectNode\",event,pointer,previousSelection);selected=true}if(selectedItems.nodes.length>0){this.selectionHandler._generateClickEvent(\"selectNode\",event,pointer);selected=true}if(selectedItems.edges.length>0){this.selectionHandler._generateClickEvent(\"selectEdge\",event,pointer);selected=true}if(selected===true){this.selectionHandler._generateClickEvent(\"select\",event,pointer)}}},{key:\"_determineDifference\",value:function _determineDifference(firstSet,secondSet){var arrayDiff=function arrayDiff(firstArr,secondArr){var result=[];for(var i=0;i<firstArr.length;i++){var value=firstArr[i];if(secondArr.indexOf(value)===-1){result.push(value)}}return result};return{nodes:arrayDiff(firstSet.nodes,secondSet.nodes),edges:arrayDiff(firstSet.edges,secondSet.edges)}}},{key:\"onDragStart\",value:function onDragStart(event){if(this.drag.pointer===undefined){this.onTouch(event)}var node=this.selectionHandler.getNodeAt(this.drag.pointer);this.drag.dragging=true;this.drag.selection=[];this.drag.translation=util.extend({},this.body.view.translation);this.drag.nodeId=undefined;if(node!==undefined&&this.options.dragNodes===true){this.drag.nodeId=node.id;if(node.isSelected()===false){this.selectionHandler.unselectAll();this.selectionHandler.selectObject(node)}this.selectionHandler._generateClickEvent(\"dragStart\",event,this.drag.pointer);var selection=this.selectionHandler.selectionObj.nodes;for(var nodeId in selection){if(selection.hasOwnProperty(nodeId)){var object=selection[nodeId];var s={id:object.id,node:object,x:object.x,y:object.y,xFixed:object.options.fixed.x,yFixed:object.options.fixed.y};object.options.fixed.x=true;object.options.fixed.y=true;this.drag.selection.push(s)}}}else{this.selectionHandler._generateClickEvent(\"dragStart\",event,this.drag.pointer,undefined,true)}}},{key:\"onDrag\",value:function onDrag(event){var _this2=this;if(this.drag.pinched===true){return}this.body.emitter.emit(\"unlockNode\");var pointer=this.getPointer(event.center);var selection=this.drag.selection;if(selection&&selection.length&&this.options.dragNodes===true){this.selectionHandler._generateClickEvent(\"dragging\",event,pointer);var deltaX=pointer.x-this.drag.pointer.x;var deltaY=pointer.y-this.drag.pointer.y;selection.forEach(function(selection){var node=selection.node;if(selection.xFixed===false){node.x=_this2.canvas._XconvertDOMtoCanvas(_this2.canvas._XconvertCanvasToDOM(selection.x)+deltaX)}if(selection.yFixed===false){node.y=_this2.canvas._YconvertDOMtoCanvas(_this2.canvas._YconvertCanvasToDOM(selection.y)+deltaY)}});this.body.emitter.emit(\"startSimulation\")}else{if(this.options.dragView===true){this.selectionHandler._generateClickEvent(\"dragging\",event,pointer,undefined,true);if(this.drag.pointer===undefined){this.onDragStart(event);return}var diffX=pointer.x-this.drag.pointer.x;var diffY=pointer.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+diffX,y:this.drag.translation.y+diffY};this.body.emitter.emit(\"_requestRedraw\")}}}},{key:\"onDragEnd\",value:function onDragEnd(event){this.drag.dragging=false;var selection=this.drag.selection;if(selection&&selection.length){selection.forEach(function(s){s.node.options.fixed.x=s.xFixed;s.node.options.fixed.y=s.yFixed});this.selectionHandler._generateClickEvent(\"dragEnd\",event,this.getPointer(event.center));this.body.emitter.emit(\"startSimulation\")}else{this.selectionHandler._generateClickEvent(\"dragEnd\",event,this.getPointer(event.center),undefined,true);this.body.emitter.emit(\"_requestRedraw\")}}},{key:\"onPinch\",value:function onPinch(event){var pointer=this.getPointer(event.center);this.drag.pinched=true;if(this.pinch[\"scale\"]===undefined){this.pinch.scale=1}var scale=this.pinch.scale*event.scale;this.zoom(scale,pointer)}},{key:\"zoom\",value:function zoom(scale,pointer){if(this.options.zoomView===true){var scaleOld=this.body.view.scale;if(scale<1e-5){scale=1e-5}if(scale>10){scale=10}var preScaleDragPointer=undefined;if(this.drag!==undefined){if(this.drag.dragging===true){preScaleDragPointer=this.canvas.DOMtoCanvas(this.drag.pointer)}}var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*pointer.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*pointer.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};if(preScaleDragPointer!=undefined){var postScaleDragPointer=this.canvas.canvasToDOM(preScaleDragPointer);this.drag.pointer.x=postScaleDragPointer.x;this.drag.pointer.y=postScaleDragPointer.y}this.body.emitter.emit(\"_requestRedraw\");if(scaleOld<scale){this.body.emitter.emit(\"zoom\",{direction:\"+\",scale:this.body.view.scale,pointer:pointer})}else{this.body.emitter.emit(\"zoom\",{direction:\"-\",scale:this.body.view.scale,pointer:pointer})}}}},{key:\"onMouseWheel\",value:function onMouseWheel(event){if(this.options.zoomView===true){var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(delta!==0){var scale=this.body.view.scale;var zoom=delta/10;if(delta<0){zoom=zoom/(1-zoom)}scale*=1+zoom;var pointer=this.getPointer({x:event.clientX,y:event.clientY});this.zoom(scale,pointer)}event.preventDefault()}}},{key:\"onMouseMove\",value:function onMouseMove(event){var _this3=this;var pointer=this.getPointer({x:event.clientX,y:event.clientY});var popupVisible=false;if(this.popup!==undefined){if(this.popup.hidden===false){this._checkHidePopup(pointer)}if(this.popup.hidden===false){popupVisible=true;this.popup.setPosition(pointer.x+3,pointer.y-5);this.popup.show()}}if(this.options.keyboard.bindToWindow===false&&this.options.keyboard.enabled===true){this.canvas.frame.focus()}if(popupVisible===false){if(this.popupTimer!==undefined){clearInterval(this.popupTimer);this.popupTimer=undefined}if(!this.drag.dragging){this.popupTimer=setTimeout(function(){return _this3._checkShowPopup(pointer)},this.options.tooltipDelay)}}if(this.options.hover===true){this.selectionHandler.hoverObject(event,pointer)}}},{key:\"_checkShowPopup\",value:function _checkShowPopup(pointer){var x=this.canvas._XconvertDOMtoCanvas(pointer.x);var y=this.canvas._YconvertDOMtoCanvas(pointer.y);var pointerObj={left:x,top:y,right:x,bottom:y};var previousPopupObjId=this.popupObj===undefined?undefined:this.popupObj.id;var nodeUnderCursor=false;var popupType=\"node\";if(this.popupObj===undefined){var nodeIndices=this.body.nodeIndices;var nodes=this.body.nodes;var node=void 0;var overlappingNodes=[];for(var i=0;i<nodeIndices.length;i++){node=nodes[nodeIndices[i]];if(node.isOverlappingWith(pointerObj)===true){if(node.getTitle()!==undefined){overlappingNodes.push(nodeIndices[i])}}}if(overlappingNodes.length>0){this.popupObj=nodes[overlappingNodes[overlappingNodes.length-1]];nodeUnderCursor=true}}if(this.popupObj===undefined&&nodeUnderCursor===false){var edgeIndices=this.body.edgeIndices;var edges=this.body.edges;var edge=void 0;var overlappingEdges=[];for(var _i=0;_i<edgeIndices.length;_i++){edge=edges[edgeIndices[_i]];if(edge.isOverlappingWith(pointerObj)===true){if(edge.connected===true&&edge.getTitle()!==undefined){overlappingEdges.push(edgeIndices[_i])}}}if(overlappingEdges.length>0){this.popupObj=edges[overlappingEdges[overlappingEdges.length-1]];popupType=\"edge\"}}if(this.popupObj!==undefined){if(this.popupObj.id!==previousPopupObjId){if(this.popup===undefined){this.popup=new Popup(this.canvas.frame)}this.popup.popupTargetType=popupType;this.popup.popupTargetId=this.popupObj.id;this.popup.setPosition(pointer.x+3,pointer.y-5);this.popup.setText(this.popupObj.getTitle());this.popup.show();this.body.emitter.emit(\"showPopup\",this.popupObj.id)}}else{if(this.popup!==undefined){this.popup.hide();this.body.emitter.emit(\"hidePopup\")}}}},{key:\"_checkHidePopup\",value:function _checkHidePopup(pointer){var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var stillOnObj=false;if(this.popup.popupTargetType===\"node\"){if(this.body.nodes[this.popup.popupTargetId]!==undefined){stillOnObj=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(pointerObj);if(stillOnObj===true){var overNode=this.selectionHandler.getNodeAt(pointer);stillOnObj=overNode===undefined?false:overNode.id===this.popup.popupTargetId}}}else{if(this.selectionHandler.getNodeAt(pointer)===undefined){if(this.body.edges[this.popup.popupTargetId]!==undefined){stillOnObj=this.body.edges[this.popup.popupTargetId].isOverlappingWith(pointerObj)}}}if(stillOnObj===false){this.popupObj=undefined;this.popup.hide();this.body.emitter.emit(\"hidePopup\")}}}]);return InteractionHandler}();exports[\"default\"]=InteractionHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var keycharm=__webpack_require__(35);var NavigationHandler=function(){function NavigationHandler(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,NavigationHandler);this.body=body;this.canvas=canvas;this.iconsCreated=false;this.navigationHammers=[];this.boundFunctions={};this.touchTime=0;this.activated=false;this.body.emitter.on(\"activate\",function(){_this.activated=true;_this.configureKeyboardBindings()});this.body.emitter.on(\"deactivate\",function(){_this.activated=false;_this.configureKeyboardBindings()});this.body.emitter.on(\"destroy\",function(){if(_this.keycharm!==undefined){_this.keycharm.destroy()}});this.options={}}(0,_createClass3[\"default\"])(NavigationHandler,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){this.options=options;this.create()}}},{key:\"create\",value:function create(){if(this.options.navigationButtons===true){if(this.iconsCreated===false){this.loadNavigationElements()}}else if(this.iconsCreated===true){this.cleanNavigation()}this.configureKeyboardBindings()}},{key:\"cleanNavigation\",value:function cleanNavigation(){if(this.navigationHammers.length!=0){for(var i=0;i<this.navigationHammers.length;i++){this.navigationHammers[i].destroy()}this.navigationHammers=[]}if(this.navigationDOM&&this.navigationDOM[\"wrapper\"]&&this.navigationDOM[\"wrapper\"].parentNode){this.navigationDOM[\"wrapper\"].parentNode.removeChild(this.navigationDOM[\"wrapper\"])}this.iconsCreated=false}},{key:\"loadNavigationElements\",value:function loadNavigationElements(){var _this2=this;this.cleanNavigation();this.navigationDOM={};var navigationDivs=[\"up\",\"down\",\"left\",\"right\",\"zoomIn\",\"zoomOut\",\"zoomExtends\"];var navigationDivActions=[\"_moveUp\",\"_moveDown\",\"_moveLeft\",\"_moveRight\",\"_zoomIn\",\"_zoomOut\",\"_fit\"];this.navigationDOM[\"wrapper\"]=document.createElement(\"div\");this.navigationDOM[\"wrapper\"].className=\"vis-navigation\";this.canvas.frame.appendChild(this.navigationDOM[\"wrapper\"]);for(var i=0;i<navigationDivs.length;i++){this.navigationDOM[navigationDivs[i]]=document.createElement(\"div\");this.navigationDOM[navigationDivs[i]].className=\"vis-button vis-\"+navigationDivs[i];this.navigationDOM[\"wrapper\"].appendChild(this.navigationDOM[navigationDivs[i]]);var hammer=new Hammer(this.navigationDOM[navigationDivs[i]]);if(navigationDivActions[i]===\"_fit\"){hammerUtil.onTouch(hammer,this._fit.bind(this))}else{hammerUtil.onTouch(hammer,this.bindToRedraw.bind(this,navigationDivActions[i]))}this.navigationHammers.push(hammer)}var hammerFrame=new Hammer(this.canvas.frame);hammerUtil.onRelease(hammerFrame,function(){_this2._stopMovement()});this.navigationHammers.push(hammerFrame);this.iconsCreated=true}},{key:\"bindToRedraw\",value:function bindToRedraw(action){if(this.boundFunctions[action]===undefined){this.boundFunctions[action]=this[action].bind(this);this.body.emitter.on(\"initRedraw\",this.boundFunctions[action]);this.body.emitter.emit(\"_startRendering\")}}},{key:\"unbindFromRedraw\",value:function unbindFromRedraw(action){if(this.boundFunctions[action]!==undefined){this.body.emitter.off(\"initRedraw\",this.boundFunctions[action]);this.body.emitter.emit(\"_stopRendering\");delete this.boundFunctions[action]}}},{key:\"_fit\",value:function _fit(){if((new Date).valueOf()-this.touchTime>700){this.body.emitter.emit(\"fit\",{duration:700});this.touchTime=(new Date).valueOf()}}},{key:\"_stopMovement\",value:function _stopMovement(){for(var boundAction in this.boundFunctions){if(this.boundFunctions.hasOwnProperty(boundAction)){this.body.emitter.off(\"initRedraw\",this.boundFunctions[boundAction]);this.body.emitter.emit(\"_stopRendering\")}}this.boundFunctions={}}},{key:\"_moveUp\",value:function _moveUp(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:\"_moveDown\",value:function _moveDown(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:\"_moveLeft\",value:function _moveLeft(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:\"_moveRight\",value:function _moveRight(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:\"_zoomIn\",value:function _zoomIn(){var scaleOld=this.body.view.scale;var scale=this.body.view.scale*(1+this.options.keyboard.speed.zoom);var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*this.canvas.canvasViewCenter.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*this.canvas.canvasViewCenter.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};this.body.emitter.emit(\"zoom\",{direction:\"+\",scale:this.body.view.scale,pointer:null})}},{key:\"_zoomOut\",value:function _zoomOut(){var scaleOld=this.body.view.scale;var scale=this.body.view.scale/(1+this.options.keyboard.speed.zoom);var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*this.canvas.canvasViewCenter.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*this.canvas.canvasViewCenter.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};this.body.emitter.emit(\"zoom\",{direction:\"-\",scale:this.body.view.scale,pointer:null})}},{key:\"configureKeyboardBindings\",value:function configureKeyboardBindings(){var _this3=this;if(this.keycharm!==undefined){this.keycharm.destroy()}if(this.options.keyboard.enabled===true){if(this.options.keyboard.bindToWindow===true){this.keycharm=keycharm({container:window,preventDefault:true})}else{this.keycharm=keycharm({container:this.canvas.frame,preventDefault:true})}this.keycharm.reset();if(this.activated===true){this.keycharm.bind(\"up\",function(){_this3.bindToRedraw(\"_moveUp\")},\"keydown\");this.keycharm.bind(\"down\",function(){_this3.bindToRedraw(\"_moveDown\")},\"keydown\");this.keycharm.bind(\"left\",function(){_this3.bindToRedraw(\"_moveLeft\")},\"keydown\");this.keycharm.bind(\"right\",function(){_this3.bindToRedraw(\"_moveRight\")},\"keydown\");this.keycharm.bind(\"=\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"num+\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"num-\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"-\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"[\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"]\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"pageup\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"pagedown\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"up\",function(){_this3.unbindFromRedraw(\"_moveUp\")},\"keyup\");this.keycharm.bind(\"down\",function(){_this3.unbindFromRedraw(\"_moveDown\")},\"keyup\");this.keycharm.bind(\"left\",function(){_this3.unbindFromRedraw(\"_moveLeft\")},\"keyup\");this.keycharm.bind(\"right\",function(){_this3.unbindFromRedraw(\"_moveRight\")},\"keyup\");this.keycharm.bind(\"=\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"num+\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"num-\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"-\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"[\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"]\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"pageup\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"pagedown\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\")}}}}]);return NavigationHandler}();exports[\"default\"]=NavigationHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Node=__webpack_require__(47)[\"default\"];var Edge=__webpack_require__(74)[\"default\"];var util=__webpack_require__(2);var SelectionHandler=function(){function SelectionHandler(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,SelectionHandler);this.body=body;this.canvas=canvas;this.selectionObj={nodes:[],edges:[]};this.hoverObj={nodes:{},edges:{}};this.options={};this.defaultOptions={multiselect:false,selectable:true,selectConnectedEdges:true,hoverConnectedEdges:true};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"_dataChanged\",function(){_this.updateSelection()})}(0,_createClass3[\"default\"])(SelectionHandler,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"multiselect\",\"hoverConnectedEdges\",\"selectable\",\"selectConnectedEdges\"];util.selectiveDeepExtend(fields,this.options,options)}}},{key:\"selectOnPoint\",value:function selectOnPoint(pointer){var selected=false;if(this.options.selectable===true){var obj=this.getNodeAt(pointer)||this.getEdgeAt(pointer);this.unselectAll();if(obj!==undefined){selected=this.selectObject(obj)}this.body.emitter.emit(\"_requestRedraw\")}return selected}},{key:\"selectAdditionalOnPoint\",value:function selectAdditionalOnPoint(pointer){var selectionChanged=false;if(this.options.selectable===true){var obj=this.getNodeAt(pointer)||this.getEdgeAt(pointer);if(obj!==undefined){selectionChanged=true;if(obj.isSelected()===true){this.deselectObject(obj)}else{this.selectObject(obj)}this.body.emitter.emit(\"_requestRedraw\")}}return selectionChanged}},{key:\"_initBaseEvent\",value:function _initBaseEvent(event,pointer){var properties={};properties[\"pointer\"]={DOM:{\nx:pointer.x,y:pointer.y},canvas:this.canvas.DOMtoCanvas(pointer)};properties[\"event\"]=event;return properties}},{key:\"_generateClickEvent\",value:function _generateClickEvent(eventType,event,pointer,oldSelection){var emptySelection=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;var properties=this._initBaseEvent(event,pointer);if(emptySelection===true){properties.nodes=[];properties.edges=[]}else{var tmp=this.getSelection();properties.nodes=tmp.nodes;properties.edges=tmp.edges}if(oldSelection!==undefined){properties[\"previousSelection\"]=oldSelection}if(eventType==\"click\"){properties.items=this.getClickedItems(pointer)}this.body.emitter.emit(eventType,properties)}},{key:\"selectObject\",value:function selectObject(obj){var highlightEdges=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.options.selectConnectedEdges;if(obj!==undefined){if(obj instanceof Node){if(highlightEdges===true){this._selectConnectedEdges(obj)}}obj.select();this._addToSelection(obj);return true}return false}},{key:\"deselectObject\",value:function deselectObject(obj){if(obj.isSelected()===true){obj.selected=false;this._removeFromSelection(obj)}}},{key:\"_getAllNodesOverlappingWith\",value:function _getAllNodesOverlappingWith(object){var overlappingNodes=[];var nodes=this.body.nodes;for(var i=0;i<this.body.nodeIndices.length;i++){var nodeId=this.body.nodeIndices[i];if(nodes[nodeId].isOverlappingWith(object)){overlappingNodes.push(nodeId)}}return overlappingNodes}},{key:\"_pointerToPositionObject\",value:function _pointerToPositionObject(pointer){var canvasPos=this.canvas.DOMtoCanvas(pointer);return{left:canvasPos.x-1,top:canvasPos.y+1,right:canvasPos.x+1,bottom:canvasPos.y-1}}},{key:\"getNodeAt\",value:function getNodeAt(pointer){var returnNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var positionObject=this._pointerToPositionObject(pointer);var overlappingNodes=this._getAllNodesOverlappingWith(positionObject);if(overlappingNodes.length>0){if(returnNode===true){return this.body.nodes[overlappingNodes[overlappingNodes.length-1]]}else{return overlappingNodes[overlappingNodes.length-1]}}else{return undefined}}},{key:\"_getEdgesOverlappingWith\",value:function _getEdgesOverlappingWith(object,overlappingEdges){var edges=this.body.edges;for(var i=0;i<this.body.edgeIndices.length;i++){var edgeId=this.body.edgeIndices[i];if(edges[edgeId].isOverlappingWith(object)){overlappingEdges.push(edgeId)}}}},{key:\"_getAllEdgesOverlappingWith\",value:function _getAllEdgesOverlappingWith(object){var overlappingEdges=[];this._getEdgesOverlappingWith(object,overlappingEdges);return overlappingEdges}},{key:\"getEdgeAt\",value:function getEdgeAt(pointer){var returnEdge=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var canvasPos=this.canvas.DOMtoCanvas(pointer);var mindist=10;var overlappingEdge=null;var edges=this.body.edges;for(var i=0;i<this.body.edgeIndices.length;i++){var edgeId=this.body.edgeIndices[i];var edge=edges[edgeId];if(edge.connected){var xFrom=edge.from.x;var yFrom=edge.from.y;var xTo=edge.to.x;var yTo=edge.to.y;var dist=edge.edgeType.getDistanceToEdge(xFrom,yFrom,xTo,yTo,canvasPos.x,canvasPos.y);if(dist<mindist){overlappingEdge=edgeId;mindist=dist}}}if(overlappingEdge!==null){if(returnEdge===true){return this.body.edges[overlappingEdge]}else{return overlappingEdge}}else{return undefined}}},{key:\"_addToSelection\",value:function _addToSelection(obj){if(obj instanceof Node){this.selectionObj.nodes[obj.id]=obj}else{this.selectionObj.edges[obj.id]=obj}}},{key:\"_addToHover\",value:function _addToHover(obj){if(obj instanceof Node){this.hoverObj.nodes[obj.id]=obj}else{this.hoverObj.edges[obj.id]=obj}}},{key:\"_removeFromSelection\",value:function _removeFromSelection(obj){if(obj instanceof Node){delete this.selectionObj.nodes[obj.id];this._unselectConnectedEdges(obj)}else{delete this.selectionObj.edges[obj.id]}}},{key:\"unselectAll\",value:function unselectAll(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){this.selectionObj.nodes[nodeId].unselect()}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){this.selectionObj.edges[edgeId].unselect()}}this.selectionObj={nodes:{},edges:{}}}},{key:\"_getSelectedNodeCount\",value:function _getSelectedNodeCount(){var count=0;for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){count+=1}}return count}},{key:\"_getSelectedNode\",value:function _getSelectedNode(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){return this.selectionObj.nodes[nodeId]}}return undefined}},{key:\"_getSelectedEdge\",value:function _getSelectedEdge(){for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){return this.selectionObj.edges[edgeId]}}return undefined}},{key:\"_getSelectedEdgeCount\",value:function _getSelectedEdgeCount(){var count=0;for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){count+=1}}return count}},{key:\"_getSelectedObjectCount\",value:function _getSelectedObjectCount(){var count=0;for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){count+=1}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){count+=1}}return count}},{key:\"_selectionIsEmpty\",value:function _selectionIsEmpty(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){return false}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){return false}}return true}},{key:\"_clusterInSelection\",value:function _clusterInSelection(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){if(this.selectionObj.nodes[nodeId].clusterSize>1){return true}}}return false}},{key:\"_selectConnectedEdges\",value:function _selectConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.select();this._addToSelection(edge)}}},{key:\"_hoverConnectedEdges\",value:function _hoverConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.hover=true;this._addToHover(edge)}}},{key:\"_unselectConnectedEdges\",value:function _unselectConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.unselect();this._removeFromSelection(edge)}}},{key:\"emitBlurEvent\",value:function emitBlurEvent(event,pointer,object){var properties=this._initBaseEvent(event,pointer);if(object.hover===true){object.hover=false;if(object instanceof Node){properties.node=object.id;this.body.emitter.emit(\"blurNode\",properties)}else{properties.edge=object.id;this.body.emitter.emit(\"blurEdge\",properties)}}}},{key:\"emitHoverEvent\",value:function emitHoverEvent(event,pointer,object){var properties=this._initBaseEvent(event,pointer);var hoverChanged=false;if(object.hover===false){object.hover=true;this._addToHover(object);hoverChanged=true;if(object instanceof Node){properties.node=object.id;this.body.emitter.emit(\"hoverNode\",properties)}else{properties.edge=object.id;this.body.emitter.emit(\"hoverEdge\",properties)}}return hoverChanged}},{key:\"hoverObject\",value:function hoverObject(event,pointer){var object=this.getNodeAt(pointer);if(object===undefined){object=this.getEdgeAt(pointer)}var hoverChanged=false;for(var nodeId in this.hoverObj.nodes){if(this.hoverObj.nodes.hasOwnProperty(nodeId)){if(object===undefined||object instanceof Node&&object.id!=nodeId||object instanceof Edge){this.emitBlurEvent(event,pointer,this.hoverObj.nodes[nodeId]);delete this.hoverObj.nodes[nodeId];hoverChanged=true}}}for(var edgeId in this.hoverObj.edges){if(this.hoverObj.edges.hasOwnProperty(edgeId)){if(hoverChanged===true){this.hoverObj.edges[edgeId].hover=false;delete this.hoverObj.edges[edgeId]}else if(object===undefined||object instanceof Edge&&object.id!=edgeId||object instanceof Node&&!object.hover){this.emitBlurEvent(event,pointer,this.hoverObj.edges[edgeId]);delete this.hoverObj.edges[edgeId];hoverChanged=true}}}if(object!==undefined){hoverChanged=hoverChanged||this.emitHoverEvent(event,pointer,object);if(object instanceof Node&&this.options.hoverConnectedEdges===true){this._hoverConnectedEdges(object)}}if(hoverChanged===true){this.body.emitter.emit(\"_requestRedraw\")}}},{key:\"getSelection\",value:function getSelection(){var nodeIds=this.getSelectedNodes();var edgeIds=this.getSelectedEdges();return{nodes:nodeIds,edges:edgeIds}}},{key:\"getSelectedNodes\",value:function getSelectedNodes(){var idArray=[];if(this.options.selectable===true){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){idArray.push(this.selectionObj.nodes[nodeId].id)}}}return idArray}},{key:\"getSelectedEdges\",value:function getSelectedEdges(){var idArray=[];if(this.options.selectable===true){for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){idArray.push(this.selectionObj.edges[edgeId].id)}}}return idArray}},{key:\"setSelection\",value:function setSelection(selection){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=void 0,id=void 0;if(!selection||!selection.nodes&&!selection.edges)throw\"Selection must be an object with nodes and/or edges properties\";if(options.unselectAll||options.unselectAll===undefined){this.unselectAll()}if(selection.nodes){for(i=0;i<selection.nodes.length;i++){id=selection.nodes[i];var node=this.body.nodes[id];if(!node){throw new RangeError('Node with id \"'+id+'\" not found')}this.selectObject(node,options.highlightEdges)}}if(selection.edges){for(i=0;i<selection.edges.length;i++){id=selection.edges[i];var edge=this.body.edges[id];if(!edge){throw new RangeError('Edge with id \"'+id+'\" not found')}this.selectObject(edge)}}this.body.emitter.emit(\"_requestRedraw\")}},{key:\"selectNodes\",value:function selectNodes(selection){var highlightEdges=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(!selection||selection.length===undefined)throw\"Selection must be an array with ids\";this.setSelection({nodes:selection},{highlightEdges:highlightEdges})}},{key:\"selectEdges\",value:function selectEdges(selection){if(!selection||selection.length===undefined)throw\"Selection must be an array with ids\";this.setSelection({edges:selection})}},{key:\"updateSelection\",value:function updateSelection(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){if(!this.body.nodes.hasOwnProperty(nodeId)){delete this.selectionObj.nodes[nodeId]}}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){if(!this.body.edges.hasOwnProperty(edgeId)){delete this.selectionObj.edges[edgeId]}}}}},{key:\"getClickedItems\",value:function getClickedItems(pointer){var point=this.canvas.DOMtoCanvas(pointer);var items=[];var nodeIndices=this.body.nodeIndices;var nodes=this.body.nodes;for(var i=nodeIndices.length-1;i>=0;i--){var node=nodes[nodeIndices[i]];var ret=node.getItemsOnPoint(point);items.push.apply(items,ret)}var edgeIndices=this.body.edgeIndices;var edges=this.body.edges;for(var _i=edgeIndices.length-1;_i>=0;_i--){var edge=edges[edgeIndices[_i]];var _ret=edge.getItemsOnPoint(point);items.push.apply(items,_ret)}return items}}]);return SelectionHandler}();exports[\"default\"]=SelectionHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var _require=__webpack_require__(236),HorizontalStrategy=_require.HorizontalStrategy,VerticalStrategy=_require.VerticalStrategy;var HierarchicalStatus=function(){function HierarchicalStatus(){(0,_classCallCheck3[\"default\"])(this,HierarchicalStatus);this.childrenReference={};this.parentReference={};this.trees={};this.distributionOrdering={};this.levels={};this.distributionIndex={};this.isTree=false;this.treeIndex=-1}(0,_createClass3[\"default\"])(HierarchicalStatus,[{key:\"addRelation\",value:function addRelation(parentNodeId,childNodeId){if(this.childrenReference[parentNodeId]===undefined){this.childrenReference[parentNodeId]=[]}this.childrenReference[parentNodeId].push(childNodeId);if(this.parentReference[childNodeId]===undefined){this.parentReference[childNodeId]=[]}this.parentReference[childNodeId].push(parentNodeId)}},{key:\"checkIfTree\",value:function checkIfTree(){for(var i in this.parentReference){if(this.parentReference[i].length>1){this.isTree=false;return}}this.isTree=true}},{key:\"numTrees\",value:function numTrees(){return this.treeIndex+1}},{key:\"setTreeIndex\",value:function setTreeIndex(node,treeId){if(treeId===undefined)return;if(this.trees[node.id]===undefined){this.trees[node.id]=treeId;this.treeIndex=Math.max(treeId,this.treeIndex)}}},{key:\"ensureLevel\",value:function ensureLevel(nodeId){if(this.levels[nodeId]===undefined){this.levels[nodeId]=0}}},{key:\"getMaxLevel\",value:function getMaxLevel(nodeId){var _this=this;var accumulator={};var _getMaxLevel=function _getMaxLevel(nodeId){if(accumulator[nodeId]!==undefined){return accumulator[nodeId]}var level=_this.levels[nodeId];if(_this.childrenReference[nodeId]){var children=_this.childrenReference[nodeId];if(children.length>0){for(var i=0;i<children.length;i++){level=Math.max(level,_getMaxLevel(children[i]))}}}accumulator[nodeId]=level;return level};return _getMaxLevel(nodeId)}},{key:\"levelDownstream\",value:function levelDownstream(nodeA,nodeB){if(this.levels[nodeB.id]===undefined){if(this.levels[nodeA.id]===undefined){this.levels[nodeA.id]=0}this.levels[nodeB.id]=this.levels[nodeA.id]+1}}},{key:\"setMinLevelToZero\",value:function setMinLevelToZero(nodes){var minLevel=1e9;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(this.levels[nodeId]!==undefined){minLevel=Math.min(this.levels[nodeId],minLevel)}}}for(var _nodeId in nodes){if(nodes.hasOwnProperty(_nodeId)){if(this.levels[_nodeId]!==undefined){this.levels[_nodeId]-=minLevel}}}}},{key:\"getTreeSize\",value:function getTreeSize(nodes,index){var min_x=1e9;var max_x=-1e9;var min_y=1e9;var max_y=-1e9;for(var nodeId in this.trees){if(this.trees.hasOwnProperty(nodeId)){if(this.trees[nodeId]===index){var node=nodes[nodeId];min_x=Math.min(node.x,min_x);max_x=Math.max(node.x,max_x);min_y=Math.min(node.y,min_y);max_y=Math.max(node.y,max_y)}}}return{min_x:min_x,max_x:max_x,min_y:min_y,max_y:max_y}}},{key:\"hasSameParent\",value:function hasSameParent(node1,node2){var parents1=this.parentReference[node1.id];var parents2=this.parentReference[node2.id];if(parents1===undefined||parents2===undefined){return false}for(var i=0;i<parents1.length;i++){for(var j=0;j<parents2.length;j++){if(parents1[i]==parents2[j]){return true}}}return false}},{key:\"inSameSubNetwork\",value:function inSameSubNetwork(node1,node2){return this.trees[node1.id]===this.trees[node2.id]}},{key:\"getLevels\",value:function getLevels(){return(0,_keys2[\"default\"])(this.distributionOrdering)}},{key:\"addToOrdering\",value:function addToOrdering(node,level){if(this.distributionOrdering[level]===undefined){this.distributionOrdering[level]=[]}var isPresent=false;var curLevel=this.distributionOrdering[level];for(var n in curLevel){if(curLevel[n]===node){isPresent=true;break}}if(!isPresent){this.distributionOrdering[level].push(node);this.distributionIndex[node.id]=this.distributionOrdering[level].length-1}}}]);return HierarchicalStatus}();var LayoutEngine=function(){function LayoutEngine(body){(0,_classCallCheck3[\"default\"])(this,LayoutEngine);this.body=body;this.initialRandomSeed=Math.round(Math.random()*1e6);this.randomSeed=this.initialRandomSeed;this.setPhysics=false;this.options={};this.optionsBackup={physics:{}};this.defaultOptions={randomSeed:undefined,improvedLayout:true,hierarchical:{enabled:false,levelSeparation:150,nodeSpacing:100,treeSpacing:200,blockShifting:true,edgeMinimization:true,parentCentralization:true,direction:\"UD\",sortMethod:\"hubsize\"}};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(LayoutEngine,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"_dataChanged\",function(){_this2.setupHierarchicalLayout()});this.body.emitter.on(\"_dataLoaded\",function(){_this2.layoutNetwork()});this.body.emitter.on(\"_resetHierarchicalLayout\",function(){_this2.setupHierarchicalLayout()});this.body.emitter.on(\"_adjustEdgesForHierarchicalLayout\",function(){if(_this2.options.hierarchical.enabled!==true){return}var type=_this2.direction.curveType();_this2.body.emitter.emit(\"_forceDisableDynamicCurves\",type,false)})}},{key:\"setOptions\",value:function setOptions(options,allOptions){if(options!==undefined){var hierarchical=this.options.hierarchical;var prevHierarchicalState=hierarchical.enabled;util.selectiveDeepExtend([\"randomSeed\",\"improvedLayout\"],this.options,options);util.mergeOptions(this.options,options,\"hierarchical\");if(options.randomSeed!==undefined){this.initialRandomSeed=options.randomSeed}if(hierarchical.enabled===true){if(prevHierarchicalState===true){this.body.emitter.emit(\"refresh\",true)}if(hierarchical.direction===\"RL\"||hierarchical.direction===\"DU\"){if(hierarchical.levelSeparation>0){hierarchical.levelSeparation*=-1}}else{if(hierarchical.levelSeparation<0){hierarchical.levelSeparation*=-1}}this.setDirectionStrategy();this.body.emitter.emit(\"_resetHierarchicalLayout\");return this.adaptAllOptionsForHierarchicalLayout(allOptions)}else{if(prevHierarchicalState===true){this.body.emitter.emit(\"refresh\");return util.deepExtend(allOptions,this.optionsBackup)}}}return allOptions}},{key:\"adaptAllOptionsForHierarchicalLayout\",value:function adaptAllOptionsForHierarchicalLayout(allOptions){if(this.options.hierarchical.enabled===true){var backupPhysics=this.optionsBackup.physics;if(allOptions.physics===undefined||allOptions.physics===true){allOptions.physics={enabled:backupPhysics.enabled===undefined?true:backupPhysics.enabled,solver:\"hierarchicalRepulsion\"};backupPhysics.enabled=backupPhysics.enabled===undefined?true:backupPhysics.enabled;backupPhysics.solver=backupPhysics.solver||\"barnesHut\"}else if((0,_typeof3[\"default\"])(allOptions.physics)===\"object\"){backupPhysics.enabled=allOptions.physics.enabled===undefined?true:allOptions.physics.enabled;backupPhysics.solver=allOptions.physics.solver||\"barnesHut\";allOptions.physics.solver=\"hierarchicalRepulsion\"}else if(allOptions.physics!==false){backupPhysics.solver=\"barnesHut\";allOptions.physics={solver:\"hierarchicalRepulsion\"}}var type=this.direction.curveType();if(allOptions.edges===undefined){this.optionsBackup.edges={smooth:{enabled:true,type:\"dynamic\"}};allOptions.edges={smooth:false}}else if(allOptions.edges.smooth===undefined){this.optionsBackup.edges={smooth:{enabled:true,type:\"dynamic\"}};allOptions.edges.smooth=false}else{if(typeof allOptions.edges.smooth===\"boolean\"){this.optionsBackup.edges={smooth:allOptions.edges.smooth};allOptions.edges.smooth={enabled:allOptions.edges.smooth,type:type}}else{var smooth=allOptions.edges.smooth;if(smooth.type!==undefined&&smooth.type!==\"dynamic\"){type=smooth.type}this.optionsBackup.edges={smooth:smooth.enabled===undefined?true:smooth.enabled,type:smooth.type===undefined?\"dynamic\":smooth.type,roundness:smooth.roundness===undefined?.5:smooth.roundness,forceDirection:smooth.forceDirection===undefined?false:smooth.forceDirection};allOptions.edges.smooth={enabled:smooth.enabled===undefined?true:smooth.enabled,type:type,roundness:smooth.roundness===undefined?.5:smooth.roundness,forceDirection:smooth.forceDirection===undefined?false:smooth.forceDirection}}}this.body.emitter.emit(\"_forceDisableDynamicCurves\",type)}return allOptions}},{key:\"seededRandom\",value:function seededRandom(){var x=Math.sin(this.randomSeed++)*1e4;return x-Math.floor(x)}},{key:\"positionInitially\",value:function positionInitially(nodesArray){if(this.options.hierarchical.enabled!==true){this.randomSeed=this.initialRandomSeed;var radius=nodesArray.length+50;for(var i=0;i<nodesArray.length;i++){var node=nodesArray[i];var angle=2*Math.PI*this.seededRandom();if(node.x===undefined){node.x=radius*Math.cos(angle)}if(node.y===undefined){node.y=radius*Math.sin(angle)}}}}},{key:\"layoutNetwork\",value:function layoutNetwork(){if(this.options.hierarchical.enabled!==true&&this.options.improvedLayout===true){var indices=this.body.nodeIndices;var positionDefined=0;for(var i=0;i<indices.length;i++){var node=this.body.nodes[indices[i]];if(node.predefinedPosition===true){positionDefined+=1}}if(positionDefined<.5*indices.length){var MAX_LEVELS=10;var level=0;var clusterThreshold=150;var clusterOptions={clusterNodeProperties:{shape:\"ellipse\",label:\"\",group:\"\",font:{multi:false}},clusterEdgeProperties:{label:\"\",font:{multi:false},smooth:{enabled:false}}};if(indices.length>clusterThreshold){var startLength=indices.length;while(indices.length>clusterThreshold&&level<=MAX_LEVELS){level+=1;var before=indices.length;if(level%3===0){this.body.modules.clustering.clusterBridges(clusterOptions)}else{this.body.modules.clustering.clusterOutliers(clusterOptions)}var after=indices.length;if(before==after&&level%3!==0){this._declusterAll();this.body.emitter.emit(\"_layoutFailed\");console.info(\"This network could not be positioned by this version of the improved layout algorithm.\"+\" Please disable improvedLayout for better performance.\");return}}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*startLength)})}if(level>MAX_LEVELS){console.info(\"The clustering didn't succeed within the amount of interations allowed,\"+\" progressing with partial result.\")}this.body.modules.kamadaKawai.solve(indices,this.body.edgeIndices,true);this._shiftToCenter();var offset=70;for(var _i=0;_i<indices.length;_i++){var _node=this.body.nodes[indices[_i]];if(_node.predefinedPosition===false){_node.x+=(.5-this.seededRandom())*offset;_node.y+=(.5-this.seededRandom())*offset}}this._declusterAll();this.body.emitter.emit(\"_repositionBezierNodes\")}}}},{key:\"_shiftToCenter\",value:function _shiftToCenter(){var range=NetworkUtil.getRangeCore(this.body.nodes,this.body.nodeIndices);var center=NetworkUtil.findCenter(range);for(var i=0;i<this.body.nodeIndices.length;i++){var node=this.body.nodes[this.body.nodeIndices[i]];node.x-=center.x;node.y-=center.y}}},{key:\"_declusterAll\",value:function _declusterAll(){var clustersPresent=true;while(clustersPresent===true){clustersPresent=false;for(var i=0;i<this.body.nodeIndices.length;i++){if(this.body.nodes[this.body.nodeIndices[i]].isCluster===true){clustersPresent=true;this.body.modules.clustering.openCluster(this.body.nodeIndices[i],{},false)}}if(clustersPresent===true){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"getSeed\",value:function getSeed(){return this.initialRandomSeed}},{key:\"setupHierarchicalLayout\",value:function setupHierarchicalLayout(){if(this.options.hierarchical.enabled===true&&this.body.nodeIndices.length>0){var node=void 0,nodeId=void 0;var definedLevel=false;var undefinedLevel=false;this.lastNodeOnLevel={};this.hierarchical=new HierarchicalStatus;for(nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){node=this.body.nodes[nodeId];if(node.options.level!==undefined){definedLevel=true;this.hierarchical.levels[nodeId]=node.options.level}else{undefinedLevel=true}}}if(undefinedLevel===true&&definedLevel===true){throw new Error(\"To use the hierarchical layout, nodes require either no predefined levels\"+\" or levels have to be defined for all nodes.\")}else{if(undefinedLevel===true){var sortMethod=this.options.hierarchical.sortMethod;if(sortMethod===\"hubsize\"){this._determineLevelsByHubsize()}else if(sortMethod===\"directed\"){this._determineLevelsDirected()}else if(sortMethod===\"custom\"){this._determineLevelsCustomCallback()}}for(var _nodeId2 in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId2)){this.hierarchical.ensureLevel(_nodeId2)}}var distribution=this._getDistribution();this._generateMap();this._placeNodesByHierarchy(distribution);this._condenseHierarchy();this._shiftToCenter()}}}},{key:\"_condenseHierarchy\",value:function _condenseHierarchy(){var _this3=this;var stillShifting=false;var branches={};var shiftTrees=function shiftTrees(){var treeSizes=getTreeSizes();var shiftBy=0;for(var i=0;i<treeSizes.length-1;i++){var diff=treeSizes[i].max-treeSizes[i+1].min;shiftBy+=diff+_this3.options.hierarchical.treeSpacing;shiftTree(i+1,shiftBy)}};var shiftTree=function shiftTree(index,offset){var trees=_this3.hierarchical.trees;for(var nodeId in trees){if(trees.hasOwnProperty(nodeId)){if(trees[nodeId]===index){_this3.direction.shift(nodeId,offset)}}}};var getTreeSizes=function getTreeSizes(){var treeWidths=[];for(var i=0;i<_this3.hierarchical.numTrees();i++){treeWidths.push(_this3.direction.getTreeSize(i))}return treeWidths};var getBranchNodes=function getBranchNodes(source,map){if(map[source.id]){return}map[source.id]=true;if(_this3.hierarchical.childrenReference[source.id]){var children=_this3.hierarchical.childrenReference[source.id];if(children.length>0){for(var i=0;i<children.length;i++){getBranchNodes(_this3.body.nodes[children[i]],map)}}}};var getBranchBoundary=function getBranchBoundary(branchMap){var maxLevel=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1e9;var minSpace=1e9;var maxSpace=1e9;var min=1e9;var max=-1e9;for(var branchNode in branchMap){if(branchMap.hasOwnProperty(branchNode)){var node=_this3.body.nodes[branchNode];var level=_this3.hierarchical.levels[node.id];var position=_this3.direction.getPosition(node);var _getSpaceAroundNode2=_this3._getSpaceAroundNode(node,branchMap),_getSpaceAroundNode3=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode2,2),minSpaceNode=_getSpaceAroundNode3[0],maxSpaceNode=_getSpaceAroundNode3[1];minSpace=Math.min(minSpaceNode,minSpace);maxSpace=Math.min(maxSpaceNode,maxSpace);if(level<=maxLevel){min=Math.min(position,min);max=Math.max(position,max)}}}return[min,max,minSpace,maxSpace]};var getCollisionLevel=function getCollisionLevel(node1,node2){var maxLevel1=_this3.hierarchical.getMaxLevel(node1.id);var maxLevel2=_this3.hierarchical.getMaxLevel(node2.id);return Math.min(maxLevel1,maxLevel2)};var shiftElementsCloser=function shiftElementsCloser(callback,levels,centerParents){var hier=_this3.hierarchical;for(var i=0;i<levels.length;i++){var level=levels[i];var levelNodes=hier.distributionOrdering[level];if(levelNodes.length>1){for(var j=0;j<levelNodes.length-1;j++){var node1=levelNodes[j];var node2=levelNodes[j+1];if(hier.hasSameParent(node1,node2)&&hier.inSameSubNetwork(node1,node2)){callback(node1,node2,centerParents)}}}}};var branchShiftCallback=function branchShiftCallback(node1,node2){var centerParent=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var pos1=_this3.direction.getPosition(node1);var pos2=_this3.direction.getPosition(node2);var diffAbs=Math.abs(pos2-pos1);var nodeSpacing=_this3.options.hierarchical.nodeSpacing;if(diffAbs>nodeSpacing){var branchNodes1={};var branchNodes2={};getBranchNodes(node1,branchNodes1);getBranchNodes(node2,branchNodes2);var maxLevel=getCollisionLevel(node1,node2);var branchNodeBoundary1=getBranchBoundary(branchNodes1,maxLevel);var branchNodeBoundary2=getBranchBoundary(branchNodes2,maxLevel);var max1=branchNodeBoundary1[1];var min2=branchNodeBoundary2[0];var minSpace2=branchNodeBoundary2[2];var diffBranch=Math.abs(max1-min2);if(diffBranch>nodeSpacing){var offset=max1-min2+nodeSpacing;if(offset<-minSpace2+nodeSpacing){offset=-minSpace2+nodeSpacing}if(offset<0){_this3._shiftBlock(node2.id,offset);stillShifting=true;if(centerParent===true)_this3._centerParent(node2)}}}};var minimizeEdgeLength=function minimizeEdgeLength(iterations,node){var nodeId=node.id;var allEdges=node.edges;var nodeLevel=_this3.hierarchical.levels[node.id];var C2=_this3.options.hierarchical.levelSeparation*_this3.options.hierarchical.levelSeparation;var referenceNodes={};var aboveEdges=[];for(var i=0;i<allEdges.length;i++){var edge=allEdges[i];if(edge.toId!=edge.fromId){var otherNode=edge.toId==nodeId?edge.from:edge.to;referenceNodes[allEdges[i].id]=otherNode;if(_this3.hierarchical.levels[otherNode.id]<nodeLevel){aboveEdges.push(edge)}}}var getFx=function getFx(point,edges){var sum=0;for(var _i2=0;_i2<edges.length;_i2++){if(referenceNodes[edges[_i2].id]!==undefined){var a=_this3.direction.getPosition(referenceNodes[edges[_i2].id])-point;sum+=a/Math.sqrt(a*a+C2)}}return sum};var getDFx=function getDFx(point,edges){var sum=0;for(var _i3=0;_i3<edges.length;_i3++){if(referenceNodes[edges[_i3].id]!==undefined){var a=_this3.direction.getPosition(referenceNodes[edges[_i3].id])-point;sum-=C2*Math.pow(a*a+C2,-1.5)}}return sum};var getGuess=function getGuess(iterations,edges){var guess=_this3.direction.getPosition(node);var guessMap={};for(var _i4=0;_i4<iterations;_i4++){var fx=getFx(guess,edges);var dfx=getDFx(guess,edges);var limit=40;var ratio=Math.max(-limit,Math.min(limit,Math.round(fx/dfx)));guess=guess-ratio;if(guessMap[guess]!==undefined){break}guessMap[guess]=_i4}return guess};var moveBranch=function moveBranch(guess){var nodePosition=_this3.direction.getPosition(node);if(branches[node.id]===undefined){var branchNodes={};getBranchNodes(node,branchNodes);branches[node.id]=branchNodes}var branchBoundary=getBranchBoundary(branches[node.id]);var minSpaceBranch=branchBoundary[2];var maxSpaceBranch=branchBoundary[3];var diff=guess-nodePosition;var branchOffset=0;if(diff>0){branchOffset=Math.min(diff,maxSpaceBranch-_this3.options.hierarchical.nodeSpacing)}else if(diff<0){branchOffset=-Math.min(-diff,minSpaceBranch-_this3.options.hierarchical.nodeSpacing)}if(branchOffset!=0){_this3._shiftBlock(node.id,branchOffset);stillShifting=true}};var moveNode=function moveNode(guess){var nodePosition=_this3.direction.getPosition(node);var _getSpaceAroundNode4=_this3._getSpaceAroundNode(node),_getSpaceAroundNode5=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode4,2),minSpace=_getSpaceAroundNode5[0],maxSpace=_getSpaceAroundNode5[1];var diff=guess-nodePosition;var newPosition=nodePosition;if(diff>0){newPosition=Math.min(nodePosition+(maxSpace-_this3.options.hierarchical.nodeSpacing),guess)}else if(diff<0){newPosition=Math.max(nodePosition-(minSpace-_this3.options.hierarchical.nodeSpacing),guess)}if(newPosition!==nodePosition){_this3.direction.setPosition(node,newPosition);stillShifting=true}};var guess=getGuess(iterations,aboveEdges);moveBranch(guess);guess=getGuess(iterations,allEdges);moveNode(guess)};var minimizeEdgeLengthBottomUp=function minimizeEdgeLengthBottomUp(iterations){var levels=_this3.hierarchical.getLevels();levels=levels.reverse();for(var i=0;i<iterations;i++){stillShifting=false;for(var j=0;j<levels.length;j++){var level=levels[j];var levelNodes=_this3.hierarchical.distributionOrdering[level];for(var k=0;k<levelNodes.length;k++){minimizeEdgeLength(1e3,levelNodes[k])}}if(stillShifting!==true){break}}};var shiftBranchesCloserBottomUp=function shiftBranchesCloserBottomUp(iterations){var levels=_this3.hierarchical.getLevels();levels=levels.reverse();for(var i=0;i<iterations;i++){stillShifting=false;shiftElementsCloser(branchShiftCallback,levels,true);if(stillShifting!==true){break}}};var centerAllParents=function centerAllParents(){for(var nodeId in _this3.body.nodes){if(_this3.body.nodes.hasOwnProperty(nodeId))_this3._centerParent(_this3.body.nodes[nodeId])}};var centerAllParentsBottomUp=function centerAllParentsBottomUp(){var levels=_this3.hierarchical.getLevels()\n;levels=levels.reverse();for(var i=0;i<levels.length;i++){var level=levels[i];var levelNodes=_this3.hierarchical.distributionOrdering[level];for(var j=0;j<levelNodes.length;j++){_this3._centerParent(levelNodes[j])}}};if(this.options.hierarchical.blockShifting===true){shiftBranchesCloserBottomUp(5);centerAllParents()}if(this.options.hierarchical.edgeMinimization===true){minimizeEdgeLengthBottomUp(20)}if(this.options.hierarchical.parentCentralization===true){centerAllParentsBottomUp()}shiftTrees()}},{key:\"_getSpaceAroundNode\",value:function _getSpaceAroundNode(node,map){var useMap=true;if(map===undefined){useMap=false}var level=this.hierarchical.levels[node.id];if(level!==undefined){var index=this.hierarchical.distributionIndex[node.id];var position=this.direction.getPosition(node);var ordering=this.hierarchical.distributionOrdering[level];var minSpace=1e9;var maxSpace=1e9;if(index!==0){var prevNode=ordering[index-1];if(useMap===true&&map[prevNode.id]===undefined||useMap===false){var prevPos=this.direction.getPosition(prevNode);minSpace=position-prevPos}}if(index!=ordering.length-1){var nextNode=ordering[index+1];if(useMap===true&&map[nextNode.id]===undefined||useMap===false){var nextPos=this.direction.getPosition(nextNode);maxSpace=Math.min(maxSpace,nextPos-position)}}return[minSpace,maxSpace]}else{return[0,0]}}},{key:\"_centerParent\",value:function _centerParent(node){if(this.hierarchical.parentReference[node.id]){var parents=this.hierarchical.parentReference[node.id];for(var i=0;i<parents.length;i++){var parentId=parents[i];var parentNode=this.body.nodes[parentId];var children=this.hierarchical.childrenReference[parentId];if(children!==undefined){var newPosition=this._getCenterPosition(children);var position=this.direction.getPosition(parentNode);var _getSpaceAroundNode6=this._getSpaceAroundNode(parentNode),_getSpaceAroundNode7=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode6,2),minSpace=_getSpaceAroundNode7[0],maxSpace=_getSpaceAroundNode7[1];var diff=position-newPosition;if(diff<0&&Math.abs(diff)<maxSpace-this.options.hierarchical.nodeSpacing||diff>0&&Math.abs(diff)<minSpace-this.options.hierarchical.nodeSpacing){this.direction.setPosition(parentNode,newPosition)}}}}}},{key:\"_placeNodesByHierarchy\",value:function _placeNodesByHierarchy(distribution){this.positionedNodes={};for(var level in distribution){if(distribution.hasOwnProperty(level)){var nodeArray=(0,_keys2[\"default\"])(distribution[level]);nodeArray=this._indexArrayToNodes(nodeArray);this.direction.sort(nodeArray);var handledNodeCount=0;for(var i=0;i<nodeArray.length;i++){var node=nodeArray[i];if(this.positionedNodes[node.id]===undefined){var spacing=this.options.hierarchical.nodeSpacing;var pos=spacing*handledNodeCount;if(handledNodeCount>0){pos=this.direction.getPosition(nodeArray[i-1])+spacing}this.direction.setPosition(node,pos,level);this._validatePositionAndContinue(node,level,pos);handledNodeCount++}}}}}},{key:\"_placeBranchNodes\",value:function _placeBranchNodes(parentId,parentLevel){var childRef=this.hierarchical.childrenReference[parentId];if(childRef===undefined){return}var childNodes=[];for(var i=0;i<childRef.length;i++){childNodes.push(this.body.nodes[childRef[i]])}this.direction.sort(childNodes);for(var _i5=0;_i5<childNodes.length;_i5++){var childNode=childNodes[_i5];var childNodeLevel=this.hierarchical.levels[childNode.id];if(childNodeLevel>parentLevel&&this.positionedNodes[childNode.id]===undefined){var spacing=this.options.hierarchical.nodeSpacing;var pos=void 0;if(_i5===0){pos=this.direction.getPosition(this.body.nodes[parentId])}else{pos=this.direction.getPosition(childNodes[_i5-1])+spacing}this.direction.setPosition(childNode,pos,childNodeLevel);this._validatePositionAndContinue(childNode,childNodeLevel,pos)}else{return}}var center=this._getCenterPosition(childNodes);this.direction.setPosition(this.body.nodes[parentId],center,parentLevel)}},{key:\"_validatePositionAndContinue\",value:function _validatePositionAndContinue(node,level,pos){if(!this.hierarchical.isTree)return;if(this.lastNodeOnLevel[level]!==undefined){var previousPos=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[level]]);if(pos-previousPos<this.options.hierarchical.nodeSpacing){var diff=previousPos+this.options.hierarchical.nodeSpacing-pos;var sharedParent=this._findCommonParent(this.lastNodeOnLevel[level],node.id);this._shiftBlock(sharedParent.withChild,diff)}}this.lastNodeOnLevel[level]=node.id;this.positionedNodes[node.id]=true;this._placeBranchNodes(node.id,level)}},{key:\"_indexArrayToNodes\",value:function _indexArrayToNodes(idArray){var array=[];for(var i=0;i<idArray.length;i++){array.push(this.body.nodes[idArray[i]])}return array}},{key:\"_getDistribution\",value:function _getDistribution(){var distribution={};var nodeId=void 0,node=void 0;for(nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){node=this.body.nodes[nodeId];var level=this.hierarchical.levels[nodeId]===undefined?0:this.hierarchical.levels[nodeId];this.direction.fix(node,level);if(distribution[level]===undefined){distribution[level]={}}distribution[level][nodeId]=node}}return distribution}},{key:\"_getActiveEdges\",value:function _getActiveEdges(node){var _this4=this;var result=[];util.forEach(node.edges,function(edge){if(_this4.body.edgeIndices.indexOf(edge.id)!==-1){result.push(edge)}});return result}},{key:\"_getHubSizes\",value:function _getHubSizes(){var _this5=this;var hubSizes={};var nodeIds=this.body.nodeIndices;util.forEach(nodeIds,function(nodeId){var node=_this5.body.nodes[nodeId];var hubSize=_this5._getActiveEdges(node).length;hubSizes[hubSize]=true});var result=[];util.forEach(hubSizes,function(size){result.push(Number(size))});result.sort(function(a,b){return b-a});return result}},{key:\"_determineLevelsByHubsize\",value:function _determineLevelsByHubsize(){var _this6=this;var levelDownstream=function levelDownstream(nodeA,nodeB){_this6.hierarchical.levelDownstream(nodeA,nodeB)};var hubSizes=this._getHubSizes();var _loop=function _loop(i){var hubSize=hubSizes[i];if(hubSize===0)return\"break\";util.forEach(_this6.body.nodeIndices,function(nodeId){var node=_this6.body.nodes[nodeId];if(hubSize===_this6._getActiveEdges(node).length){_this6._crawlNetwork(levelDownstream,nodeId)}})};for(var i=0;i<hubSizes.length;++i){var _ret=_loop(i);if(_ret===\"break\")break}}},{key:\"_determineLevelsCustomCallback\",value:function _determineLevelsCustomCallback(){var _this7=this;var minLevel=1e5;var customCallback=function customCallback(nodeA,nodeB,edge){};var levelByDirection=function levelByDirection(nodeA,nodeB,edge){var levelA=_this7.hierarchical.levels[nodeA.id];if(levelA===undefined){levelA=_this7.hierarchical.levels[nodeA.id]=minLevel}var diff=customCallback(NetworkUtil.cloneOptions(nodeA,\"node\"),NetworkUtil.cloneOptions(nodeB,\"node\"),NetworkUtil.cloneOptions(edge,\"edge\"));_this7.hierarchical.levels[nodeB.id]=levelA+diff};this._crawlNetwork(levelByDirection);this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:\"_determineLevelsDirected\",value:function _determineLevelsDirected(){var _this8=this;var minLevel=1e4;var isBidirectional=function isBidirectional(edge){util.forEach(_this8.body.edges,function(otherEdge){if(otherEdge.toId===edge.fromId&&otherEdge.fromId===edge.toId){return true}});return false};var levelByDirection=function levelByDirection(nodeA,nodeB,edge){var levelA=_this8.hierarchical.levels[nodeA.id];var levelB=_this8.hierarchical.levels[nodeB.id];if(isBidirectional(edge)&&levelA!==undefined&&levelB!==undefined){return}if(levelA===undefined){levelA=_this8.hierarchical.levels[nodeA.id]=minLevel}if(edge.toId==nodeB.id){_this8.hierarchical.levels[nodeB.id]=levelA+1}else{_this8.hierarchical.levels[nodeB.id]=levelA-1}};this._crawlNetwork(levelByDirection);this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:\"_generateMap\",value:function _generateMap(){var _this9=this;var fillInRelations=function fillInRelations(parentNode,childNode){if(_this9.hierarchical.levels[childNode.id]>_this9.hierarchical.levels[parentNode.id]){_this9.hierarchical.addRelation(parentNode.id,childNode.id)}};this._crawlNetwork(fillInRelations);this.hierarchical.checkIfTree()}},{key:\"_crawlNetwork\",value:function _crawlNetwork(){var _this10=this;var callback=arguments.length>0&&arguments[0]!==undefined?arguments[0]:function(){};var startingNodeId=arguments[1];var progress={};var crawler=function crawler(node,tree){if(progress[node.id]===undefined){_this10.hierarchical.setTreeIndex(node,tree);progress[node.id]=true;var childNode=void 0;var edges=_this10._getActiveEdges(node);for(var i=0;i<edges.length;i++){var edge=edges[i];if(edge.connected===true){if(edge.toId==node.id){childNode=edge.from}else{childNode=edge.to}if(node.id!=childNode.id){callback(node,childNode,edge);crawler(childNode,tree)}}}}};if(startingNodeId===undefined){var treeIndex=0;for(var i=0;i<this.body.nodeIndices.length;i++){var nodeId=this.body.nodeIndices[i];if(progress[nodeId]===undefined){var node=this.body.nodes[nodeId];crawler(node,treeIndex);treeIndex+=1}}}else{var _node2=this.body.nodes[startingNodeId];if(_node2===undefined){console.error(\"Node not found:\",startingNodeId);return}crawler(_node2)}}},{key:\"_shiftBlock\",value:function _shiftBlock(parentId,diff){var _this11=this;var progress={};var shifter=function shifter(parentId){if(progress[parentId]){return}progress[parentId]=true;_this11.direction.shift(parentId,diff);var childRef=_this11.hierarchical.childrenReference[parentId];if(childRef!==undefined){for(var i=0;i<childRef.length;i++){shifter(childRef[i])}}};shifter(parentId)}},{key:\"_findCommonParent\",value:function _findCommonParent(childA,childB){var _this12=this;var parents={};var iterateParents=function iterateParents(parents,child){var parentRef=_this12.hierarchical.parentReference[child];if(parentRef!==undefined){for(var i=0;i<parentRef.length;i++){var parent=parentRef[i];parents[parent]=true;iterateParents(parents,parent)}}};var findParent=function findParent(parents,child){var parentRef=_this12.hierarchical.parentReference[child];if(parentRef!==undefined){for(var i=0;i<parentRef.length;i++){var parent=parentRef[i];if(parents[parent]!==undefined){return{foundParent:parent,withChild:child}}var branch=findParent(parents,parent);if(branch.foundParent!==null){return branch}}}return{foundParent:null,withChild:child}};iterateParents(parents,childA);return findParent(parents,childB)}},{key:\"setDirectionStrategy\",value:function setDirectionStrategy(){var isVertical=this.options.hierarchical.direction===\"UD\"||this.options.hierarchical.direction===\"DU\";if(isVertical){this.direction=new VerticalStrategy(this)}else{this.direction=new HorizontalStrategy(this)}}},{key:\"_getCenterPosition\",value:function _getCenterPosition(childNodes){var minPos=1e9;var maxPos=-1e9;for(var i=0;i<childNodes.length;i++){var childNode=void 0;if(childNodes[i].id!==undefined){childNode=childNodes[i]}else{var childNodeId=childNodes[i];childNode=this.body.nodes[childNodeId]}var position=this.direction.getPosition(childNode);minPos=Math.min(minPos,position);maxPos=Math.max(maxPos,position)}return.5*(minPos+maxPos)}}]);return LayoutEngine}();exports[\"default\"]=LayoutEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.VerticalStrategy=exports.HorizontalStrategy=undefined;var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var DirectionInterface=function(){function DirectionInterface(){(0,_classCallCheck3[\"default\"])(this,DirectionInterface)}(0,_createClass3[\"default\"])(DirectionInterface,[{key:\"abstract\",value:function abstract(){throw new Error(\"Can't instantiate abstract class!\")}},{key:\"fake_use\",value:function fake_use(){}},{key:\"curveType\",value:function curveType(){return this.abstract()}},{key:\"getPosition\",value:function getPosition(node){this.fake_use(node);return this.abstract()}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;this.fake_use(node,position,level);this.abstract()}},{key:\"getTreeSize\",value:function getTreeSize(index){this.fake_use(index);return this.abstract()}},{key:\"sort\",value:function sort(nodeArray){this.fake_use(nodeArray);this.abstract()}},{key:\"fix\",value:function fix(node,level){this.fake_use(node,level);this.abstract()}},{key:\"shift\",value:function shift(nodeId,diff){this.fake_use(nodeId,diff);this.abstract()}}]);return DirectionInterface}();var VerticalStrategy=function(_DirectionInterface){(0,_inherits3[\"default\"])(VerticalStrategy,_DirectionInterface);function VerticalStrategy(layout){(0,_classCallCheck3[\"default\"])(this,VerticalStrategy);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(VerticalStrategy.__proto__||(0,_getPrototypeOf2[\"default\"])(VerticalStrategy)).call(this));_this.layout=layout;return _this}(0,_createClass3[\"default\"])(VerticalStrategy,[{key:\"curveType\",value:function curveType(){return\"horizontal\"}},{key:\"getPosition\",value:function getPosition(node){return node.x}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;if(level!==undefined){this.layout.hierarchical.addToOrdering(node,level)}node.x=position}},{key:\"getTreeSize\",value:function getTreeSize(index){var res=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,index);return{min:res.min_x,max:res.max_x}}},{key:\"sort\",value:function sort(nodeArray){nodeArray.sort(function(a,b){if(a.x===undefined||b.x===undefined)return 0;return a.x-b.x})}},{key:\"fix\",value:function fix(node,level){node.y=this.layout.options.hierarchical.levelSeparation*level;node.options.fixed.y=true}},{key:\"shift\",value:function shift(nodeId,diff){this.layout.body.nodes[nodeId].x+=diff}}]);return VerticalStrategy}(DirectionInterface);var HorizontalStrategy=function(_DirectionInterface2){(0,_inherits3[\"default\"])(HorizontalStrategy,_DirectionInterface2);function HorizontalStrategy(layout){(0,_classCallCheck3[\"default\"])(this,HorizontalStrategy);var _this2=(0,_possibleConstructorReturn3[\"default\"])(this,(HorizontalStrategy.__proto__||(0,_getPrototypeOf2[\"default\"])(HorizontalStrategy)).call(this));_this2.layout=layout;return _this2}(0,_createClass3[\"default\"])(HorizontalStrategy,[{key:\"curveType\",value:function curveType(){return\"vertical\"}},{key:\"getPosition\",value:function getPosition(node){return node.y}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;if(level!==undefined){this.layout.hierarchical.addToOrdering(node,level)}node.y=position}},{key:\"getTreeSize\",value:function getTreeSize(index){var res=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,index);return{min:res.min_y,max:res.max_y}}},{key:\"sort\",value:function sort(nodeArray){nodeArray.sort(function(a,b){if(a.y===undefined||b.y===undefined)return 0;return a.y-b.y})}},{key:\"fix\",value:function fix(node,level){node.x=this.layout.options.hierarchical.levelSeparation*level;node.options.fixed.x=true}},{key:\"shift\",value:function shift(nodeId,diff){this.layout.body.nodes[nodeId].y+=diff}}]);return HorizontalStrategy}(DirectionInterface);exports.HorizontalStrategy=HorizontalStrategy;exports.VerticalStrategy=VerticalStrategy},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var ManipulationSystem=function(){function ManipulationSystem(body,canvas,selectionHandler){var _this=this;(0,_classCallCheck3[\"default\"])(this,ManipulationSystem);this.body=body;this.canvas=canvas;this.selectionHandler=selectionHandler;this.editMode=false;this.manipulationDiv=undefined;this.editModeDiv=undefined;this.closeDiv=undefined;this.manipulationHammers=[];this.temporaryUIFunctions={};this.temporaryEventFunctions=[];this.touchTime=0;this.temporaryIds={nodes:[],edges:[]};this.guiEnabled=false;this.inMode=false;this.selectedControlNode=undefined;this.options={};this.defaultOptions={enabled:false,initiallyActive:false,addNode:true,addEdge:true,editNode:undefined,editEdge:true,deleteNode:true,deleteEdge:true,controlNodeStyle:{shape:\"dot\",size:6,color:{background:\"#ff0000\",border:\"#3c3c3c\",highlight:{background:\"#07f968\",border:\"#3c3c3c\"}},borderWidth:2,borderWidthSelected:2}};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"destroy\",function(){_this._clean()});this.body.emitter.on(\"_dataChanged\",this._restore.bind(this));this.body.emitter.on(\"_resetData\",this._restore.bind(this))}(0,_createClass3[\"default\"])(ManipulationSystem,[{key:\"_restore\",value:function _restore(){if(this.inMode!==false){if(this.options.initiallyActive===true){this.enableEditMode()}else{this.disableEditMode()}}}},{key:\"setOptions\",value:function setOptions(options,allOptions,globalOptions){if(allOptions!==undefined){if(allOptions.locale!==undefined){this.options.locale=allOptions.locale}else{this.options.locale=globalOptions.locale}if(allOptions.locales!==undefined){this.options.locales=allOptions.locales}else{this.options.locales=globalOptions.locales}}if(options!==undefined){if(typeof options===\"boolean\"){this.options.enabled=options}else{this.options.enabled=true;util.deepExtend(this.options,options)}if(this.options.initiallyActive===true){this.editMode=true}this._setup()}}},{key:\"toggleEditMode\",value:function toggleEditMode(){if(this.editMode===true){this.disableEditMode()}else{this.enableEditMode()}}},{key:\"enableEditMode\",value:function enableEditMode(){this.editMode=true;this._clean();if(this.guiEnabled===true){this.manipulationDiv.style.display=\"block\";this.closeDiv.style.display=\"block\";this.editModeDiv.style.display=\"none\";this.showManipulatorToolbar()}}},{key:\"disableEditMode\",value:function disableEditMode(){this.editMode=false;this._clean();if(this.guiEnabled===true){this.manipulationDiv.style.display=\"none\";this.closeDiv.style.display=\"none\";this.editModeDiv.style.display=\"block\";this._createEditButton()}}},{key:\"showManipulatorToolbar\",value:function showManipulatorToolbar(){this._clean();this.manipulationDOM={};if(this.guiEnabled===true){this.editMode=true;this.manipulationDiv.style.display=\"block\";this.closeDiv.style.display=\"block\";var selectedNodeCount=this.selectionHandler._getSelectedNodeCount();var selectedEdgeCount=this.selectionHandler._getSelectedEdgeCount();var selectedTotalCount=selectedNodeCount+selectedEdgeCount;var locale=this.options.locales[this.options.locale];var needSeperator=false;if(this.options.addNode!==false){this._createAddNodeButton(locale);needSeperator=true}if(this.options.addEdge!==false){if(needSeperator===true){this._createSeperator(1)}else{needSeperator=true}this._createAddEdgeButton(locale)}if(selectedNodeCount===1&&typeof this.options.editNode===\"function\"){if(needSeperator===true){this._createSeperator(2)}else{needSeperator=true}this._createEditNodeButton(locale)}else if(selectedEdgeCount===1&&selectedNodeCount===0&&this.options.editEdge!==false){if(needSeperator===true){this._createSeperator(3)}else{needSeperator=true}this._createEditEdgeButton(locale)}if(selectedTotalCount!==0){if(selectedNodeCount>0&&this.options.deleteNode!==false){if(needSeperator===true){this._createSeperator(4)}this._createDeleteButton(locale)}else if(selectedNodeCount===0&&this.options.deleteEdge!==false){if(needSeperator===true){this._createSeperator(4)}this._createDeleteButton(locale)}}this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this));this._temporaryBindEvent(\"select\",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit(\"_redraw\")}},{key:\"addNodeMode\",value:function addNodeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"addNode\";if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"addDescription\"]||this.options.locales[\"en\"][\"addDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent(\"click\",this._performAddNode.bind(this))}},{key:\"editNode\",value:function editNode(){var _this2=this;if(this.editMode!==true){this.enableEditMode()}this._clean();var node=this.selectionHandler._getSelectedNode();if(node!==undefined){this.inMode=\"editNode\";if(typeof this.options.editNode===\"function\"){if(node.isCluster!==true){var data=util.deepExtend({},node.options,false);data.x=node.x;data.y=node.y;if(this.options.editNode.length===2){this.options.editNode(data,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this2.inMode===\"editNode\"){_this2.body.data.nodes.getDataSet().update(finalizedData)}_this2.showManipulatorToolbar()})}else{throw new Error(\"The function for edit does not support two arguments (data, callback)\")}}else{alert(this.options.locales[this.options.locale][\"editClusterError\"]||this.options.locales[\"en\"][\"editClusterError\"])}}else{throw new Error(\"No function has been configured to handle the editing of nodes.\")}}else{this.showManipulatorToolbar()}}},{key:\"addEdgeMode\",value:function addEdgeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"addEdge\";if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"edgeDescription\"]||this.options.locales[\"en\"][\"edgeDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI(\"onTouch\",this._handleConnect.bind(this));this._temporaryBindUI(\"onDragEnd\",this._finishConnect.bind(this));this._temporaryBindUI(\"onDrag\",this._dragControlNode.bind(this));this._temporaryBindUI(\"onRelease\",this._finishConnect.bind(this));this._temporaryBindUI(\"onDragStart\",this._dragStartEdge.bind(this));this._temporaryBindUI(\"onHold\",function(){})}},{key:\"editEdgeMode\",value:function editEdgeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"editEdge\";if((0,_typeof3[\"default\"])(this.options.editEdge)===\"object\"&&typeof this.options.editEdge.editWithoutDrag===\"function\"){this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0];if(this.edgeBeingEditedId!==undefined){var edge=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(edge.from,edge.to);return}}if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"editEdgeDescription\"]||this.options.locales[\"en\"][\"editEdgeDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0];if(this.edgeBeingEditedId!==undefined){var _edge=this.body.edges[this.edgeBeingEditedId];var controlNodeFrom=this._getNewTargetNode(_edge.from.x,_edge.from.y);var controlNodeTo=this._getNewTargetNode(_edge.to.x,_edge.to.y);this.temporaryIds.nodes.push(controlNodeFrom.id);this.temporaryIds.nodes.push(controlNodeTo.id);this.body.nodes[controlNodeFrom.id]=controlNodeFrom;this.body.nodeIndices.push(controlNodeFrom.id);this.body.nodes[controlNodeTo.id]=controlNodeTo;this.body.nodeIndices.push(controlNodeTo.id);this._temporaryBindUI(\"onTouch\",this._controlNodeTouch.bind(this));this._temporaryBindUI(\"onTap\",function(){});this._temporaryBindUI(\"onHold\",function(){});this._temporaryBindUI(\"onDragStart\",this._controlNodeDragStart.bind(this));this._temporaryBindUI(\"onDrag\",this._controlNodeDrag.bind(this));this._temporaryBindUI(\"onDragEnd\",this._controlNodeDragEnd.bind(this));this._temporaryBindUI(\"onMouseMove\",function(){});this._temporaryBindEvent(\"beforeDrawing\",function(ctx){var positions=_edge.edgeType.findBorderPositions(ctx);if(controlNodeFrom.selected===false){controlNodeFrom.x=positions.from.x;controlNodeFrom.y=positions.from.y}if(controlNodeTo.selected===false){controlNodeTo.x=positions.to.x;controlNodeTo.y=positions.to.y}});this.body.emitter.emit(\"_redraw\")}else{this.showManipulatorToolbar()}}},{key:\"deleteSelected\",value:function deleteSelected(){var _this3=this;if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"delete\";var selectedNodes=this.selectionHandler.getSelectedNodes();var selectedEdges=this.selectionHandler.getSelectedEdges();var deleteFunction=undefined;if(selectedNodes.length>0){for(var i=0;i<selectedNodes.length;i++){if(this.body.nodes[selectedNodes[i]].isCluster===true){alert(this.options.locales[this.options.locale][\"deleteClusterError\"]||this.options.locales[\"en\"][\"deleteClusterError\"]);return}}if(typeof this.options.deleteNode===\"function\"){deleteFunction=this.options.deleteNode}}else if(selectedEdges.length>0){if(typeof this.options.deleteEdge===\"function\"){deleteFunction=this.options.deleteEdge}}if(typeof deleteFunction===\"function\"){var data={nodes:selectedNodes,edges:selectedEdges};if(deleteFunction.length===2){deleteFunction(data,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this3.inMode===\"delete\"){_this3.body.data.edges.getDataSet().remove(finalizedData.edges);_this3.body.data.nodes.getDataSet().remove(finalizedData.nodes);_this3.body.emitter.emit(\"startSimulation\");_this3.showManipulatorToolbar()}else{_this3.body.emitter.emit(\"startSimulation\");_this3.showManipulatorToolbar()}})}else{throw new Error(\"The function for delete does not support two arguments (data, callback)\")}}else{this.body.data.edges.getDataSet().remove(selectedEdges);this.body.data.nodes.getDataSet().remove(selectedNodes);this.body.emitter.emit(\"startSimulation\");this.showManipulatorToolbar()}}},{key:\"_setup\",value:function _setup(){if(this.options.enabled===true){this.guiEnabled=true;this._createWrappers();if(this.editMode===false){this._createEditButton()}else{this.showManipulatorToolbar()}}else{this._removeManipulationDOM();this.guiEnabled=false}}},{key:\"_createWrappers\",value:function _createWrappers(){if(this.manipulationDiv===undefined){this.manipulationDiv=document.createElement(\"div\");this.manipulationDiv.className=\"vis-manipulation\";if(this.editMode===true){this.manipulationDiv.style.display=\"block\"}else{this.manipulationDiv.style.display=\"none\"}this.canvas.frame.appendChild(this.manipulationDiv)}if(this.editModeDiv===undefined){this.editModeDiv=document.createElement(\"div\");this.editModeDiv.className=\"vis-edit-mode\";if(this.editMode===true){this.editModeDiv.style.display=\"none\"}else{this.editModeDiv.style.display=\"block\"}this.canvas.frame.appendChild(this.editModeDiv)}if(this.closeDiv===undefined){this.closeDiv=document.createElement(\"div\");this.closeDiv.className=\"vis-close\";this.closeDiv.style.display=this.manipulationDiv.style.display;this.canvas.frame.appendChild(this.closeDiv)}}},{key:\"_getNewTargetNode\",value:function _getNewTargetNode(x,y){var controlNodeStyle=util.deepExtend({},this.options.controlNodeStyle);controlNodeStyle.id=\"targetNode\"+util.randomUUID();controlNodeStyle.hidden=false;controlNodeStyle.physics=false;controlNodeStyle.x=x;controlNodeStyle.y=y;var node=this.body.functions.createNode(controlNodeStyle);node.shape.boundingBox={left:x,right:x,top:y,bottom:y};return node}},{key:\"_createEditButton\",value:function _createEditButton(){this._clean();this.manipulationDOM={};util.recursiveDOMDelete(this.editModeDiv);var locale=this.options.locales[this.options.locale];var button=this._createButton(\"editMode\",\"vis-button vis-edit vis-edit-mode\",locale[\"edit\"]||this.options.locales[\"en\"][\"edit\"]);this.editModeDiv.appendChild(button);this._bindHammerToDiv(button,this.toggleEditMode.bind(this))}},{key:\"_clean\",value:function _clean(){this.inMode=false;if(this.guiEnabled===true){util.recursiveDOMDelete(this.editModeDiv);util.recursiveDOMDelete(this.manipulationDiv);this._cleanManipulatorHammers()}this._cleanupTemporaryNodesAndEdges();this._unbindTemporaryUIs();this._unbindTemporaryEvents();this.body.emitter.emit(\"restorePhysics\")}},{key:\"_cleanManipulatorHammers\",value:function _cleanManipulatorHammers(){if(this.manipulationHammers.length!=0){for(var i=0;i<this.manipulationHammers.length;i++){this.manipulationHammers[i].destroy()}this.manipulationHammers=[]}}},{key:\"_removeManipulationDOM\",value:function _removeManipulationDOM(){this._clean();util.recursiveDOMDelete(this.manipulationDiv);util.recursiveDOMDelete(this.editModeDiv);util.recursiveDOMDelete(this.closeDiv);if(this.manipulationDiv){this.canvas.frame.removeChild(this.manipulationDiv)}if(this.editModeDiv){this.canvas.frame.removeChild(this.editModeDiv)}if(this.closeDiv){this.canvas.frame.removeChild(this.closeDiv)}this.manipulationDiv=undefined;this.editModeDiv=undefined;this.closeDiv=undefined}},{key:\"_createSeperator\",value:function _createSeperator(){var index=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;this.manipulationDOM[\"seperatorLineDiv\"+index]=document.createElement(\"div\");this.manipulationDOM[\"seperatorLineDiv\"+index].className=\"vis-separator-line\";this.manipulationDiv.appendChild(this.manipulationDOM[\"seperatorLineDiv\"+index])}},{key:\"_createAddNodeButton\",value:function _createAddNodeButton(locale){var button=this._createButton(\"addNode\",\"vis-button vis-add\",locale[\"addNode\"]||this.options.locales[\"en\"][\"addNode\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.addNodeMode.bind(this))}},{key:\"_createAddEdgeButton\",value:function _createAddEdgeButton(locale){var button=this._createButton(\"addEdge\",\"vis-button vis-connect\",locale[\"addEdge\"]||this.options.locales[\"en\"][\"addEdge\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.addEdgeMode.bind(this))}},{key:\"_createEditNodeButton\",value:function _createEditNodeButton(locale){var button=this._createButton(\"editNode\",\"vis-button vis-edit\",locale[\"editNode\"]||this.options.locales[\"en\"][\"editNode\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.editNode.bind(this))}},{key:\"_createEditEdgeButton\",value:function _createEditEdgeButton(locale){var button=this._createButton(\"editEdge\",\"vis-button vis-edit\",locale[\"editEdge\"]||this.options.locales[\"en\"][\"editEdge\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.editEdgeMode.bind(this))}},{key:\"_createDeleteButton\",value:function _createDeleteButton(locale){var deleteBtnClass;if(this.options.rtl){deleteBtnClass=\"vis-button vis-delete-rtl\"}else{deleteBtnClass=\"vis-button vis-delete\"}var button=this._createButton(\"delete\",deleteBtnClass,locale[\"del\"]||this.options.locales[\"en\"][\"del\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.deleteSelected.bind(this))}},{key:\"_createBackButton\",value:function _createBackButton(locale){\nvar button=this._createButton(\"back\",\"vis-button vis-back\",locale[\"back\"]||this.options.locales[\"en\"][\"back\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.showManipulatorToolbar.bind(this))}},{key:\"_createButton\",value:function _createButton(id,className,label){var labelClassName=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\"vis-label\";this.manipulationDOM[id+\"Div\"]=document.createElement(\"div\");this.manipulationDOM[id+\"Div\"].className=className;this.manipulationDOM[id+\"Label\"]=document.createElement(\"div\");this.manipulationDOM[id+\"Label\"].className=labelClassName;this.manipulationDOM[id+\"Label\"].innerHTML=label;this.manipulationDOM[id+\"Div\"].appendChild(this.manipulationDOM[id+\"Label\"]);return this.manipulationDOM[id+\"Div\"]}},{key:\"_createDescription\",value:function _createDescription(label){this.manipulationDiv.appendChild(this._createButton(\"description\",\"vis-button vis-none\",label))}},{key:\"_temporaryBindEvent\",value:function _temporaryBindEvent(event,newFunction){this.temporaryEventFunctions.push({event:event,boundFunction:newFunction});this.body.emitter.on(event,newFunction)}},{key:\"_temporaryBindUI\",value:function _temporaryBindUI(UIfunctionName,newFunction){if(this.body.eventListeners[UIfunctionName]!==undefined){this.temporaryUIFunctions[UIfunctionName]=this.body.eventListeners[UIfunctionName];this.body.eventListeners[UIfunctionName]=newFunction}else{throw new Error(\"This UI function does not exist. Typo? You tried: \"+UIfunctionName+\" possible are: \"+(0,_stringify2[\"default\"])((0,_keys2[\"default\"])(this.body.eventListeners)))}}},{key:\"_unbindTemporaryUIs\",value:function _unbindTemporaryUIs(){for(var functionName in this.temporaryUIFunctions){if(this.temporaryUIFunctions.hasOwnProperty(functionName)){this.body.eventListeners[functionName]=this.temporaryUIFunctions[functionName];delete this.temporaryUIFunctions[functionName]}}this.temporaryUIFunctions={}}},{key:\"_unbindTemporaryEvents\",value:function _unbindTemporaryEvents(){for(var i=0;i<this.temporaryEventFunctions.length;i++){var eventName=this.temporaryEventFunctions[i].event;var boundFunction=this.temporaryEventFunctions[i].boundFunction;this.body.emitter.off(eventName,boundFunction)}this.temporaryEventFunctions=[]}},{key:\"_bindHammerToDiv\",value:function _bindHammerToDiv(domElement,boundFunction){var hammer=new Hammer(domElement,{});hammerUtil.onTouch(hammer,boundFunction);this.manipulationHammers.push(hammer)}},{key:\"_cleanupTemporaryNodesAndEdges\",value:function _cleanupTemporaryNodesAndEdges(){for(var i=0;i<this.temporaryIds.edges.length;i++){this.body.edges[this.temporaryIds.edges[i]].disconnect();delete this.body.edges[this.temporaryIds.edges[i]];var indexTempEdge=this.body.edgeIndices.indexOf(this.temporaryIds.edges[i]);if(indexTempEdge!==-1){this.body.edgeIndices.splice(indexTempEdge,1)}}for(var _i=0;_i<this.temporaryIds.nodes.length;_i++){delete this.body.nodes[this.temporaryIds.nodes[_i]];var indexTempNode=this.body.nodeIndices.indexOf(this.temporaryIds.nodes[_i]);if(indexTempNode!==-1){this.body.nodeIndices.splice(indexTempNode,1)}}this.temporaryIds={nodes:[],edges:[]}}},{key:\"_controlNodeTouch\",value:function _controlNodeTouch(event){this.selectionHandler.unselectAll();this.lastTouch=this.body.functions.getPointer(event.center);this.lastTouch.translation=util.extend({},this.body.view.translation)}},{key:\"_controlNodeDragStart\",value:function _controlNodeDragStart(event){var pointer=this.lastTouch;var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var from=this.body.nodes[this.temporaryIds.nodes[0]];var to=this.body.nodes[this.temporaryIds.nodes[1]];var edge=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=undefined;var fromSelect=from.isOverlappingWith(pointerObj);var toSelect=to.isOverlappingWith(pointerObj);if(fromSelect===true){this.selectedControlNode=from;edge.edgeType.from=from}else if(toSelect===true){this.selectedControlNode=to;edge.edgeType.to=to}if(this.selectedControlNode!==undefined){this.selectionHandler.selectObject(this.selectedControlNode)}this.body.emitter.emit(\"_redraw\")}},{key:\"_controlNodeDrag\",value:function _controlNodeDrag(event){this.body.emitter.emit(\"disablePhysics\");var pointer=this.body.functions.getPointer(event.center);var pos=this.canvas.DOMtoCanvas(pointer);if(this.selectedControlNode!==undefined){this.selectedControlNode.x=pos.x;this.selectedControlNode.y=pos.y}else{var diffX=pointer.x-this.lastTouch.x;var diffY=pointer.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+diffX,y:this.lastTouch.translation.y+diffY}}this.body.emitter.emit(\"_redraw\")}},{key:\"_controlNodeDragEnd\",value:function _controlNodeDragEnd(event){var pointer=this.body.functions.getPointer(event.center);var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var edge=this.body.edges[this.edgeBeingEditedId];if(this.selectedControlNode===undefined){return}this.selectionHandler.unselectAll();var overlappingNodeIds=this.selectionHandler._getAllNodesOverlappingWith(pointerObj);var node=undefined;for(var i=overlappingNodeIds.length-1;i>=0;i--){if(overlappingNodeIds[i]!==this.selectedControlNode.id){node=this.body.nodes[overlappingNodeIds[i]];break}}if(node!==undefined&&this.selectedControlNode!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{var from=this.body.nodes[this.temporaryIds.nodes[0]];if(this.selectedControlNode.id===from.id){this._performEditEdge(node.id,edge.to.id)}else{this._performEditEdge(edge.from.id,node.id)}}}else{edge.updateEdgeType();this.body.emitter.emit(\"restorePhysics\")}this.body.emitter.emit(\"_redraw\")}},{key:\"_handleConnect\",value:function _handleConnect(event){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(event.center);this.lastTouch.translation=util.extend({},this.body.view.translation);var pointer=this.lastTouch;var node=this.selectionHandler.getNodeAt(pointer);if(node!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{var targetNode=this._getNewTargetNode(node.x,node.y);this.body.nodes[targetNode.id]=targetNode;this.body.nodeIndices.push(targetNode.id);var connectionEdge=this.body.functions.createEdge({id:\"connectionEdge\"+util.randomUUID(),from:node.id,to:targetNode.id,physics:false,smooth:{enabled:true,type:\"continuous\",roundness:.5}});this.body.edges[connectionEdge.id]=connectionEdge;this.body.edgeIndices.push(connectionEdge.id);this.temporaryIds.nodes.push(targetNode.id);this.temporaryIds.edges.push(connectionEdge.id)}}this.touchTime=(new Date).valueOf()}}},{key:\"_dragControlNode\",value:function _dragControlNode(event){var pointer=this.body.functions.getPointer(event.center);if(this.temporaryIds.nodes[0]!==undefined){var targetNode=this.body.nodes[this.temporaryIds.nodes[0]];targetNode.x=this.canvas._XconvertDOMtoCanvas(pointer.x);targetNode.y=this.canvas._YconvertDOMtoCanvas(pointer.y);this.body.emitter.emit(\"_redraw\")}else{var diffX=pointer.x-this.lastTouch.x;var diffY=pointer.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+diffX,y:this.lastTouch.translation.y+diffY}}}},{key:\"_finishConnect\",value:function _finishConnect(event){var pointer=this.body.functions.getPointer(event.center);var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var connectFromId=undefined;if(this.temporaryIds.edges[0]!==undefined){connectFromId=this.body.edges[this.temporaryIds.edges[0]].fromId}var overlappingNodeIds=this.selectionHandler._getAllNodesOverlappingWith(pointerObj);var node=undefined;for(var i=overlappingNodeIds.length-1;i>=0;i--){if(this.temporaryIds.nodes.indexOf(overlappingNodeIds[i])===-1){node=this.body.nodes[overlappingNodeIds[i]];break}}this._cleanupTemporaryNodesAndEdges();if(node!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{if(this.body.nodes[connectFromId]!==undefined&&this.body.nodes[node.id]!==undefined){this._performAddEdge(connectFromId,node.id)}}}this.body.emitter.emit(\"_redraw\")}},{key:\"_dragStartEdge\",value:function _dragStartEdge(event){var pointer=this.lastTouch;this.selectionHandler._generateClickEvent(\"dragStart\",event,pointer,undefined,true)}},{key:\"_performAddNode\",value:function _performAddNode(clickData){var _this4=this;var defaultData={id:util.randomUUID(),x:clickData.pointer.canvas.x,y:clickData.pointer.canvas.y,label:\"new\"};if(typeof this.options.addNode===\"function\"){if(this.options.addNode.length===2){this.options.addNode(defaultData,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this4.inMode===\"addNode\"){_this4.body.data.nodes.getDataSet().add(finalizedData);_this4.showManipulatorToolbar()}})}else{this.showManipulatorToolbar();throw new Error(\"The function for add does not support two arguments (data,callback)\")}}else{this.body.data.nodes.getDataSet().add(defaultData);this.showManipulatorToolbar()}}},{key:\"_performAddEdge\",value:function _performAddEdge(sourceNodeId,targetNodeId){var _this5=this;var defaultData={from:sourceNodeId,to:targetNodeId};if(typeof this.options.addEdge===\"function\"){if(this.options.addEdge.length===2){this.options.addEdge(defaultData,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this5.inMode===\"addEdge\"){_this5.body.data.edges.getDataSet().add(finalizedData);_this5.selectionHandler.unselectAll();_this5.showManipulatorToolbar()}})}else{throw new Error(\"The function for connect does not support two arguments (data,callback)\")}}else{this.body.data.edges.getDataSet().add(defaultData);this.selectionHandler.unselectAll();this.showManipulatorToolbar()}}},{key:\"_performEditEdge\",value:function _performEditEdge(sourceNodeId,targetNodeId){var _this6=this;var defaultData={id:this.edgeBeingEditedId,from:sourceNodeId,to:targetNodeId,label:this.body.data.edges._data[this.edgeBeingEditedId].label};var eeFunct=this.options.editEdge;if((typeof eeFunct===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(eeFunct))===\"object\"){eeFunct=eeFunct.editWithoutDrag}if(typeof eeFunct===\"function\"){if(eeFunct.length===2){eeFunct(defaultData,function(finalizedData){if(finalizedData===null||finalizedData===undefined||_this6.inMode!==\"editEdge\"){_this6.body.edges[defaultData.id].updateEdgeType();_this6.body.emitter.emit(\"_redraw\");_this6.showManipulatorToolbar()}else{_this6.body.data.edges.getDataSet().update(finalizedData);_this6.selectionHandler.unselectAll();_this6.showManipulatorToolbar()}})}else{throw new Error(\"The function for edit does not support two arguments (data, callback)\")}}else{this.body.data.edges.getDataSet().update(defaultData);this.selectionHandler.unselectAll();this.showManipulatorToolbar()}}}]);return ManipulationSystem}();exports[\"default\"]=ManipulationSystem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _FloydWarshall=__webpack_require__(239);var _FloydWarshall2=_interopRequireDefault(_FloydWarshall);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var KamadaKawai=function(){function KamadaKawai(body,edgeLength,edgeStrength){(0,_classCallCheck3[\"default\"])(this,KamadaKawai);this.body=body;this.springLength=edgeLength;this.springConstant=edgeStrength;this.distanceSolver=new _FloydWarshall2[\"default\"]}(0,_createClass3[\"default\"])(KamadaKawai,[{key:\"setOptions\",value:function setOptions(options){if(options){if(options.springLength){this.springLength=options.springLength}if(options.springConstant){this.springConstant=options.springConstant}}}},{key:\"solve\",value:function solve(nodesArray,edgesArray){var ignoreClusters=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var D_matrix=this.distanceSolver.getDistances(this.body,nodesArray,edgesArray);this._createL_matrix(D_matrix);this._createK_matrix(D_matrix);this._createE_matrix();var threshold=.01;var innerThreshold=1;var iterations=0;var maxIterations=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3));var maxInnerIterations=5;var maxEnergy=1e9;var highE_nodeId=0,dE_dx=0,dE_dy=0,delta_m=0,subIterations=0;while(maxEnergy>threshold&&iterations<maxIterations){iterations+=1;var _getHighestEnergyNode2=this._getHighestEnergyNode(ignoreClusters);var _getHighestEnergyNode3=(0,_slicedToArray3[\"default\"])(_getHighestEnergyNode2,4);highE_nodeId=_getHighestEnergyNode3[0];maxEnergy=_getHighestEnergyNode3[1];dE_dx=_getHighestEnergyNode3[2];dE_dy=_getHighestEnergyNode3[3];delta_m=maxEnergy;subIterations=0;while(delta_m>innerThreshold&&subIterations<maxInnerIterations){subIterations+=1;this._moveNode(highE_nodeId,dE_dx,dE_dy);var _getEnergy2=this._getEnergy(highE_nodeId);var _getEnergy3=(0,_slicedToArray3[\"default\"])(_getEnergy2,3);delta_m=_getEnergy3[0];dE_dx=_getEnergy3[1];dE_dy=_getEnergy3[2]}}}},{key:\"_getHighestEnergyNode\",value:function _getHighestEnergyNode(ignoreClusters){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var maxEnergy=0;var maxEnergyNodeId=nodesArray[0];var dE_dx_max=0,dE_dy_max=0;for(var nodeIdx=0;nodeIdx<nodesArray.length;nodeIdx++){var m=nodesArray[nodeIdx];if(nodes[m].predefinedPosition===false||nodes[m].isCluster===true&&ignoreClusters===true||nodes[m].options.fixed.x===true||nodes[m].options.fixed.y===true){var _getEnergy4=this._getEnergy(m),_getEnergy5=(0,_slicedToArray3[\"default\"])(_getEnergy4,3),delta_m=_getEnergy5[0],dE_dx=_getEnergy5[1],dE_dy=_getEnergy5[2];if(maxEnergy<delta_m){maxEnergy=delta_m;maxEnergyNodeId=m;dE_dx_max=dE_dx;dE_dy_max=dE_dy}}}return[maxEnergyNodeId,maxEnergy,dE_dx_max,dE_dy_max]}},{key:\"_getEnergy\",value:function _getEnergy(m){var _E_sums$m=(0,_slicedToArray3[\"default\"])(this.E_sums[m],2),dE_dx=_E_sums$m[0],dE_dy=_E_sums$m[1];var delta_m=Math.sqrt(Math.pow(dE_dx,2)+Math.pow(dE_dy,2));return[delta_m,dE_dx,dE_dy]}},{key:\"_moveNode\",value:function _moveNode(m,dE_dx,dE_dy){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var d2E_dx2=0;var d2E_dxdy=0;var d2E_dy2=0;var x_m=nodes[m].x;var y_m=nodes[m].y;var km=this.K_matrix[m];var lm=this.L_matrix[m];for(var iIdx=0;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var x_i=nodes[i].x;var y_i=nodes[i].y;var kmat=km[i];var lmat=lm[i];var denominator=1/Math.pow(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2),1.5);d2E_dx2+=kmat*(1-lmat*Math.pow(y_m-y_i,2)*denominator);d2E_dxdy+=kmat*(lmat*(x_m-x_i)*(y_m-y_i)*denominator);d2E_dy2+=kmat*(1-lmat*Math.pow(x_m-x_i,2)*denominator)}}var A=d2E_dx2,B=d2E_dxdy,C=dE_dx,D=d2E_dy2,E=dE_dy;var dy=(C/A+E/B)/(B/A-D/B);var dx=-(B*dy+C)/A;nodes[m].x+=dx;nodes[m].y+=dy;this._updateE_matrix(m)}},{key:\"_createL_matrix\",value:function _createL_matrix(D_matrix){var nodesArray=this.body.nodeIndices;var edgeLength=this.springLength;this.L_matrix=[];for(var i=0;i<nodesArray.length;i++){this.L_matrix[nodesArray[i]]={};for(var j=0;j<nodesArray.length;j++){this.L_matrix[nodesArray[i]][nodesArray[j]]=edgeLength*D_matrix[nodesArray[i]][nodesArray[j]]}}}},{key:\"_createK_matrix\",value:function _createK_matrix(D_matrix){var nodesArray=this.body.nodeIndices;var edgeStrength=this.springConstant;this.K_matrix=[];for(var i=0;i<nodesArray.length;i++){this.K_matrix[nodesArray[i]]={};for(var j=0;j<nodesArray.length;j++){this.K_matrix[nodesArray[i]][nodesArray[j]]=edgeStrength*Math.pow(D_matrix[nodesArray[i]][nodesArray[j]],-2)}}}},{key:\"_createE_matrix\",value:function _createE_matrix(){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;this.E_matrix={};this.E_sums={};for(var mIdx=0;mIdx<nodesArray.length;mIdx++){this.E_matrix[nodesArray[mIdx]]=[]}for(var _mIdx=0;_mIdx<nodesArray.length;_mIdx++){var m=nodesArray[_mIdx];var x_m=nodes[m].x;var y_m=nodes[m].y;var dE_dx=0;var dE_dy=0;for(var iIdx=_mIdx;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var x_i=nodes[i].x;var y_i=nodes[i].y;var denominator=1/Math.sqrt(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2));this.E_matrix[m][iIdx]=[this.K_matrix[m][i]*(x_m-x_i-this.L_matrix[m][i]*(x_m-x_i)*denominator),this.K_matrix[m][i]*(y_m-y_i-this.L_matrix[m][i]*(y_m-y_i)*denominator)];this.E_matrix[i][_mIdx]=this.E_matrix[m][iIdx];dE_dx+=this.E_matrix[m][iIdx][0];dE_dy+=this.E_matrix[m][iIdx][1]}}this.E_sums[m]=[dE_dx,dE_dy]}}},{key:\"_updateE_matrix\",value:function _updateE_matrix(m){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var colm=this.E_matrix[m];var kcolm=this.K_matrix[m];var lcolm=this.L_matrix[m];var x_m=nodes[m].x;var y_m=nodes[m].y;var dE_dx=0;var dE_dy=0;for(var iIdx=0;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var cell=colm[iIdx];var oldDx=cell[0];var oldDy=cell[1];var x_i=nodes[i].x;var y_i=nodes[i].y;var denominator=1/Math.sqrt(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2));var dx=kcolm[i]*(x_m-x_i-lcolm[i]*(x_m-x_i)*denominator);var dy=kcolm[i]*(y_m-y_i-lcolm[i]*(y_m-y_i)*denominator);colm[iIdx]=[dx,dy];dE_dx+=dx;dE_dy+=dy;var sum=this.E_sums[i];sum[0]+=dx-oldDx;sum[1]+=dy-oldDy}}this.E_sums[m]=[dE_dx,dE_dy]}}]);return KamadaKawai}();exports[\"default\"]=KamadaKawai},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var FloydWarshall=function(){function FloydWarshall(){(0,_classCallCheck3[\"default\"])(this,FloydWarshall)}(0,_createClass3[\"default\"])(FloydWarshall,[{key:\"getDistances\",value:function getDistances(body,nodesArray,edgesArray){var D_matrix={};var edges=body.edges;for(var i=0;i<nodesArray.length;i++){var node=nodesArray[i];var cell={};D_matrix[node]=cell;for(var j=0;j<nodesArray.length;j++){cell[nodesArray[j]]=i==j?0:1e9}}for(var _i=0;_i<edgesArray.length;_i++){var edge=edges[edgesArray[_i]];if(edge.connected===true&&D_matrix[edge.fromId]!==undefined&&D_matrix[edge.toId]!==undefined){D_matrix[edge.fromId][edge.toId]=1;D_matrix[edge.toId][edge.fromId]=1}}var nodeCount=nodesArray.length;for(var k=0;k<nodeCount;k++){var knode=nodesArray[k];var kcolm=D_matrix[knode];for(var _i2=0;_i2<nodeCount-1;_i2++){var inode=nodesArray[_i2];var icolm=D_matrix[inode];for(var _j=_i2+1;_j<nodeCount;_j++){var jnode=nodesArray[_j];var jcolm=D_matrix[jnode];var val=Math.min(icolm[jnode],icolm[knode]+kcolm[jnode]);icolm[jnode]=val;jcolm[inode]=val}}}return D_matrix}}]);return FloydWarshall}();exports[\"default\"]=FloydWarshall}])});\n",
"type": "application/javascript",
"module-type": "library"
}
}
}
$:/core/ui/EditTemplate/body/preview/diffs-shadow
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/core/ui/ControlPanel/Basics
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/core/ui/ControlPanel/EditorTypes
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/core/ui/ControlPanel/Info
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft
$:/core/ui/MoreSideBar/All
$:/plugins/felixhayashi/tiddlymap/hook/editor
{
"tiddlers": {
"$:/info/browser": {
"title": "$:/info/browser",
"text": "yes"
},
"$:/info/node": {
"title": "$:/info/node",
"text": "no"
},
"$:/info/url/full": {
"title": "$:/info/url/full",
"text": "https://cuitingting6.github.io/CC/cuitingting.html"
},
"$:/info/url/host": {
"title": "$:/info/url/host",
"text": "cuitingting6.github.io"
},
"$:/info/url/hostname": {
"title": "$:/info/url/hostname",
"text": "cuitingting6.github.io"
},
"$:/info/url/protocol": {
"title": "$:/info/url/protocol",
"text": "https:"
},
"$:/info/url/port": {
"title": "$:/info/url/port",
"text": ""
},
"$:/info/url/pathname": {
"title": "$:/info/url/pathname",
"text": "/CC/cuitingting.html"
},
"$:/info/url/search": {
"title": "$:/info/url/search",
"text": ""
},
"$:/info/url/origin": {
"title": "$:/info/url/origin",
"text": "https://cuitingting6.github.io"
},
"$:/info/browser/screen/width": {
"title": "$:/info/browser/screen/width",
"text": "1280"
},
"$:/info/browser/screen/height": {
"title": "$:/info/browser/screen/height",
"text": "720"
},
"$:/info/browser/language": {
"title": "$:/info/browser/language",
"text": "zh-CN"
}
}
}
{
"tiddlers": {
"$:/themes/tiddlywiki/snowwhite/base": {
"title": "$:/themes/tiddlywiki/snowwhite/base",
"tags": "[[$:/tags/Stylesheet]]",
"text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\n.tc-sidebar-header {\n\ttext-shadow: 0 1px 0 <<colour sidebar-foreground-shadow>>;\n}\n\n.tc-tiddler-info {\n\t<<box-shadow \"inset 1px 2px 3px rgba(0,0,0,0.1)\">>\n}\n\n@media screen {\n\t.tc-tiddler-frame {\n\t\t<<box-shadow \"1px 1px 5px rgba(0, 0, 0, 0.3)\">>\n\t}\n}\n\n@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\t.tc-tiddler-frame {\n\t\t<<box-shadow none>>\n\t}\n}\n\n.tc-page-controls button svg, .tc-tiddler-controls button svg, .tc-topbar button svg {\n\t<<transition \"fill 150ms ease-in-out\">>\n}\n\n.tc-tiddler-controls button.tc-selected,\n.tc-page-controls button.tc-selected {\n\t<<filter \"drop-shadow(0px -1px 2px rgba(0,0,0,0.25))\">>\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor {\n\t<<box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\">>\n}\n\n.tc-edit-tags {\n\t<<box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\">>\n}\n\n.tc-tiddler-frame .tc-edit-tags input.tc-edit-texteditor {\n\t<<box-shadow \"none\">>\n\tborder: none;\n\toutline: none;\n}\n\ntextarea.tc-edit-texteditor {\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\ncanvas.tc-edit-bitmapeditor {\n\t<<box-shadow \"2px 2px 5px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-drop-down {\n\tborder-radius: 4px;\n\t<<box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-block-dropdown {\n\tborder-radius: 4px;\n\t<<box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-modal {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.3)\">>\n}\n\n.tc-modal-footer {\n\tborder-radius: 0 0 6px 6px;\n\t<<box-shadow \"inset 0 1px 0 #fff\">>;\n}\n\n\n.tc-alert {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.6)\">>\n}\n\n.tc-notification {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.3)\">>\n\ttext-shadow: 0 1px 0 rgba(255,255,255, 0.8);\n}\n\n.tc-sidebar-lists .tc-tab-set .tc-tab-divider {\n\tborder-top: none;\n\theight: 1px;\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.0) 100%\">>\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.01) 0%, rgba(0,0,0,0.1) 100%\">>\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.05) 0%, rgba(255,255,255,0.05) 100%\">>\n}\n\n.tc-message-box img {\n\t<<box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\">>\n}\n\n.tc-plugin-info {\n\t<<box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\">>\n}\n"
}
}
}
{
"tiddlers": {
"$:/themes/tiddlywiki/vanilla/themetweaks": {
"title": "$:/themes/tiddlywiki/vanilla/themetweaks",
"tags": "$:/tags/ControlPanel/Appearance",
"caption": "{{$:/language/ThemeTweaks/ThemeTweaks}}",
"text": "\\define lingo-base() $:/language/ThemeTweaks/\n\n\\define replacement-text()\n[img[$(imageTitle)$]]\n\\end\n\n\\define backgroundimage-dropdown()\n<div class=\"tc-drop-down-wrapper\">\n<$button popup=<<qualify \"$:/state/popup/themetweaks/backgroundimage\">> class=\"tc-btn-invisible tc-btn-dropdown\">{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/themetweaks/backgroundimage\">> type=\"popup\" position=\"belowleft\" text=\"\" default=\"\">\n<div class=\"tc-drop-down\">\n<$macrocall $name=\"image-picker\" actions=\"\"\"\n\n<$action-setfield\n\t$tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"\n\t$value=<<imageTitle>>\n/>\n\n\"\"\"/>\n</div>\n</$reveal>\n</div>\n\\end\n\n\\define backgroundimageattachment-dropdown()\n<$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment\" default=\"scroll\">\n<option value=\"scroll\"><<lingo Settings/BackgroundImageAttachment/Scroll>></option>\n<option value=\"fixed\"><<lingo Settings/BackgroundImageAttachment/Fixed>></option>\n</$select>\n\\end\n\n\\define backgroundimagesize-dropdown()\n<$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize\" default=\"scroll\">\n<option value=\"auto\"><<lingo Settings/BackgroundImageSize/Auto>></option>\n<option value=\"cover\"><<lingo Settings/BackgroundImageSize/Cover>></option>\n<option value=\"contain\"><<lingo Settings/BackgroundImageSize/Contain>></option>\n</$select>\n\\end\n\n<<lingo ThemeTweaks/Hint>>\n\n! <<lingo Options>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"><<lingo Options/SidebarLayout>></$link> |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"><option value=\"fixed-fluid\"><<lingo Options/SidebarLayout/Fixed-Fluid>></option><option value=\"fluid-fixed\"><<lingo Options/SidebarLayout/Fluid-Fixed>></option></$select> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"><<lingo Options/StickyTitles>></$link><br>//<<lingo Options/StickyTitles/Hint>>// |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"><option value=\"no\">{{$:/language/No}}</option><option value=\"yes\">{{$:/language/Yes}}</option></$select> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"><<lingo Options/CodeWrapping>></$link> |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"><option value=\"pre\">{{$:/language/No}}</option><option value=\"pre-wrap\">{{$:/language/Yes}}</option></$select> |\n\n! <<lingo Settings>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\"><<lingo Settings/FontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\"><<lingo Settings/CodeFontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\"><<lingo Settings/EditorFontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"><<lingo Settings/BackgroundImage>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\" default=\"\" tag=\"input\"/> |<<backgroundimage-dropdown>> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment\"><<lingo Settings/BackgroundImageAttachment>></$link> |<<backgroundimageattachment-dropdown>> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize\"><<lingo Settings/BackgroundImageSize>></$link> |<<backgroundimagesize-dropdown>> | |\n\n! <<lingo Metrics>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/fontsize\"><<lingo Metrics/FontSize>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/fontsize\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/lineheight\"><<lingo Metrics/LineHeight>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/lineheight\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize\"><<lingo Metrics/BodyFontSize>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/bodylineheight\"><<lingo Metrics/BodyLineHeight>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/bodylineheight\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storyleft\"><<lingo Metrics/StoryLeft>></$link><br>//<<lingo Metrics/StoryLeft/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storyleft\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storytop\"><<lingo Metrics/StoryTop>></$link><br>//<<lingo Metrics/StoryTop/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storytop\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storyright\"><<lingo Metrics/StoryRight>></$link><br>//<<lingo Metrics/StoryRight/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storyright\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\"><<lingo Metrics/StoryWidth>></$link><br>//<<lingo Metrics/StoryWidth/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\"><<lingo Metrics/TiddlerWidth>></$link><br>//<<lingo Metrics/TiddlerWidth/Hint>>//<br> |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\"><<lingo Metrics/SidebarBreakpoint>></$link><br>//<<lingo Metrics/SidebarBreakpoint/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\"><<lingo Metrics/SidebarWidth>></$link><br>//<<lingo Metrics/SidebarWidth/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\" default=\"\" tag=\"input\"/> |\n"
},
"$:/themes/tiddlywiki/vanilla/base": {
"title": "$:/themes/tiddlywiki/vanilla/base",
"tags": "[[$:/tags/Stylesheet]]",
"text": "\\define custom-background-datauri()\n<$set name=\"background\" value={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}}>\n<$list filter=\"[<background>is[image]]\">\n`background: url(`\n<$list filter=\"[<background>!has[_canonical_uri]]\">\n`\"`<$macrocall $name=\"datauri\" title={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}}/>`\"`\n</$list>\n<$list filter=\"[<background>has[_canonical_uri]]\">\n`\"`<$view tiddler={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}} field=\"_canonical_uri\"/>`\"`\n</$list>\n`) center center;`\n`background-attachment: `{{$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment}}`;\n-webkit-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\n-moz-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\n-o-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\nbackground-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;`\n</$list>\n</$set>\n\\end\n\n\\define if-fluid-fixed(text,hiddenSidebarText)\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" type=\"match\" text=\"fluid-fixed\">\n$text$\n<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"yes\" default=\"yes\">\n$hiddenSidebarText$\n</$reveal>\n</$reveal>\n\\end\n\n\\define if-editor-height-fixed(then,else)\n<$reveal state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"fixed\">\n$then$\n</$reveal>\n<$reveal state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"auto\">\n$else$\n</$reveal>\n\\end\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock\n\n/*\n** Start with the normalize CSS reset, and then belay some of its effects\n*/\n\n{{$:/themes/tiddlywiki/vanilla/reset}}\n\n*, input[type=\"search\"] {\n\tbox-sizing: border-box;\n\t-moz-box-sizing: border-box;\n\t-webkit-box-sizing: border-box;\n}\n\nhtml button {\n\tline-height: 1.2;\n\tcolor: <<colour button-foreground>>;\n\tbackground: <<colour button-background>>;\n\tborder-color: <<colour button-border>>;\n}\n\n/*\n** Basic element styles\n*/\n\nhtml {\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/fontfamily}};\n\ttext-rendering: optimizeLegibility; /* Enables kerning and ligatures etc. */\n\t-webkit-font-smoothing: antialiased;\n\t-moz-osx-font-smoothing: grayscale;\n}\n\nhtml:-webkit-full-screen {\n\tbackground-color: <<colour page-background>>;\n}\n\nbody.tc-body {\n\tfont-size: {{$:/themes/tiddlywiki/vanilla/metrics/fontsize}};\n\tline-height: {{$:/themes/tiddlywiki/vanilla/metrics/lineheight}};\n\tword-wrap: break-word;\n\t<<custom-background-datauri>>\n\tcolor: <<colour foreground>>;\n\tbackground-color: <<colour page-background>>;\n\tfill: <<colour foreground>>;\n}\n\n<<if-background-attachment \"\"\"\n\nbody.tc-body {\n background-color: transparent;\n}\n\n\"\"\">>\n\nh1, h2, h3, h4, h5, h6 {\n\tline-height: 1.2;\n\tfont-weight: 300;\n}\n\npre {\n\tdisplay: block;\n\tpadding: 14px;\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n\tword-break: normal;\n\tword-wrap: break-word;\n\twhite-space: {{$:/themes/tiddlywiki/vanilla/options/codewrapping}};\n\tbackground-color: <<colour pre-background>>;\n\tborder: 1px solid <<colour pre-border>>;\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}};\n}\n\ncode {\n\tcolor: <<colour code-foreground>>;\n\tbackground-color: <<colour code-background>>;\n\tborder: 1px solid <<colour code-border>>;\n\twhite-space: {{$:/themes/tiddlywiki/vanilla/options/codewrapping}};\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}};\n}\n\nblockquote {\n\tborder-left: 5px solid <<colour blockquote-bar>>;\n\tmargin-left: 25px;\n\tpadding-left: 10px;\n\tquotes: \"\\201C\"\"\\201D\"\"\\2018\"\"\\2019\";\n}\n\nblockquote > div {\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n}\n\nblockquote.tc-big-quote {\n\tfont-family: Georgia, serif;\n\tposition: relative;\n\tbackground: <<colour pre-background>>;\n\tborder-left: none;\n\tmargin-left: 50px;\n\tmargin-right: 50px;\n\tpadding: 10px;\n border-radius: 8px;\n}\n\nblockquote.tc-big-quote cite:before {\n\tcontent: \"\\2014 \\2009\";\n}\n\nblockquote.tc-big-quote:before {\n\tfont-family: Georgia, serif;\n\tcolor: <<colour blockquote-bar>>;\n\tcontent: open-quote;\n\tfont-size: 8em;\n\tline-height: 0.1em;\n\tmargin-right: 0.25em;\n\tvertical-align: -0.4em;\n\tposition: absolute;\n left: -50px;\n top: 42px;\n}\n\nblockquote.tc-big-quote:after {\n\tfont-family: Georgia, serif;\n\tcolor: <<colour blockquote-bar>>;\n\tcontent: close-quote;\n\tfont-size: 8em;\n\tline-height: 0.1em;\n\tmargin-right: 0.25em;\n\tvertical-align: -0.4em;\n\tposition: absolute;\n right: -80px;\n bottom: -20px;\n}\n\ndl dt {\n\tfont-weight: bold;\n\tmargin-top: 6px;\n}\n\nbutton, textarea, input, select {\n\toutline-color: <<colour primary>>;\n}\n\ntextarea,\ninput[type=text],\ninput[type=search],\ninput[type=\"\"],\ninput:not([type]) {\n\tcolor: <<colour foreground>>;\n\tbackground: <<colour background>>;\n}\n\ninput[type=\"checkbox\"] {\n vertical-align: middle;\n}\n\n.tc-muted {\n\tcolor: <<colour muted-foreground>>;\n}\n\nsvg.tc-image-button {\n\tpadding: 0px 1px 1px 0px;\n}\n\n.tc-icon-wrapper > svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\nkbd {\n\tdisplay: inline-block;\n\tpadding: 3px 5px;\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tcolor: <<colour foreground>>;\n\tvertical-align: middle;\n\tbackground-color: <<colour background>>;\n\tborder: solid 1px <<colour muted-foreground>>;\n\tborder-bottom-color: <<colour muted-foreground>>;\n\tborder-radius: 3px;\n\tbox-shadow: inset 0 -1px 0 <<colour muted-foreground>>;\n}\n\n/*\nMarkdown likes putting code elements inside pre elements\n*/\npre > code {\n\tpadding: 0;\n\tborder: none;\n\tbackground-color: inherit;\n\tcolor: inherit;\n}\n\ntable {\n\tborder: 1px solid <<colour table-border>>;\n\twidth: auto;\n\tmax-width: 100%;\n\tcaption-side: bottom;\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n\t/* next 2 elements needed, since normalize 8.0.1 */\n\tborder-collapse: collapse;\n\tborder-spacing: 0;\n}\n\ntable th, table td {\n\tpadding: 0 7px 0 7px;\n\tborder-top: 1px solid <<colour table-border>>;\n\tborder-left: 1px solid <<colour table-border>>;\n}\n\ntable thead tr td, table th {\n\tbackground-color: <<colour table-header-background>>;\n\tfont-weight: bold;\n}\n\ntable tfoot tr td {\n\tbackground-color: <<colour table-footer-background>>;\n}\n\n.tc-csv-table {\n\twhite-space: nowrap;\n}\n\n.tc-tiddler-frame img,\n.tc-tiddler-frame svg,\n.tc-tiddler-frame canvas,\n.tc-tiddler-frame embed,\n.tc-tiddler-frame iframe {\n\tmax-width: 100%;\n}\n\n.tc-tiddler-body > embed,\n.tc-tiddler-body > iframe {\n\twidth: 100%;\n\theight: 600px;\n}\n\n/*\n** Links\n*/\n\nbutton.tc-tiddlylink,\na.tc-tiddlylink {\n\ttext-decoration: none;\n\tfont-weight: 500;\n\tcolor: <<colour tiddler-link-foreground>>;\n\t-webkit-user-select: inherit; /* Otherwise the draggable attribute makes links impossible to select */\n}\n\n.tc-sidebar-lists a.tc-tiddlylink {\n\tcolor: <<colour sidebar-tiddler-link-foreground>>;\n}\n\n.tc-sidebar-lists a.tc-tiddlylink:hover {\n\tcolor: <<colour sidebar-tiddler-link-foreground-hover>>;\n}\n\nbutton.tc-tiddlylink:hover,\na.tc-tiddlylink:hover {\n\ttext-decoration: underline;\n}\n\na.tc-tiddlylink-resolves {\n}\n\na.tc-tiddlylink-shadow {\n\tfont-weight: bold;\n}\n\na.tc-tiddlylink-shadow.tc-tiddlylink-resolves {\n\tfont-weight: normal;\n}\n\na.tc-tiddlylink-missing {\n\tfont-style: italic;\n}\n\na.tc-tiddlylink-external {\n\ttext-decoration: underline;\n\tcolor: <<colour external-link-foreground>>;\n\tbackground-color: <<colour external-link-background>>;\n}\n\na.tc-tiddlylink-external:visited {\n\tcolor: <<colour external-link-foreground-visited>>;\n\tbackground-color: <<colour external-link-background-visited>>;\n}\n\na.tc-tiddlylink-external:hover {\n\tcolor: <<colour external-link-foreground-hover>>;\n\tbackground-color: <<colour external-link-background-hover>>;\n}\n\n/*\n** Drag and drop styles\n*/\n\n.tc-tiddler-dragger {\n\tposition: relative;\n\tz-index: -10000;\n}\n\n.tc-tiddler-dragger-inner {\n\tposition: absolute;\n\ttop: -1000px;\n\tleft: -1000px;\n\tdisplay: inline-block;\n\tpadding: 8px 20px;\n\tfont-size: 16.9px;\n\tfont-weight: bold;\n\tline-height: 20px;\n\tcolor: <<colour dragger-foreground>>;\n\ttext-shadow: 0 1px 0 rgba(0, 0, 0, 1);\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n\tbackground-color: <<colour dragger-background>>;\n\tborder-radius: 20px;\n}\n\n.tc-tiddler-dragger-cover {\n\tposition: absolute;\n\tbackground-color: <<colour page-background>>;\n}\n\n.tc-dropzone {\n\tposition: relative;\n}\n\n.tc-dropzone.tc-dragover:before {\n\tz-index: 10000;\n\tdisplay: block;\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbackground: <<colour dropzone-background>>;\n\ttext-align: center;\n\tcontent: \"<<lingo DropMessage>>\";\n}\n\n.tc-droppable > .tc-droppable-placeholder {\n\tdisplay: none;\n}\n\n.tc-droppable.tc-dragover > .tc-droppable-placeholder {\n\tdisplay: block;\n\tborder: 2px dashed <<colour dropzone-background>>;\n}\n\n.tc-draggable {\n\tcursor: move;\n}\n\n.tc-sidebar-tab-open .tc-droppable-placeholder, .tc-tagged-draggable-list .tc-droppable-placeholder,\n.tc-links-draggable-list .tc-droppable-placeholder {\n\tline-height: 2em;\n\theight: 2em;\n}\n\n.tc-sidebar-tab-open-item {\n\tposition: relative;\n}\n\n.tc-sidebar-tab-open .tc-btn-invisible.tc-btn-mini svg {\n\tfont-size: 0.7em;\n\tfill: <<colour muted-foreground>>;\n}\n\n/*\n** Plugin reload warning\n*/\n\n.tc-plugin-reload-warning {\n\tz-index: 1000;\n\tdisplay: block;\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbackground: <<colour alert-background>>;\n\ttext-align: center;\n}\n\n/*\n** Buttons\n*/\n\nbutton svg, button img, label svg, label img {\n\tvertical-align: middle;\n}\n\n.tc-btn-invisible {\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n \tcursor: pointer;\n\tcolor: <<colour foreground>>;\n}\n\n.tc-btn-boxed {\n\tfont-size: 0.6em;\n\tpadding: 0.2em;\n\tmargin: 1px;\n\tbackground: none;\n\tborder: 1px solid <<colour tiddler-controls-foreground>>;\n\tborder-radius: 0.25em;\n}\n\nhtml body.tc-body .tc-btn-boxed svg {\n\tfont-size: 1.6666em;\n}\n\n.tc-btn-boxed:hover {\n\tbackground: <<colour muted-foreground>>;\n\tcolor: <<colour background>>;\n}\n\nhtml body.tc-body .tc-btn-boxed:hover svg {\n\tfill: <<colour background>>;\n}\n\n.tc-btn-rounded {\n\tfont-size: 0.5em;\n\tline-height: 2;\n\tpadding: 0em 0.3em 0.2em 0.4em;\n\tmargin: 1px;\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour muted-foreground>>;\n\tcolor: <<colour background>>;\n\tborder-radius: 2em;\n}\n\nhtml body.tc-body .tc-btn-rounded svg {\n\tfont-size: 1.6666em;\n\tfill: <<colour background>>;\n}\n\n.tc-btn-rounded:hover {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour background>>;\n\tcolor: <<colour muted-foreground>>;\n}\n\nhtml body.tc-body .tc-btn-rounded:hover svg {\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-btn-icon svg {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-btn-text {\n\tpadding: 0;\n\tmargin: 0;\n}\n\n/* used for documentation \"fake\" buttons */\n.tc-btn-standard {\n\tline-height: 1.8;\n\tcolor: #667;\n\tbackground-color: #e0e0e0;\n\tborder: 1px solid #888;\n\tpadding: 2px 1px 2px 1px;\n\tmargin: 1px 4px 1px 4px;\n}\n\n.tc-btn-big-green {\n\tdisplay: inline-block;\n\tpadding: 8px;\n\tmargin: 4px 8px 4px 8px;\n\tbackground: <<colour download-background>>;\n\tcolor: <<colour download-foreground>>;\n\tfill: <<colour download-foreground>>;\n\tborder: none;\n\tborder-radius: 2px;\n\tfont-size: 1.2em;\n\tline-height: 1.4em;\n\ttext-decoration: none;\n}\n\n.tc-btn-big-green svg,\n.tc-btn-big-green img {\n\theight: 2em;\n\twidth: 2em;\n\tvertical-align: middle;\n\tfill: <<colour download-foreground>>;\n}\n\n.tc-primary-btn {\n \tbackground: <<colour primary>>;\n}\n\n.tc-sidebar-lists input {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-sidebar-lists button {\n\tcolor: <<colour sidebar-button-foreground>>;\n\tfill: <<colour sidebar-button-foreground>>;\n}\n\n.tc-sidebar-lists button.tc-btn-mini {\n\tcolor: <<colour sidebar-muted-foreground>>;\n}\n\n.tc-sidebar-lists button.tc-btn-mini:hover {\n\tcolor: <<colour sidebar-muted-foreground-hover>>;\n}\n\nbutton svg.tc-image-button, button .tc-image-button img {\n\theight: 1em;\n\twidth: 1em;\n}\n\n.tc-unfold-banner {\n\tposition: absolute;\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\twidth: 100%;\n\twidth: calc(100% + 2px);\n\tmargin-left: -43px;\n\ttext-align: center;\n\tborder-top: 2px solid <<colour tiddler-info-background>>;\n\tmargin-top: 4px;\n}\n\n.tc-unfold-banner:hover {\n\tbackground: <<colour tiddler-info-background>>;\n\tborder-top: 2px solid <<colour tiddler-info-border>>;\n}\n\n.tc-unfold-banner svg, .tc-fold-banner svg {\n\theight: 0.75em;\n\tfill: <<colour tiddler-controls-foreground>>;\n}\n\n.tc-unfold-banner:hover svg, .tc-fold-banner:hover svg {\n\tfill: <<colour tiddler-controls-foreground-hover>>;\n}\n\n.tc-fold-banner {\n\tposition: absolute;\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\twidth: 23px;\n\ttext-align: center;\n\tmargin-left: -35px;\n\ttop: 6px;\n\tbottom: 6px;\n}\n\n.tc-fold-banner:hover {\n\tbackground: <<colour tiddler-info-background>>;\n}\n\n@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-unfold-banner {\n\t\tposition: static;\n\t\twidth: calc(100% + 59px);\n\t}\n\n\t.tc-fold-banner {\n\t\twidth: 16px;\n\t\tmargin-left: -16px;\n\t\tfont-size: 0.75em;\n\t}\n\n}\n\n/*\n** Tags and missing tiddlers\n*/\n\n.tc-tag-list-item {\n\tposition: relative;\n\tdisplay: inline-block;\n\tmargin-right: 7px;\n}\n\n.tc-tags-wrapper {\n\tmargin: 4px 0 14px 0;\n}\n\n.tc-missing-tiddler-label {\n\tfont-style: italic;\n\tfont-weight: normal;\n\tdisplay: inline-block;\n\tfont-size: 11.844px;\n\tline-height: 14px;\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n}\n\nbutton.tc-tag-label, span.tc-tag-label {\n\tdisplay: inline-block;\n\tpadding: 0.16em 0.7em;\n\tfont-size: 0.9em;\n\tfont-weight: 400;\n\tline-height: 1.2em;\n\tcolor: <<colour tag-foreground>>;\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n\tbackground-color: <<colour tag-background>>;\n\tborder-radius: 1em;\n}\n\n.tc-sidebar-scrollable .tc-tag-label {\n\ttext-shadow: none;\n}\n\n.tc-untagged-separator {\n\twidth: 10em;\n\tleft: 0;\n\tmargin-left: 0;\n\tborder: 0;\n\theight: 1px;\n\tbackground: <<colour tab-divider>>;\n}\n\nbutton.tc-untagged-label {\n\tbackground-color: <<colour untagged-background>>;\n}\n\n.tc-tag-label svg, .tc-tag-label img {\n\theight: 1em;\n\twidth: 1em;\n\tmargin-right: 3px; \n\tmargin-bottom: 1px;\n\tvertical-align: text-bottom;\n}\n\n.tc-edit-tags button.tc-remove-tag-button svg {\n\tfont-size: 0.7em;\n\tvertical-align: middle;\n}\n\n.tc-tag-manager-table .tc-tag-label {\n\twhite-space: normal;\n}\n\n.tc-tag-manager-tag {\n\twidth: 100%;\n}\n\nbutton.tc-btn-invisible.tc-remove-tag-button {\n\toutline: none;\n}\n\n/*\n** Page layout\n*/\n\n.tc-topbar {\n\tposition: fixed;\n\tz-index: 1200;\n}\n\n.tc-topbar-left {\n\tleft: 29px;\n\ttop: 5px;\n}\n\n.tc-topbar-right {\n\ttop: 5px;\n\tright: 29px;\n}\n\n.tc-topbar button {\n\tpadding: 8px;\n}\n\n.tc-topbar svg {\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-topbar button:hover svg {\n\tfill: <<colour foreground>>;\n}\n\n.tc-sidebar-header {\n\tcolor: <<colour sidebar-foreground>>;\n\tfill: <<colour sidebar-foreground>>;\n}\n\n.tc-sidebar-header .tc-title a.tc-tiddlylink-resolves {\n\tfont-weight: 300;\n}\n\n.tc-sidebar-header .tc-sidebar-lists p {\n\tmargin-top: 3px;\n\tmargin-bottom: 3px;\n}\n\n.tc-sidebar-header .tc-missing-tiddler-label {\n\tcolor: <<colour sidebar-foreground>>;\n}\n\n.tc-advanced-search input {\n\twidth: 60%;\n}\n\n.tc-search a svg {\n\twidth: 1.2em;\n\theight: 1.2em;\n\tvertical-align: middle;\n}\n\n.tc-page-controls {\n\tmargin-top: 14px;\n\tfont-size: 1.5em;\n}\n\n.tc-page-controls .tc-drop-down {\n font-size: 1rem;\n}\n\n.tc-page-controls button {\n\tmargin-right: 0.5em;\n}\n\n.tc-page-controls a.tc-tiddlylink:hover {\n\ttext-decoration: none;\n}\n\n.tc-page-controls img {\n\twidth: 1em;\n}\n\n.tc-page-controls svg {\n\tfill: <<colour sidebar-controls-foreground>>;\n}\n\n.tc-page-controls button:hover svg, .tc-page-controls a:hover svg {\n\tfill: <<colour sidebar-controls-foreground-hover>>;\n}\n\n.tc-menu-list-item {\n\twhite-space: nowrap;\n}\n\n.tc-menu-list-count {\n\tfont-weight: bold;\n}\n\n.tc-menu-list-subitem {\n\tpadding-left: 7px;\n}\n\n.tc-story-river {\n\tposition: relative;\n}\n\n@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-sidebar-header {\n\t\tpadding: 14px;\n\t\tmin-height: 32px;\n\t\tmargin-top: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t}\n\n\t.tc-story-river {\n\t\tposition: relative;\n\t\tpadding: 0;\n\t}\n}\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-message-box {\n\t\tmargin: 21px -21px 21px -21px;\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tposition: fixed;\n\t\ttop: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\tleft: {{$:/themes/tiddlywiki/vanilla/metrics/storyright}};\n\t\tbottom: 0;\n\t\tright: 0;\n\t\toverflow-y: auto;\n\t\toverflow-x: auto;\n\t\t-webkit-overflow-scrolling: touch;\n\t\tmargin: 0 0 0 -42px;\n\t\tpadding: 71px 0 28px 42px;\n\t}\n\n\thtml[dir=\"rtl\"] .tc-sidebar-scrollable {\n\t\tleft: auto;\n\t\tright: {{$:/themes/tiddlywiki/vanilla/metrics/storyright}};\n\t}\n\n\t.tc-story-river {\n\t\tposition: relative;\n\t\tleft: {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}};\n\t\ttop: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/storywidth}};\n\t\tpadding: 42px 42px 42px 42px;\n\t}\n\n<<if-no-sidebar \"\n\n\t.tc-story-river {\n\t\twidth: calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}});\n\t}\n\n\">>\n\n}\n\n@media print {\n\n\tbody.tc-body {\n\t\tbackground-color: transparent;\n\t}\n\n\t.tc-sidebar-header, .tc-topbar {\n\t\tdisplay: none;\n\t}\n\n\t.tc-story-river {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\n\t.tc-story-river .tc-tiddler-frame {\n\t\tmargin: 0;\n\t\tborder: none;\n\t\tpadding: 0;\n\t}\n}\n\n/*\n** Tiddler styles\n*/\n\n.tc-tiddler-frame {\n\tposition: relative;\n\tmargin-bottom: 28px;\n\tbackground-color: <<colour tiddler-background>>;\n\tborder: 1px solid <<colour tiddler-border>>;\n}\n\n{{$:/themes/tiddlywiki/vanilla/sticky}}\n\n.tc-tiddler-info {\n\tpadding: 14px 42px 14px 42px;\n\tbackground-color: <<colour tiddler-info-background>>;\n\tborder-top: 1px solid <<colour tiddler-info-border>>;\n\tborder-bottom: 1px solid <<colour tiddler-info-border>>;\n}\n\n.tc-tiddler-info p {\n\tmargin-top: 3px;\n\tmargin-bottom: 3px;\n}\n\n.tc-tiddler-info .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour tiddler-info-tab-background>>;\n\tborder-bottom: 1px solid <<colour tiddler-info-tab-background>>;\n}\n\n.tc-view-field-table {\n\twidth: 100%;\n}\n\n.tc-view-field-name {\n\twidth: 1%; /* Makes this column be as narrow as possible */\n\ttext-align: right;\n\tfont-style: italic;\n\tfont-weight: 200;\n}\n\n.tc-view-field-value {\n}\n\n@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\t.tc-tiddler-frame {\n\t\tpadding: 14px 14px 14px 14px;\n\t}\n\n\t.tc-tiddler-info {\n\t\tmargin: 0 -14px 0 -14px;\n\t}\n}\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\t.tc-tiddler-frame {\n\t\tpadding: 28px 42px 42px 42px;\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth}};\n\t\tborder-radius: 2px;\n\t}\n\n<<if-no-sidebar \"\n\n\t.tc-tiddler-frame {\n\t\twidth: 100%;\n\t}\n\n\">>\n\n\t.tc-tiddler-info {\n\t\tmargin: 0 -42px 0 -42px;\n\t}\n}\n\n.tc-site-title,\n.tc-titlebar {\n\tfont-weight: 300;\n\tfont-size: 2.35em;\n\tline-height: 1.2em;\n\tcolor: <<colour tiddler-title-foreground>>;\n\tmargin: 0;\n}\n\n.tc-site-title {\n\tcolor: <<colour site-title-foreground>>;\n}\n\n.tc-tiddler-title-icon {\n\tvertical-align: middle;\n\tmargin-right: .1em;\n}\n\n.tc-system-title-prefix {\n\tcolor: <<colour muted-foreground>>;\n}\n\n.tc-titlebar h2 {\n\tfont-size: 1em;\n\tdisplay: inline;\n}\n\n.tc-titlebar img {\n\theight: 1em;\n}\n\n.tc-subtitle {\n\tfont-size: 0.9em;\n\tcolor: <<colour tiddler-subtitle-foreground>>;\n\tfont-weight: 300;\n}\n\n.tc-subtitle .tc-tiddlylink {\n\tmargin-right: .3em;\n}\n\n.tc-tiddler-missing .tc-title {\n font-style: italic;\n font-weight: normal;\n}\n\n.tc-tiddler-frame .tc-tiddler-controls {\n\tfloat: right;\n}\n\n.tc-tiddler-controls .tc-drop-down {\n\tfont-size: 0.6em;\n}\n\n.tc-tiddler-controls .tc-drop-down .tc-drop-down {\n\tfont-size: 1em;\n}\n\n.tc-tiddler-controls > span > button,\n.tc-tiddler-controls > span > span > button,\n.tc-tiddler-controls > span > span > span > button {\n\tvertical-align: baseline;\n\tmargin-left:5px;\n}\n\n.tc-tiddler-controls button svg, .tc-tiddler-controls button img,\n.tc-search button svg, .tc-search a svg {\n\tfill: <<colour tiddler-controls-foreground>>;\n}\n\n.tc-tiddler-controls button svg, .tc-tiddler-controls button img {\n\theight: 0.75em;\n}\n\n.tc-search button svg, .tc-search a svg {\n height: 1.2em;\n width: 1.2em;\n margin: 0 0.25em;\n}\n\n.tc-tiddler-controls button.tc-selected svg,\n.tc-page-controls button.tc-selected svg {\n\tfill: <<colour tiddler-controls-foreground-selected>>;\n}\n\n.tc-tiddler-controls button.tc-btn-invisible:hover svg,\n.tc-search button:hover svg, .tc-search a:hover svg {\n\tfill: <<colour tiddler-controls-foreground-hover>>;\n}\n\n@media print {\n\t.tc-tiddler-controls {\n\t\tdisplay: none;\n\t}\n}\n\n.tc-tiddler-help { /* Help prompts within tiddler template */\n\tcolor: <<colour muted-foreground>>;\n\tmargin-top: 14px;\n}\n\n.tc-tiddler-help a.tc-tiddlylink {\n\tcolor: <<colour very-muted-foreground>>;\n}\n\n.tc-tiddler-frame .tc-edit-texteditor {\n\twidth: 100%;\n\tmargin: 4px 0 4px 0;\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor,\n.tc-tiddler-frame textarea.tc-edit-texteditor,\n.tc-tiddler-frame iframe.tc-edit-texteditor {\n\tpadding: 3px 3px 3px 3px;\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tbackground-color: <<colour tiddler-editor-background>>;\n\tline-height: 1.3em;\n\t-webkit-appearance: none;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\n.tc-tiddler-frame .tc-binary-warning {\n\twidth: 100%;\n\theight: 5em;\n\ttext-align: center;\n\tpadding: 3em 3em 6em 3em;\n\tbackground: <<colour alert-background>>;\n\tborder: 1px solid <<colour alert-border>>;\n}\n\ncanvas.tc-edit-bitmapeditor {\n\tborder: 6px solid <<colour tiddler-editor-border-image>>;\n\tcursor: crosshair;\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tmargin-top: 6px;\n\tmargin-bottom: 6px;\n}\n\n.tc-edit-bitmapeditor-width {\n\tdisplay: block;\n}\n\n.tc-edit-bitmapeditor-height {\n\tdisplay: block;\n}\n\n.tc-tiddler-body {\n\tclear: both;\n}\n\n.tc-tiddler-frame .tc-tiddler-body {\n\tfont-size: {{$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize}};\n\tline-height: {{$:/themes/tiddlywiki/vanilla/metrics/bodylineheight}};\n}\n\n.tc-titlebar, .tc-tiddler-edit-title {\n\toverflow: hidden; /* https://github.com/Jermolene/TiddlyWiki5/issues/282 */\n}\n\nhtml body.tc-body.tc-single-tiddler-window {\n\tmargin: 1em;\n\tbackground: <<colour tiddler-background>>;\n}\n\n.tc-single-tiddler-window img,\n.tc-single-tiddler-window svg,\n.tc-single-tiddler-window canvas,\n.tc-single-tiddler-window embed,\n.tc-single-tiddler-window iframe {\n\tmax-width: 100%;\n}\n\n/*\n** Editor\n*/\n\n.tc-editor-toolbar {\n\tmargin-top: 8px;\n}\n\n.tc-editor-toolbar button {\n\tvertical-align: middle;\n\tbackground-color: <<colour tiddler-controls-foreground>>;\n\tcolor: <<colour tiddler-controls-foreground-selected>>;\n\tfill: <<colour tiddler-controls-foreground-selected>>;\n\tborder-radius: 4px;\n\tpadding: 3px;\n\tmargin: 2px 0 2px 4px;\n}\n\n.tc-editor-toolbar button.tc-text-editor-toolbar-item-adjunct {\n\tmargin-left: 1px;\n\twidth: 1em;\n\tborder-radius: 8px;\n}\n\n.tc-editor-toolbar button.tc-text-editor-toolbar-item-start-group {\n\tmargin-left: 11px;\n}\n\n.tc-editor-toolbar button.tc-selected {\n\tbackground-color: <<colour primary>>;\n}\n\n.tc-editor-toolbar button svg {\n\twidth: 1.6em;\n\theight: 1.2em;\n}\n\n.tc-editor-toolbar button:hover {\n\tbackground-color: <<colour tiddler-controls-foreground-selected>>;\n\tfill: <<colour background>>;\n\tcolor: <<colour background>>;\n}\n\n.tc-editor-toolbar .tc-text-editor-toolbar-more {\n\twhite-space: normal;\n}\n\n.tc-editor-toolbar .tc-text-editor-toolbar-more button {\n\tdisplay: inline-block;\n\tpadding: 3px;\n\twidth: auto;\n}\n\n.tc-editor-toolbar .tc-search-results {\n\tpadding: 0;\n}\n\n/*\n** Adjustments for fluid-fixed mode\n*/\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n<<if-fluid-fixed text:\"\"\"\n\n\t.tc-story-river {\n\t\tpadding-right: 0;\n\t\tposition: relative;\n\t\twidth: auto;\n\t\tleft: 0;\n\t\tmargin-left: {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}};\n\t\tmargin-right: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\n\t}\n\n\t.tc-tiddler-frame {\n\t\twidth: 100%;\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tleft: auto;\n\t\tbottom: 0;\n\t\tright: 0;\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\n\t}\n\n\tbody.tc-body .tc-storyview-zoomin-tiddler {\n\t\twidth: 100%;\n\t\twidth: calc(100% - 42px);\n\t}\n\n\"\"\" hiddenSidebarText:\"\"\"\n\n\t.tc-story-river {\n\t\tpadding-right: 3em;\n\t\tmargin-right: 0;\n\t}\n\n\tbody.tc-body .tc-storyview-zoomin-tiddler {\n\t\twidth: 100%;\n\t\twidth: calc(100% - 84px);\n\t}\n\n\"\"\">>\n\n}\n\n/*\n** Toolbar buttons\n*/\n\n.tc-page-controls svg.tc-image-new-button {\n fill: <<colour toolbar-new-button>>;\n}\n\n.tc-page-controls svg.tc-image-options-button {\n fill: <<colour toolbar-options-button>>;\n}\n\n.tc-page-controls svg.tc-image-save-button {\n fill: <<colour toolbar-save-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-info-button {\n fill: <<colour toolbar-info-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-edit-button {\n fill: <<colour toolbar-edit-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-close-button {\n fill: <<colour toolbar-close-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-delete-button {\n fill: <<colour toolbar-delete-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-cancel-button {\n fill: <<colour toolbar-cancel-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-done-button {\n fill: <<colour toolbar-done-button>>;\n}\n\n/*\n** Tiddler edit mode\n*/\n\n.tc-tiddler-edit-frame em.tc-edit {\n\tcolor: <<colour muted-foreground>>;\n\tfont-style: normal;\n}\n\n.tc-edit-type-dropdown a.tc-tiddlylink-missing {\n\tfont-style: normal;\n}\n\n.tc-type-selector .tc-edit-typeeditor {\n\twidth: 20%;\n}\n\n.tc-edit-tags {\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tpadding: 4px 8px 4px 8px;\n}\n\n.tc-edit-add-tag {\n\tdisplay: inline-block;\n}\n\n.tc-edit-add-tag .tc-add-tag-name input {\n\twidth: 50%;\n}\n\n.tc-edit-add-tag .tc-keyboard {\n\tdisplay:inline;\n}\n\n.tc-edit-tags .tc-tag-label {\n\tdisplay: inline-block;\n}\n\n.tc-edit-tags-list {\n\tmargin: 14px 0 14px 0;\n}\n\n.tc-remove-tag-button {\n\tpadding-left: 4px;\n}\n\n.tc-tiddler-preview {\n\toverflow: auto;\n}\n\n.tc-tiddler-preview-preview {\n\tfloat: right;\n\twidth: 49%;\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tmargin: 4px 0 3px 3px;\n\tpadding: 3px 3px 3px 3px;\n}\n\n<<if-editor-height-fixed then:\"\"\"\n\n.tc-tiddler-preview-preview {\n\toverflow-y: scroll;\n\theight: {{$:/config/TextEditor/EditorHeight/Height}};\n}\n\n\"\"\">>\n\n.tc-tiddler-frame .tc-tiddler-preview .tc-edit-texteditor {\n\twidth: 49%;\n}\n\n.tc-tiddler-frame .tc-tiddler-preview canvas.tc-edit-bitmapeditor {\n\tmax-width: 49%;\n}\n\n.tc-edit-fields {\n\twidth: 100%;\n}\n\n\n.tc-edit-fields table, .tc-edit-fields tr, .tc-edit-fields td {\n\tborder: none;\n\tpadding: 4px;\n}\n\n.tc-edit-fields > tbody > .tc-edit-field:nth-child(odd) {\n\tbackground-color: <<colour tiddler-editor-fields-odd>>;\n}\n\n.tc-edit-fields > tbody > .tc-edit-field:nth-child(even) {\n\tbackground-color: <<colour tiddler-editor-fields-even>>;\n}\n\n.tc-edit-field-name {\n\ttext-align: right;\n}\n\n.tc-edit-field-value input {\n\twidth: 100%;\n}\n\n.tc-edit-field-remove {\n}\n\n.tc-edit-field-remove svg {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n\tvertical-align: middle;\n}\n\n.tc-edit-field-add-name {\n\tdisplay: inline-block;\n\twidth: 15%;\n}\n\n.tc-edit-field-add-value {\n\tdisplay: inline-block;\n\twidth: 40%;\n}\n\n.tc-edit-field-add-button {\n\tdisplay: inline-block;\n\twidth: 10%;\n}\n\n/*\n** Storyview Classes\n*/\n\n.tc-viewswitcher .tc-image-button {\n\tmargin-right: .3em;\n}\n\n.tc-storyview-zoomin-tiddler {\n\tposition: absolute;\n\tdisplay: block;\n\twidth: 100%;\n}\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-storyview-zoomin-tiddler {\n\t\twidth: calc(100% - 84px);\n\t}\n\n}\n\n/*\n** Dropdowns\n*/\n\n.tc-btn-dropdown {\n\ttext-align: left;\n}\n\n.tc-btn-dropdown svg, .tc-btn-dropdown img {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-drop-down-wrapper {\n\tposition: relative;\n}\n\n.tc-drop-down {\n\tmin-width: 380px;\n\tborder: 1px solid <<colour dropdown-border>>;\n\tbackground-color: <<colour dropdown-background>>;\n\tpadding: 7px 0 7px 0;\n\tmargin: 4px 0 0 0;\n\twhite-space: nowrap;\n\ttext-shadow: none;\n\tline-height: 1.4;\n}\n\n.tc-drop-down .tc-drop-down {\n\tmargin-left: 14px;\n}\n\n.tc-drop-down button svg, .tc-drop-down a svg {\n\tfill: <<colour foreground>>;\n}\n\n.tc-drop-down button.tc-btn-invisible:hover svg {\n\tfill: <<colour foreground>>;\n}\n\n.tc-drop-down .tc-drop-down-info {\n\tpadding-left: 14px;\n}\n\n.tc-drop-down p {\n\tpadding: 0 14px 0 14px;\n}\n\n.tc-drop-down svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-drop-down img {\n\twidth: 1em;\n}\n\n.tc-drop-down a, .tc-drop-down button {\n\tdisplay: block;\n\tpadding: 0 14px 0 14px;\n\twidth: 100%;\n\ttext-align: left;\n\tcolor: <<colour foreground>>;\n\tline-height: 1.4;\n}\n\n.tc-drop-down .tc-tab-set .tc-tab-buttons button {\n\tdisplay: inline-block;\n width: auto;\n margin-bottom: 0px;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.tc-drop-down .tc-prompt {\n\tpadding: 0 14px;\n}\n\n.tc-drop-down .tc-chooser {\n\tborder: none;\n}\n\n.tc-drop-down .tc-chooser .tc-swatches-horiz {\n\tfont-size: 0.4em;\n\tpadding-left: 1.2em;\n}\n\n.tc-drop-down .tc-file-input-wrapper {\n\twidth: 100%;\n}\n\n.tc-drop-down .tc-file-input-wrapper button {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-drop-down a:hover, .tc-drop-down button:hover, .tc-drop-down .tc-file-input-wrapper:hover button {\n\tcolor: <<colour tiddler-link-background>>;\n\tbackground-color: <<colour tiddler-link-foreground>>;\n\ttext-decoration: none;\n}\n\n.tc-drop-down .tc-tab-buttons button {\n\tbackground-color: <<colour dropdown-tab-background>>;\n}\n\n.tc-drop-down .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour dropdown-tab-background-selected>>;\n\tborder-bottom: 1px solid <<colour dropdown-tab-background-selected>>;\n}\n\n.tc-drop-down-bullet {\n\tdisplay: inline-block;\n\twidth: 0.5em;\n}\n\n.tc-drop-down .tc-tab-contents a {\n\tpadding: 0 0.5em 0 0.5em;\n}\n\n.tc-block-dropdown-wrapper {\n\tposition: relative;\n}\n\n.tc-block-dropdown {\n\tposition: absolute;\n\tmin-width: 220px;\n\tborder: 1px solid <<colour dropdown-border>>;\n\tbackground-color: <<colour dropdown-background>>;\n\tpadding: 7px 0;\n\tmargin: 4px 0 0 0;\n\twhite-space: nowrap;\n\tz-index: 1000;\n\ttext-shadow: none;\n}\n\n.tc-block-dropdown.tc-search-drop-down {\n\tmargin-left: -12px;\n}\n\n.tc-block-dropdown a {\n\tdisplay: block;\n\tpadding: 4px 14px 4px 14px;\n}\n\n.tc-block-dropdown.tc-search-drop-down a {\n\tdisplay: block;\n\tpadding: 0px 10px 0px 10px;\n}\n\n.tc-drop-down .tc-dropdown-item-plain,\n.tc-block-dropdown .tc-dropdown-item-plain {\n\tpadding: 4px 14px 4px 7px;\n}\n\n.tc-drop-down .tc-dropdown-item,\n.tc-block-dropdown .tc-dropdown-item {\n\tpadding: 4px 14px 4px 7px;\n\tcolor: <<colour muted-foreground>>;\n}\n\n.tc-block-dropdown a:hover {\n\tcolor: <<colour tiddler-link-background>>;\n\tbackground-color: <<colour tiddler-link-foreground>>;\n\ttext-decoration: none;\n}\n\n.tc-search-results {\n\tpadding: 0 7px 0 7px;\n}\n\n.tc-image-chooser, .tc-colour-chooser {\n\twhite-space: normal;\n}\n\n.tc-image-chooser a,\n.tc-colour-chooser a {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\ttext-align: center;\n\tposition: relative;\n}\n\n.tc-image-chooser a {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tpadding: 2px;\n\tmargin: 2px;\n\twidth: 4em;\n\theight: 4em;\n}\n\n.tc-colour-chooser a {\n\tpadding: 3px;\n\twidth: 2em;\n\theight: 2em;\n\tvertical-align: middle;\n}\n\n.tc-image-chooser a:hover,\n.tc-colour-chooser a:hover {\n\tbackground: <<colour primary>>;\n\tpadding: 0px;\n\tborder: 3px solid <<colour primary>>;\n}\n\n.tc-image-chooser a svg,\n.tc-image-chooser a img {\n\tdisplay: inline-block;\n\twidth: auto;\n\theight: auto;\n\tmax-width: 3.5em;\n\tmax-height: 3.5em;\n\tposition: absolute;\n\ttop: 0;\n\tbottom: 0;\n\tleft: 0;\n\tright: 0;\n\tmargin: auto;\n}\n\n/*\n** Modals\n*/\n\n.tc-modal-wrapper {\n\tposition: fixed;\n\toverflow: auto;\n\toverflow-y: scroll;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n\tz-index: 900;\n}\n\n.tc-modal-backdrop {\n\tposition: fixed;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n\tz-index: 1000;\n\tbackground-color: <<colour modal-backdrop>>;\n}\n\n.tc-modal {\n\tz-index: 1100;\n\tbackground-color: <<colour modal-background>>;\n\tborder: 1px solid <<colour modal-border>>;\n}\n\n@media (max-width: 55em) {\n\t.tc-modal {\n\t\tposition: fixed;\n\t\ttop: 1em;\n\t\tleft: 1em;\n\t\tright: 1em;\n\t}\n\n\t.tc-modal-body {\n\t\toverflow-y: auto;\n\t\tmax-height: 400px;\n\t\tmax-height: 60vh;\n\t}\n}\n\n@media (min-width: 55em) {\n\t.tc-modal {\n\t\tposition: fixed;\n\t\ttop: 2em;\n\t\tleft: 25%;\n\t\twidth: 50%;\n\t}\n\n\t.tc-modal-body {\n\t\toverflow-y: auto;\n\t\tmax-height: 400px;\n\t\tmax-height: 60vh;\n\t}\n}\n\n.tc-modal-header {\n\tpadding: 9px 15px;\n\tborder-bottom: 1px solid <<colour modal-header-border>>;\n}\n\n.tc-modal-header h3 {\n\tmargin: 0;\n\tline-height: 30px;\n}\n\n.tc-modal-header img, .tc-modal-header svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-modal-body {\n\tpadding: 15px;\n}\n\n.tc-modal-footer {\n\tpadding: 14px 15px 15px;\n\tmargin-bottom: 0;\n\ttext-align: right;\n\tbackground-color: <<colour modal-footer-background>>;\n\tborder-top: 1px solid <<colour modal-footer-border>>;\n}\n\n/*\n** Notifications\n*/\n\n.tc-notification {\n\tposition: fixed;\n\ttop: 14px;\n\tright: 42px;\n\tz-index: 1300;\n\tmax-width: 280px;\n\tpadding: 0 14px 0 14px;\n\tbackground-color: <<colour notification-background>>;\n\tborder: 1px solid <<colour notification-border>>;\n}\n\n/*\n** Tabs\n*/\n\n.tc-tab-set.tc-vertical {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-tab-buttons {\n\tfont-size: 0.85em;\n\tpadding-top: 1em;\n\tmargin-bottom: -2px;\n}\n\n.tc-tab-buttons.tc-vertical {\n\tz-index: 100;\n\tdisplay: block;\n\tpadding-top: 14px;\n\tvertical-align: top;\n\ttext-align: right;\n\tmargin-bottom: inherit;\n\tmargin-right: -1px;\n\tmax-width: 33%;\n\t-webkit-flex: 0 0 auto;\n\tflex: 0 0 auto;\n}\n\n.tc-tab-buttons button.tc-tab-selected {\n\tcolor: <<colour tab-foreground-selected>>;\n\tbackground-color: <<colour tab-background-selected>>;\n\tborder-left: 1px solid <<colour tab-border-selected>>;\n\tborder-top: 1px solid <<colour tab-border-selected>>;\n\tborder-right: 1px solid <<colour tab-border-selected>>;\n}\n\n.tc-tab-buttons button {\n\tcolor: <<colour tab-foreground>>;\n\tpadding: 3px 5px 3px 5px;\n\tmargin-right: 0.3em;\n\tfont-weight: 300;\n\tborder: none;\n\tbackground: inherit;\n\tbackground-color: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-right: 1px solid <<colour tab-border>>;\n\tborder-top-left-radius: 2px;\n\tborder-top-right-radius: 2px;\n\tborder-bottom-left-radius: 0;\n\tborder-bottom-right-radius: 0;\n}\n\n.tc-tab-buttons.tc-vertical button {\n\tdisplay: block;\n\twidth: 100%;\n\tmargin-top: 3px;\n\tmargin-right: 0;\n\ttext-align: right;\n\tbackground-color: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tborder-right: none;\n\tborder-top-left-radius: 2px;\n\tborder-bottom-left-radius: 2px;\n\tborder-top-right-radius: 0;\n\tborder-bottom-right-radius: 0;\n}\n\n.tc-tab-buttons.tc-vertical button.tc-tab-selected {\n\tbackground-color: <<colour tab-background-selected>>;\n\tborder-right: 1px solid <<colour tab-background-selected>>;\n}\n\n.tc-tab-divider {\n\tborder-top: 1px solid <<colour tab-divider>>;\n}\n\n.tc-tab-divider.tc-vertical {\n\tdisplay: none;\n}\n\n.tc-tab-content {\n\tmargin-top: 14px;\n}\n\n.tc-tab-content.tc-vertical {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\tpadding-top: 0;\n\tpadding-left: 14px;\n\tborder-left: 1px solid <<colour tab-border>>;\n\t-webkit-flex: 1 0 70%;\n\tflex: 1 0 70%;\n\toverflow: auto;\n}\n\n.tc-sidebar-lists .tc-tab-buttons {\n\tmargin-bottom: -1px;\n}\n\n.tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour sidebar-tab-background-selected>>;\n\tcolor: <<colour sidebar-tab-foreground-selected>>;\n\tborder-left: 1px solid <<colour sidebar-tab-border-selected>>;\n\tborder-top: 1px solid <<colour sidebar-tab-border-selected>>;\n\tborder-right: 1px solid <<colour sidebar-tab-border-selected>>;\n}\n\n.tc-sidebar-lists .tc-tab-buttons button {\n\tbackground-color: <<colour sidebar-tab-background>>;\n\tcolor: <<colour sidebar-tab-foreground>>;\n\tborder-left: 1px solid <<colour sidebar-tab-border>>;\n\tborder-top: 1px solid <<colour sidebar-tab-border>>;\n\tborder-right: 1px solid <<colour sidebar-tab-border>>;\n}\n\n.tc-sidebar-lists .tc-tab-divider {\n\tborder-top: 1px solid <<colour sidebar-tab-divider>>;\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\n\tdisplay: block;\n\twidth: 100%;\n\tbackground-color: <<colour sidebar-tab-background>>;\n\tborder-top: none;\n\tborder-left: none;\n\tborder-bottom: none;\n\tborder-right: 1px solid #ccc;\n\tmargin-bottom: inherit;\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\n\tbackground-color: <<colour sidebar-tab-background-selected>>;\n\tborder: none;\n}\n\n/*\n** Manager\n*/\n\n.tc-manager-wrapper {\n\t\n}\n\n.tc-manager-controls {\n\t\n}\n\n.tc-manager-control {\n\tmargin: 0.5em 0;\n}\n\n.tc-manager-list {\n\twidth: 100%;\n\tborder-top: 1px solid <<colour muted-foreground>>;\n\tborder-left: 1px solid <<colour muted-foreground>>;\n\tborder-right: 1px solid <<colour muted-foreground>>;\n}\n\n.tc-manager-list-item {\n\n}\n\n.tc-manager-list-item-heading {\n display: block;\n width: 100%;\n text-align: left;\t\n\tborder-bottom: 1px solid <<colour muted-foreground>>;\n\tpadding: 3px;\n}\n\n.tc-manager-list-item-heading-selected {\n\tfont-weight: bold;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n\tbackground-color: <<colour foreground>>;\n}\n\n.tc-manager-list-item-heading:hover {\n\tbackground: <<colour primary>>;\n\tcolor: <<colour background>>;\n}\n\n.tc-manager-list-item-content {\n\tdisplay: flex;\n}\n\n.tc-manager-list-item-content-sidebar {\n flex: 1 0;\n background: <<colour tiddler-editor-background>>;\n border-right: 0.5em solid <<colour muted-foreground>>;\n border-bottom: 0.5em solid <<colour muted-foreground>>;\n white-space: nowrap;\n}\n\n.tc-manager-list-item-content-item-heading {\n\tdisplay: block;\n\twidth: 100%;\n\ttext-align: left;\n background: <<colour muted-foreground>>;\n\ttext-transform: uppercase;\n\tfont-size: 0.6em;\n\tfont-weight: bold;\n padding: 0.5em 0 0.5em 0;\n}\n\n.tc-manager-list-item-content-item-body {\n\tpadding: 0 0.5em 0 0.5em;\n}\n\n.tc-manager-list-item-content-item-body > pre {\n\tmargin: 0.5em 0 0.5em 0;\n\tborder: none;\n\tbackground: inherit;\n}\n\n.tc-manager-list-item-content-tiddler {\n flex: 3 1;\n border-left: 0.5em solid <<colour muted-foreground>>;\n border-right: 0.5em solid <<colour muted-foreground>>;\n border-bottom: 0.5em solid <<colour muted-foreground>>;\n}\n\n.tc-manager-list-item-content-item-body > table {\n\tborder: none;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.tc-manager-list-item-content-item-body > table td {\n\tborder: none;\n}\n\n.tc-manager-icon-editor > button {\n\twidth: 100%;\n}\n\n.tc-manager-icon-editor > button > svg,\n.tc-manager-icon-editor > button > button {\n\twidth: 100%;\n\theight: auto;\n}\n\n/*\n** Alerts\n*/\n\n.tc-alerts {\n\tposition: fixed;\n\ttop: 28px;\n\tleft: 0;\n\tright: 0;\n\tmax-width: 50%;\n\tz-index: 20000;\n}\n\n.tc-alert {\n\tposition: relative;\n\tmargin: 14px;\n\tpadding: 7px;\n\tborder: 1px solid <<colour alert-border>>;\n\tbackground-color: <<colour alert-background>>;\n}\n\n.tc-alert-toolbar {\n\tposition: absolute;\n\ttop: 7px;\n\tright: 7px;\n line-height: 0;\n}\n\n.tc-alert-toolbar svg {\n\tfill: <<colour alert-muted-foreground>>;\n}\n\n.tc-alert-subtitle {\n\tcolor: <<colour alert-muted-foreground>>;\n\tfont-weight: bold;\n font-size: 0.8em;\n margin-bottom: 0.5em;\n}\n\n.tc-alert-body > p {\n\tmargin: 0;\n}\n\n.tc-alert-highlight {\n\tcolor: <<colour alert-highlight>>;\n}\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t.tc-static-alert {\n\t\tposition: relative;\n\t}\n\n\t.tc-static-alert-inner {\n\t\tposition: absolute;\n\t\tz-index: 100;\n\t}\n\n}\n\n.tc-static-alert-inner {\n\tpadding: 0 2px 2px 42px;\n\tcolor: <<colour static-alert-foreground>>;\n}\n\n/*\n** Floating drafts list\n*/\n\n.tc-drafts-list {\n\tz-index: 2000;\n\tposition: fixed;\n\tfont-size: 0.8em;\n\tleft: 0;\n\tbottom: 0;\n}\n\n.tc-drafts-list a {\n\tmargin: 0 0.5em;\n\tpadding: 4px 4px;\n\tborder-top-left-radius: 4px;\n\tborder-top-right-radius: 4px;\n\tborder: 1px solid <<colour background>>;\n\tborder-bottom-none;\n\tbackground: <<colour dirty-indicator>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n}\n\n.tc-drafts-list a:hover {\n\ttext-decoration: none;\n\tbackground: <<colour foreground>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n}\n\n.tc-drafts-list a svg {\n\twidth: 1em;\n\theight: 1em;\n\tvertical-align: text-bottom;\n}\n\n/*\n** Control panel\n*/\n\n.tc-control-panel td {\n\tpadding: 4px;\n}\n\n.tc-control-panel table, .tc-control-panel table input, .tc-control-panel table textarea {\n\twidth: 100%;\n}\n\n.tc-plugin-info {\n\tdisplay: flex;\n\tborder: 1px solid <<colour muted-foreground>>;\n\tfill: <<colour muted-foreground>>;\n\tbackground-color: <<colour background>>;\n\tmargin: 0.5em 0 0.5em 0;\n\tpadding: 4px;\n align-items: center;\n}\n\n.tc-plugin-info-sub-plugins .tc-plugin-info {\n margin: 0.5em;\n\tbackground: <<colour background>>;\n}\n\n.tc-plugin-info-sub-plugin-indicator {\n\tmargin: -16px 1em 0 2em;\n}\n\n.tc-plugin-info-sub-plugin-indicator button {\n\tcolor: <<colour background>>;\n\tbackground: <<colour foreground>>;\n\tborder-radius: 8px;\n padding: 2px 7px;\n font-size: 0.75em;\n}\n\n.tc-plugin-info-sub-plugins .tc-plugin-info-dropdown {\n\tmargin-left: 1em;\n\tmargin-right: 1em;\n}\n\n.tc-plugin-info-disabled {\n\tbackground: -webkit-repeating-linear-gradient(45deg, #ff0, #ff0 10px, #eee 10px, #eee 20px);\n\tbackground: repeating-linear-gradient(45deg, #ff0, #ff0 10px, #eee 10px, #eee 20px);\n}\n\n.tc-plugin-info-disabled:hover {\n\tbackground: -webkit-repeating-linear-gradient(45deg, #aa0, #aa0 10px, #888 10px, #888 20px);\n\tbackground: repeating-linear-gradient(45deg, #aa0, #aa0 10px, #888 10px, #888 20px);\n}\n\na.tc-tiddlylink.tc-plugin-info:hover {\n\ttext-decoration: none;\n\tbackground-color: <<colour primary>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour foreground>>;\n}\n\na.tc-tiddlylink.tc-plugin-info:hover .tc-plugin-info > .tc-plugin-info-chunk > svg {\n\tfill: <<colour foreground>>;\n}\n\n.tc-plugin-info-chunk {\n margin: 2px;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-toggle {\n\tflex-grow: 0;\n\tflex-shrink: 0;\n\tline-height: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-icon {\n\tflex-grow: 0;\n\tflex-shrink: 0;\n\tline-height: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description {\n\tflex-grow: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-buttons {\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tflex-grow: 0;\n\tflex-shrink: 0;\n text-align: right;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description h1 {\n\tfont-size: 1em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description h2 {\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description div {\n\tfont-size: 0.7em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-toggle img, .tc-plugin-info-chunk.tc-plugin-info-toggle svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-icon img, .tc-plugin-info-chunk.tc-plugin-info-icon svg {\n\twidth: 2em;\n\theight: 2em;\n}\n\n.tc-plugin-info-dropdown {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour background>>;\n\tmargin-top: -8px;\n}\n\n.tc-plugin-info-dropdown-message {\n\tbackground: <<colour message-background>>;\n\tpadding: 0.5em 1em 0.5em 1em;\n\tfont-weight: bold;\n\tfont-size: 0.8em;\n}\n\n.tc-plugin-info-dropdown-body {\n\tpadding: 1em 1em 0 1em;\n\tbackground: <<colour background>>;\n}\n\n.tc-plugin-info-sub-plugins {\n\tpadding: 0.5em;\n margin: 0 1em 1em 1em;\n\tbackground: <<colour notification-background>>;\n}\n\n.tc-install-plugin {\n\tfont-weight: bold;\n\tbackground: green;\n\tcolor: white;\n\tfill: white;\n\tborder-radius: 4px;\n\tpadding: 3px;\n}\n\n.tc-install-plugin.tc-reinstall-downgrade {\n\tbackground: red;\n}\n\n.tc-install-plugin.tc-reinstall {\n\tbackground: blue;\n}\n\n.tc-install-plugin.tc-reinstall-upgrade {\n\tbackground: orange;\n}\n\n.tc-check-list {\n\tline-height: 2em;\n}\n\n.tc-check-list .tc-image-button {\n\theight: 1.5em;\n}\n\n/*\n** Message boxes\n*/\n\n.tc-message-box {\n\tborder: 1px solid <<colour message-border>>;\n\tbackground: <<colour message-background>>;\n\tpadding: 0px 21px 0px 21px;\n\tfont-size: 12px;\n\tline-height: 18px;\n\tcolor: <<colour message-foreground>>;\n}\n\n.tc-message-box svg {\n\twidth: 1em;\n\theight: 1em;\n vertical-align: text-bottom;\n}\n\n/*\n** Pictures\n*/\n\n.tc-bordered-image {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tpadding: 5px;\n\tmargin: 5px;\n}\n\n/*\n** Floats\n*/\n\n.tc-float-right {\n\tfloat: right;\n}\n\n/*\n** Chooser\n*/\n\n.tc-chooser {\n\tborder-right: 1px solid <<colour table-header-background>>;\n\tborder-left: 1px solid <<colour table-header-background>>;\n}\n\n\n.tc-chooser-item {\n\tborder-bottom: 1px solid <<colour table-header-background>>;\n\tborder-top: 1px solid <<colour table-header-background>>;\n\tpadding: 2px 4px 2px 14px;\n}\n\n.tc-drop-down .tc-chooser-item {\n\tpadding: 2px;\n}\n\n.tc-chosen,\n.tc-chooser-item:hover {\n\tbackground-color: <<colour table-header-background>>;\n\tborder-color: <<colour table-footer-background>>;\n}\n\n.tc-chosen .tc-tiddlylink {\n\tcursor:default;\n}\n\n.tc-chooser-item .tc-tiddlylink {\n\tdisplay: block;\n\ttext-decoration: none;\n\tbackground-color: transparent;\n}\n\n.tc-chooser-item:hover .tc-tiddlylink:hover {\n\ttext-decoration: none;\n}\n\n.tc-drop-down .tc-chosen .tc-tiddlylink,\n.tc-drop-down .tc-chooser-item .tc-tiddlylink:hover {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-chosen > .tc-tiddlylink:before {\n\tmargin-left: -10px;\n\tposition: relative;\n\tcontent: \"» \";\n}\n\n.tc-chooser-item svg,\n.tc-chooser-item img{\n\twidth: 1em;\n\theight: 1em;\n\tvertical-align: middle;\n}\n\n.tc-language-chooser .tc-image-button img {\n\twidth: 2em;\n\tvertical-align: -0.15em;\n}\n\n/*\n** Palette swatches\n*/\n\n.tc-swatches-horiz {\n}\n\n.tc-swatches-horiz .tc-swatch {\n\tdisplay: inline-block;\n}\n\n.tc-swatch {\n\twidth: 2em;\n\theight: 2em;\n\tmargin: 0.4em;\n\tborder: 1px solid #888;\n}\n\ninput.tc-palette-manager-colour-input {\n\twidth: 100%;\n\tpadding: 0;\n}\n\n/*\n** Table of contents\n*/\n\n.tc-sidebar-lists .tc-table-of-contents {\n\twhite-space: nowrap;\n}\n\n.tc-table-of-contents button {\n\tcolor: <<colour sidebar-foreground>>;\n}\n\n.tc-table-of-contents svg {\n\twidth: 0.7em;\n\theight: 0.7em;\n\tvertical-align: middle;\n\tfill: <<colour sidebar-foreground>>;\n}\n\n.tc-table-of-contents ol {\n\tlist-style-type: none;\n\tpadding-left: 0;\n}\n\n.tc-table-of-contents ol ol {\n\tpadding-left: 1em;\n}\n\n.tc-table-of-contents li {\n\tfont-size: 1.0em;\n\tfont-weight: bold;\n}\n\n.tc-table-of-contents li a {\n\tfont-weight: bold;\n}\n\n.tc-table-of-contents li li {\n\tfont-size: 0.95em;\n\tfont-weight: normal;\n\tline-height: 1.4;\n}\n\n.tc-table-of-contents li li a {\n\tfont-weight: normal;\n}\n\n.tc-table-of-contents li li li {\n\tfont-size: 0.95em;\n\tfont-weight: 200;\n\tline-height: 1.5;\n}\n\n.tc-table-of-contents li li li li {\n\tfont-size: 0.95em;\n\tfont-weight: 200;\n}\n\n.tc-tabbed-table-of-contents {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents {\n\tz-index: 100;\n\tdisplay: inline-block;\n\tpadding-left: 1em;\n\tmax-width: 50%;\n\t-webkit-flex: 0 0 auto;\n\tflex: 0 0 auto;\n\tbackground: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a,\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a {\n\tdisplay: block;\n\tpadding: 0.12em 1em 0.12em 0.25em;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a {\n\tborder-top: 1px solid <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-background>>;\n\tborder-bottom: 1px solid <<colour tab-background>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a:hover {\n\ttext-decoration: none;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tbackground: <<colour tab-border>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a {\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tbackground: <<colour background>>;\n\tmargin-right: -1px;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a:hover {\n\ttext-decoration: none;\n}\n\n.tc-tabbed-table-of-contents .tc-tabbed-table-of-contents-content {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\tpadding-left: 1.5em;\n\tpadding-right: 1.5em;\n\tborder: 1px solid <<colour tab-border>>;\n\t-webkit-flex: 1 0 50%;\n\tflex: 1 0 50%;\n}\n\n/*\n** Dirty indicator\n*/\n\nbody.tc-dirty span.tc-dirty-indicator, body.tc-dirty span.tc-dirty-indicator svg {\n\tfill: <<colour dirty-indicator>>;\n\tcolor: <<colour dirty-indicator>>;\n}\n\n/*\n** File inputs\n*/\n\n.tc-file-input-wrapper {\n\tposition: relative;\n\toverflow: hidden;\n\tdisplay: inline-block;\n\tvertical-align: middle;\n}\n\n.tc-file-input-wrapper input[type=file] {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tfont-size: 999px;\n\tmax-width: 100%;\n\tmax-height: 100%;\n\tfilter: alpha(opacity=0);\n\topacity: 0;\n\toutline: none;\n\tbackground: white;\n\tcursor: pointer;\n\tdisplay: inline-block;\n}\n\n/*\n** Thumbnail macros\n*/\n\n.tc-thumbnail-wrapper {\n\tposition: relative;\n\tdisplay: inline-block;\n\tmargin: 6px;\n\tvertical-align: top;\n}\n\n.tc-thumbnail-right-wrapper {\n\tfloat:right;\n\tmargin: 0.5em 0 0.5em 0.5em;\n}\n\n.tc-thumbnail-image {\n\ttext-align: center;\n\toverflow: hidden;\n\tborder-radius: 3px;\n}\n\n.tc-thumbnail-image svg,\n.tc-thumbnail-image img {\n\tfilter: alpha(opacity=1);\n\topacity: 1;\n\tmin-width: 100%;\n\tmin-height: 100%;\n\tmax-width: 100%;\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-image svg,\n.tc-thumbnail-wrapper:hover .tc-thumbnail-image img {\n\tfilter: alpha(opacity=0.8);\n\topacity: 0.8;\n}\n\n.tc-thumbnail-background {\n\tposition: absolute;\n\tborder-radius: 3px;\n}\n\n.tc-thumbnail-icon svg,\n.tc-thumbnail-icon img {\n\twidth: 3em;\n\theight: 3em;\n\t<<filter \"drop-shadow(2px 2px 4px rgba(0,0,0,0.3))\">>\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-icon svg,\n.tc-thumbnail-wrapper:hover .tc-thumbnail-icon img {\n\tfill: #fff;\n\t<<filter \"drop-shadow(3px 3px 4px rgba(0,0,0,0.6))\">>\n}\n\n.tc-thumbnail-icon {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tdisplay: -webkit-flex;\n\t-webkit-align-items: center;\n\t-webkit-justify-content: center;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.tc-thumbnail-caption {\n\tposition: absolute;\n\tbackground-color: #777;\n\tcolor: #fff;\n\ttext-align: center;\n\tbottom: 0;\n\twidth: 100%;\n\tfilter: alpha(opacity=0.9);\n\topacity: 0.9;\n\tline-height: 1.4;\n\tborder-bottom-left-radius: 3px;\n\tborder-bottom-right-radius: 3px;\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-caption {\n\tfilter: alpha(opacity=1);\n\topacity: 1;\n}\n\n/*\n** Diffs\n*/\n\n.tc-diff-equal {\n\tbackground-color: <<colour diff-equal-background>>;\n\tcolor: <<colour diff-equal-foreground>>;\n}\n\n.tc-diff-insert {\n\tbackground-color: <<colour diff-insert-background>>;\n\tcolor: <<colour diff-insert-foreground>>;\n}\n\n.tc-diff-delete {\n\tbackground-color: <<colour diff-delete-background>>;\n\tcolor: <<colour diff-delete-foreground>>;\n}\n\n.tc-diff-invisible {\n\tbackground-color: <<colour diff-invisible-background>>;\n\tcolor: <<colour diff-invisible-foreground>>;\n}\n\n.tc-diff-tiddlers th {\n\ttext-align: right;\n\tbackground: <<colour background>>;\n\tfont-weight: normal;\n\tfont-style: italic;\n}\n\n.tc-diff-tiddlers pre {\n margin: 0;\n padding: 0;\n border: none;\n background: none;\n}\n\n/*\n** Errors\n*/\n\n.tc-error {\n\tbackground: #f00;\n\tcolor: #fff;\n}\n\n/*\n** Tree macro\n*/\n\n.tc-tree div {\n \tpadding-left: 14px;\n}\n\n.tc-tree ol {\n \tlist-style-type: none;\n \tpadding-left: 0;\n \tmargin-top: 0;\n}\n\n.tc-tree ol ol {\n \tpadding-left: 1em; \n}\n\n.tc-tree button { \n \tcolor: #acacac;\n}\n\n.tc-tree svg {\n \tfill: #acacac;\n}\n\n.tc-tree span svg {\n \twidth: 1em;\n \theight: 1em;\n \tvertical-align: baseline;\n}\n\n.tc-tree li span {\n \tcolor: lightgray;\n}\n\nselect {\n color: <<colour select-tag-foreground>>;\n background: <<colour select-tag-background>>;\n}\n\n/*\n** Utility classes for SVG icons\n*/\n\n.tc-fill-background {\n\tfill: <<colour background>>;\n}"
},
"$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize",
"text": "15px"
},
"$:/themes/tiddlywiki/vanilla/metrics/bodylineheight": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/bodylineheight",
"text": "22px"
},
"$:/themes/tiddlywiki/vanilla/metrics/fontsize": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/fontsize",
"text": "14px"
},
"$:/themes/tiddlywiki/vanilla/metrics/lineheight": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/lineheight",
"text": "20px"
},
"$:/themes/tiddlywiki/vanilla/metrics/storyleft": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/storyleft",
"text": "0px"
},
"$:/themes/tiddlywiki/vanilla/metrics/storytop": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/storytop",
"text": "0px"
},
"$:/themes/tiddlywiki/vanilla/metrics/storyright": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/storyright",
"text": "770px"
},
"$:/themes/tiddlywiki/vanilla/metrics/storywidth": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/storywidth",
"text": "770px"
},
"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth",
"text": "686px"
},
"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint",
"text": "960px"
},
"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth": {
"title": "$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth",
"text": "350px"
},
"$:/themes/tiddlywiki/vanilla/options/stickytitles": {
"title": "$:/themes/tiddlywiki/vanilla/options/stickytitles",
"text": "no"
},
"$:/themes/tiddlywiki/vanilla/options/sidebarlayout": {
"title": "$:/themes/tiddlywiki/vanilla/options/sidebarlayout",
"text": "fixed-fluid"
},
"$:/themes/tiddlywiki/vanilla/options/codewrapping": {
"title": "$:/themes/tiddlywiki/vanilla/options/codewrapping",
"text": "pre-wrap"
},
"$:/themes/tiddlywiki/vanilla/reset": {
"title": "$:/themes/tiddlywiki/vanilla/reset",
"type": "text/plain",
"text": "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n"
},
"$:/themes/tiddlywiki/vanilla/settings/fontfamily": {
"title": "$:/themes/tiddlywiki/vanilla/settings/fontfamily",
"text": "-apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\""
},
"$:/themes/tiddlywiki/vanilla/settings/codefontfamily": {
"title": "$:/themes/tiddlywiki/vanilla/settings/codefontfamily",
"text": "\"SFMono-Regular\",Consolas,\"Liberation Mono\",Menlo,Courier,monospace"
},
"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment": {
"title": "$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment",
"text": "fixed"
},
"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize": {
"title": "$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize",
"text": "auto"
},
"$:/themes/tiddlywiki/vanilla/sticky": {
"title": "$:/themes/tiddlywiki/vanilla/sticky",
"text": "<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\" type=\"match\" text=\"yes\">\n``\n.tc-tiddler-title {\n\tposition: -webkit-sticky;\n\tposition: -moz-sticky;\n\tposition: -o-sticky;\n\tposition: -ms-sticky;\n\tposition: sticky;\n\ttop: 0px;\n\tbackground: ``<<colour tiddler-background>>``;\n\tz-index: 500;\n}\n\n``\n<$list filter=\"[range[100]]\">\n`.tc-story-river .tc-tiddler-frame:nth-child(100n+`<$text text=<<currentTiddler>>/>`) {\nz-index: `<$text text={{{ [[200]subtract<currentTiddler>] }}}/>`;\n}\n`\n</$list>\n</$reveal>\n"
}
}
}
# [[LIS职业能力索引:个人能力]]
# [[LIS职业能力索引:专业能力]]
# [[普通高等学校图书馆保障学习支持和科研支持的方法]]
# [[作业1佳能]]
# [[作业2申晓娟和杨帆两位作者的学术关系]]
# [[作业3徐大佑名字出现次数]]
# [[作业1佳能]]
# [[作业2申晓娟和杨帆两位作者的学术关联]]
# [[作业3徐大佑]]
# [[LIS职业能力索引-个人能力]]
# [[LIS职业能力索引-专业能力]]
# [[普通高等学校图书馆保障科研支持的方法]]
# [[普通高等学校图书馆保障学习支持的方法]]
也称专家调查法,其本质上是一种反馈匿名函询法,其大致流程是在对所要预测的问题征得专家的意见之后,进行整理、归纳、统计,再匿名反馈给各专家,再次征求意见,再集中,再反馈,直至得到一致的意见。
''共词分析法、聚类分析法、引文分析法、社会网络分析、关联规则分析法、SWOT 分析法等''
''共词分析法概念的提出往前最早可以追溯到法国的文献计量学家 Callon。其充分利用共词分析方法的基本原理能够从宏观角度分析出学科领域的动态发展过程,揭示出各个研究领域的研究前沿、热点以及不同领域或者学科之间存在的相互联系,还可以反映出某一专业与学科某阶段的科学研究水平和发展历程的结构。''
''图书馆学、情报学、文献计量学、知识管理、知识组织、知识服务、CKO、CIO''
''在图书整理时代(18世纪之前),其基本概念有图书、校雠、注释、目录、版本、辨伪、分类、索引、书目、藏书、图书馆。此时期图书馆知识的基本概念有一特点,即它们在概念语词的表达上还很不规范,带有很强的“自发形成”特色,如“图书这概念,中外各国均有各种繁杂的称谓。在图书整理时代,图书是图书馆知识中最重要的概念,它与目录等少数概念构成了图书馆知识中基本概念的核心。''
```
知识是当代图书馆的核心概念。
```
情报信息学科,这两个专业本科都归结为信息管理与信息系统专业,也就是信息管理专业,主要是文献信息的组织、存储、检索、咨询、分析和读者服务等相关知识学科。
''18 种图书情报学核心期刊作为研究对象。例如《图书情报工作》、《图书馆工作与研究》、《情报学报》、《情报理论与实践》、《情报杂志》、《图书馆建设》、《图书馆》、《图书馆杂志》、《图书馆学研究》、《大学图书馆学报》、《情报学报》、《国家图书馆学刊》、《图书情报知识》、《中国图书馆学报》等。''
定性:对研究对象进行“质”的分析。具体是运用归纳和演绎、分析与综合以及抽象与概括等方法, 对获得的各种材料进行思维加工。通过发掘问题、理解事件现象、分析人类的行为与观点以及回答提问来获取敏锐的洞察力。 定量:将问题与现象用数量来表示, 进而分析、考验、解释以获得意义的研究方法和过程。
归纳:由个案或系统资料中找出一般性的法则。 演绎:由已知事实或理论来推导出新的理论或个案。
实证:建立在客观素材和数据基础上的研究, 该方法认识客观现象, 向人们提供实在、有用、确定、精确的知识研究方法, 其重点是研究现象本身“是什么”的问题。实证研究法试图超越或排斥价值判断, 只揭示客观现象的内在构成因素和因素间的普遍联系, 归纳概括现象的本质及其运行规律。 非实证:实证研究法以外的各种方法, 有两个特点, 一是强调社会现象不同于自然现象, 反对把自然科学方法绝对化;二是突出社会行动者的主体性、意识性和创造性, 反对把人当作非人格的物化现象。
''各级各类图书馆;政府部门党政机关、企事业单位的图书资料部门、信息管理部门;电子政务、电子商务管理部门;网络系统管理机构;信息咨询服务机构,计算机软件企业研发或服务部门;国家各级信息化与信息产业行政主管部门等.例如大学图书馆,政府部门人员,美团京东之类的互联网公司,与一些金融机构。 ''
''通过对 2002-2016 年近十五年数据总体分析可知:国内图书情报学学科一级交叉强度学科主要有计算机科学、科学学、管理学和经济学学科。二级交叉强度学科主要有新闻传播学、法学、教育学、政治学、统计学、医学、社会学和哲学等学科。三级交叉强度学科主要有数学、地理学、心理学、历史学、艺术学、物理学、环境科学、民族学与文化学等学科。''
文献整理编纂家。其整理工作产生的书目《七略》是我国第一部国家图书馆的藏书目录
教授、博士生导师。主要研究方向为情报学理论方法,信息经济与信息资源管理。
''学习支持''
1、保障师生教学活动所需的信息,根据教学活动配备相关文献,满足师生的需求。要求图书馆根据课程设计的安排,配备相关文献;对需求比较集中的文献设计保障方案,主要包括馆内浏览和短期借阅。
2、为教学活动提供各种空间:
(1)视听室电脑实验室、研讨室等教学空间,这类空间可以保证那些需要穿插图书馆资源的教学活动能安排在图书馆进行也为图书馆开展的信息素养培训提供场所。
(2)各类自书主学习空间,包括开放学习空间小组学习空间和个人学习空间。
(3)信息共享空间和创客空间。其中,信息共享空间和创客空间是20世纪末以来,高等学校图书馆针对数字化资源的增长及信息获取方式的转变而开辟的新型图书馆空间。信息共享空间是向学生提供各种硬件、软件设施和各类图书馆数字化资源的一站式服务空间。这类空间由于硬件先进、软件齐全、资源丰富,又有专业馆员提供帮助,因而具有很高的利用率。创客空间是配备计算机、3D打印机。各种软件和相关资源,支持创意发现与实验的空间。参与学校的教学指导委员会,更多地就文献保障、信息技能课程等问题参与学校的教学决策
4、开展信息素养课程。
高等学校图书馆经常提供的另外一项教学支持服务就是承担信息素养课程,开展图书馆利用培训,同时通过参考咨询服务为学生的信息获取提供一对一的辅导。有些图书馆甚至通过讲座、辅导等形式辅助其他通用技能的培养,如研究方法技能、写作技能、口头交流技能、计算机技能等。
5、作为教学伙伴,参与计算机辅助教学课件的开发。在这方面,图书馆员的主要职责是评价、组织高质量的网络资源形成嵌入课件的超级链接,设计检索图书馆电子资源的用户界面提供虚拟咨询合承担课件开发中的版权申请和管理任务等。
6、参与学校的教学指导委员会,参与远程教育,参与学校的教学指导委员会,参与制定教学计划和课程设计,以便将信息素养教育和其他教学支持服务嵌入课程。
''科研支持''
1、科研支持服务
科研支持服务指高等学校图书馆根据科研规律、科研活动周期及科研人员的需要,设计相应服务,最大限度地保障科研情境下的信息获取。
高等学校图书馆为科研活动提供的基础服务就是以外借阅览等方式为师生提供其科研活动所需信息。但与教学活动所需信息相比,科研活动所需信息异常广泛,更难预期。因此,为科研活动提供的信息保障特别强调即时文献提供,即图书馆从本馆的合作馆或商业化的文献传递机构为用户获取本馆未收藏的文献。
2、面向具体问题,提供有针对性的答案线索、文献或其他帮助
需要针对性帮助的典型问题包括:有关馆藏资源和信息系统使用方法的问题、有关科研数据和开放存取资源提交方法的问题、文献使用中的版权问题、特定知识或事实的信息查询方法等。这类服务通常被称作参考咨询服务,有时也称信息服务。
3、辅助科研人员向机构资源库或其他开放存取中心提交数据及成果
由于开放存取运动的推动很多国家的研究资助机构开始要求科研人员在申请资助时,承诺将研究数据和成果提交给机构资源库或专门的数据管理中心和开放存取中心。一些图书馆除了针对相关政策提供咨询,还在提交过程中提供实际帮助,如元数据近年来,一些高等学校 图书馆还开始尝试深度参与数字人文等研究活动方面的帮助。
数字人文是将词频分析、社会网络分析、图像识别、数据挖掘等计算机技术应用于文本及图像分析,以此解答人文科学问题的研究方法。将计算机技术应用于各学科领域的研究问题并非人文科学首创,但图书馆却在数字人文领域看到了深度参与的机遇。这是因为,在很多时候,数字人文分析的对象,恰恰是图书馆收藏的数字化文献中的文本、图像等数据;其运用的计算机技术(如词频分析数据挖掘),也恰恰是图书馆员的专长。除了为数字人文课题提供数据或技术帮助,有些图书馆员还作为合作伙伴参与整个研究活动,甚至独立主持数字人文课题。
4、为科研课题的不同阶段提供个性化服务
高等学校图书馆还为科研活动提供其他支持,如信息素养培训科枝期的评价、文献计量学研究等。一些高等学校图书馆还根据科研同期,通过学员为科研课题的不同阶段提供个性化服务。例如,在研究问题的构思和研究设计阶段,提供信息查询帮助;在课题申请阶段提供有关科研资助政策、数据管理计划等方面的帮助;在成果形成和传播阶段提供文献计量学、社交媒体、开放存取网站接入及成果提交方面的帮助。
''图书情报专业主要学习图书馆学、情报学、档案学等课程,其中既包括“信息”又涉及“管理”是近年来考研的热门专业,就业范围十分广泛。可以在图书馆、情报所工作,也可以在政府事业部门的咨询或信息服务部工作,主要在企业的情报分析与咨询部工作。''
''情报分析是根据特定问题的需要,对大量相关信息或专门领域信息进行深层次地思维加工、分析、评估,从而形成有助于问题解决的新信息或为研究与应用提供依据的活动。随着大数据时代的到来,包括大数据分析在内的大数据''
著名的图书馆学家,提出了图书馆学五定律: 第一:“书是为了用的”(Books are for use)。 第二:“每个读者有其书”(Every reader his book)。 第三:“每本书有其读者”(Every book its reader)。 第四:“节省读者的时间”(Save the time of the reader)。 第五:“图书馆是一个生长着的有机体”(A library is a growing organism)。
TiddlyWiki5 can be used as a simple task management system without further customisation. The idea is that tasks be tagged `task`, with those that are completed also tagged `done`. In this way it is straightforward to generate task lists.
<<.tip """There is [[an enhanced version of this demo|TaskManagementExample (Draggable)]] that adds the ability to drag and drop the tasks to re-order them.""">>
! Outstanding tasks
<$list filter="[!has[draft.of]tag[去]!tag[done]sort[1]]">
<$checkbox tag="done"> <$link/></$checkbox>
</$list>
! Completed tasks
<$list filter="[!has[draft.of]tag[task]tag[done]sort[created]]">
<$checkbox tag="done"> ~~<$link/>~~</$checkbox>
</$list>
```
保障信息的有效查询与获取是图书情报学的基本问题。
```
```
图书情报学知识体系分为两大分支:服务于信息查询的知识和服务于信息获取的知识。
```
`1920年,韦棣华与沈祖荣在武昌文华大学一起创办了中国第一个图书馆学教育机构——私立武昌文华图书馆学专科学校(简称文华图专)`
''信息采集技术通常可以分为传统资源(如纸质书刊、模拟音视频等)的数字化技术以及针对网络资源特别是Web信息源的采集技术。信息存储研究信息存储系统的安全性、可靠性、可扩展性、动态备份等,为信息系统提供高效、低能耗、低成本的存储设备。''
''信息服务是为了满足特定的信息需求而采取的应对措施,以信息为基本原材料,信息技术为信息服务提供了新的解决方案和思路。信息服务技术主要包含门户技术、Web 3.0的一站式服务、个性化服务、参考咨询服务、可视化知识表示技术。''
''图书情报技术有不同的分类方法,比较常见的是按采集、存储、组织、分析、检索、服务等工作流程来分。''
''信息检索是利用计算机根据用户要求自动从信息源、信息集合、存储的数据中查询和提取与给定主题有关的信息的方法和过程。我国的信息检索技术研究大致包括基本的检索模型研究、智能检索技术、图像检索技术。''
''引文分析主要侧重于对各类科技文献之间基本的属性进行引用关系分析。包括在一篇
文献中,整体文献所属的各个要素之间,例如文献后引用的参考文献名称、文献所属作者
合作团体、文献所属的发文机构等都可以作为进行引文分析的一种有效的依据。邱均平[31]
认为:引文分析的目的主要是为了能够科学的解释出科技期刊、论文、图书等不同的研究
对象之间所存在的被引证关系以及相互之间联系的密切程度。其能够利用大量科学的研究
方法,例如,归纳演绎法、统计分析法、抽象比较法等研究方法集合用以揭示期刊论文所
属整体间所蕴含的潜在数量特征及其内部联系规律的一种文献计量方法。''
''知识组织是在传统文献信息环境下发展起来的信息组织和利用手段,用一定的方法把知识客体中的知识因子和知识关联揭示出来,使无序的知识形成有序结构的知识体系的过程,目的是通过解决用户的问题来提供高效的''
''1920年,韦棣华与沈祖荣在武昌文华大学一起创办了中国第一个图书馆学教育机构——私立武昌文华图书馆学专科学校(简称文华图专)''
`西汉时期的《七略》收录了13219卷图书,由刘向刘歆父子编纂。`
# 首先,据题目要求,获得关键词为“佳能公司”、”最近发布“、”手持数码产品“、”异于手机和数码相机“,直接查询佳能官网以及佳能新品发布会新闻。
# 对产品进行筛选,选择与要求相对应的产品,选择产品查看产品的相关简介,确定最符合检索要求的产品。
# 初步确定符合检索要求的产品:佳能PowerShot ZOOM;是一款小巧轻便的单眼望远照相机,兼具望远、拍照与录像功能。
# 最终确定符合检要求的产品:根据佳能官网对PowerShot ZOOM的介绍和图片,符合:手持、能拍照和录像、非单纯相机、异于可拍照手机的要求。再以PowerShot ZOOM为检索词再次进行检索,筛选与要求相关的检索结果。PowerShot ZOOM是今年发布的,11月才在中国预售,符合最近发布的要求。通过小众一词的解释,PowerShot ZOOM是一种新概念的相机,适合观鸟、旅行以及观看演出、体育赛事等,这些是少部分人所喜爱的事情,因此也符合小众这一要求。
# 因此,通过对比得出,我们的搜索是正确的,最后得到我们想要的结果——佳能PowerShot ZOOM新概念相机。
1、首先通过百度搜索申晓娟,可查出申晓娟是国家图书馆研究院副院长,她的主要研究领域为包括图书情报与数字图书馆、计算机软件及计算机应用、行政法及地方法制。
2、对两位作者可能出现的学术关联做出预测:相互引用对方论文或共同完成论文等。
3、学术论文上的学术关联进行检索:进入中国知网,打开高级检索,以杨帆、贵州财经、武汉大学为检索托条件进行检索,得到的结果排除合著关系。对杨帆发表的论文引用和被引进行分析。
4、最后在知网上查询到二者的学术关联为申晓娟曾引用杨帆的《开放环境数字信息服务政策保障逻辑框架分析》这一论文。
1、确认检索要求的条件“贵州财经大学图书馆的网络新闻报道中总共出现了多少次徐大佑的名字。“范围确认为”贵州财经大学图书馆的网络新闻报道。“
2、进入百度网页,进行搜索——“贵州财经大学图书馆”。
3、进入贵州财经大学图书馆网站首页,进行站内搜索,搜索网络新闻报道,因此在站内搜索选择——“新闻公告”,输入关键词“徐大佑”。
4、最后得出结果:三条新闻记录。具体为:(1)副校长徐大佑参加贵州财经大学2019年图书馆工作委员会会议;(2)副校长徐大佑代表我校参加省政协文史与学习委员会高校赠书仪式;(3)分管领导徐大佑副校长召开图书馆新学期工作部署会。
|能力:沟通能力|人际关系沟通和说服能力|
|相关技能和知识|图书情报工作的价值是通过为用户提供各种信息服务而实现的,信息服务同时也是一种人际关系沟通的过程。 因此,图书情报专业硕士应具有人际关系沟通和说服能力,逐步建立起一种相互信任、相互理解的相融关系,縝诚服务去争取更多户的支持。|
|能力:学习能力|学习各种软件的能力|
|相关技能和知识|随着信息行业的飞速发展,社会各行各业的信息系统不断升级,图书情报专业硕士必须具备快速学习各种软件的能力,紧跟信息行业最新进展,为用户提供完善的信息咨询服务。|
|能力:个人领导能力|主要体现在图书馆的全局发展战略以及对于其成员的领导能力|
|相关技能和能力知识|为所有的利益相关者和团队提供有效地领导,跟上团队行为的新方法,并应用相关知识帮助 团队实现组织的目标;与所有利益相关者建立信任关系,并建立适当的程序随时了解和回应问题;合理组织和个人努力的有效性,确保和分配资源,以确保利益相关者完成任务和责任;了解图书馆组织的愿景、使命和价值观,定义并传达与图书馆目标一致的图书馆目标以及使命|
|能力:业务能力|主要体现在工作效率、人际关系以及社会活动等|
|相关技能和能力知识|图书馆员应该具备良好的人际交往和沟通能力,使用各种方法进行有效地沟通,公开和直接的进行口头和书面沟通,明确与需要沟通的问题和想法,并提供准确、及时的信息;具有良好的公众演讲技能以及展现出对每个人的感知、观点和交流方式的理解,培养一种包容、肯定和尊重的交流氛围,选择和应用适当和有效地沟通方式来满足情境的要求|
|能力:创新能力| |
|相关技能和能力知识|创新是个民族进步的灵魂,也是一个国家兴旺发达的不得动力。在社会经济飞速发展竟争愈演愈烈的今天.馆员的创新能力在推动图书馆可持续发展的进程中至关重要。图书馆员只有不断提高自身的创新意识。善于思考,黄于开拓,努力掌握信息服务的新知只新方式新技术.才能探索出有利于图书馆在新时期不断发展的新理论.新机制、新领域才能后时很进,为读者提供更丰富、 优质高效的服务|
|能力:语言表达能力||
|相关技能和能力知识|由于信息服务工作的特点,图书情报学者们应具备过硬的语言文字能力,只有这样才能准确、清晰、简明地撰写各种报告、综述、学术论文,才能及时使新成果、新见解得以交流和推广。|
|能力:综合能力|解决图书情报工作实际问题|
|相关技能和知识|图书情报专业硕士要具备综合运用管理、经济、法律、计算机等知识解决图书情报工作实际问题的能力,具体要掌握营销能力、财会知识、客户服务能力、正确的伦理与价值观、领导力与项目管理的能力、学习与个人成长的经验与知识、掌握法律、政策和程序的基本常识。|
|能力:沟通能力|人际关系沟通和说服能力|
|相关技能和知识|图书情报工作的价值是通过为用户提供各种信息服务而实现的,信息服务同时也是一种人际关系沟通的过程。 因此,图书情报专业硕士应具有人际关系沟通和说服能力,逐步建立起一种相互信任、相互理解的相融关系,縝诚服务去争取更多户的支持。|
|能力:学习能力|学习各种软件的能力|
|相关技能和知识|随着信息行业的飞速发展,社会各行各业的信息系统不断升级,图书情报专业硕士必须具备快速学习各种软件的能力,紧跟信息行业最新进展,为用户提供完善的信息咨询服务。|
|能力:个人领导能力|主要体现在图书馆的全局发展战略以及对于其成员的领导能力|
|相关技能和能力知识|为所有的利益相关者和团队提供有效地领导,跟上团队行为的新方法,并应用相关知识帮助 团队实现组织的目标;与所有利益相关者建立信任关系,并建立适当的程序随时了解和回应问题;合理组织和个人努力的有效性,确保和分配资源,以确保利益相关者完成任务和责任;了解图书馆组织的愿景、使命和价值观,定义并传达与图书馆目标一致的图书馆目标以及使命|
|能力:业务能力|主要体现在工作效率、人际关系以及社会活动等|
|相关技能和能力知识|图书馆员应该具备良好的人际交往和沟通能力,使用各种方法进行有效地沟通,公开和直接的进行口头和书面沟通,明确与需要沟通的问题和想法,并提供准确、及时的信息;具有良好的公众演讲技能以及展现出对每个人的感知、观点和交流方式的理解,培养一种包容、肯定和尊重的交流氛围,选择和应用适当和有效地沟通方式来满足情境的要求|
|能力:创新能力| |
|相关技能和能力知识|创新是个民族进步的灵魂,也是一个国家兴旺发达的不得动力。在社会经济飞速发展竟争愈演愈烈的今天.馆员的创新能力在推动图书馆可持续发展的进程中至关重要。图书馆员只有不断提高自身的创新意识。善于思考,黄于开拓,努力掌握信息服务的新知只新方式新技术.才能探索出有利于图书馆在新时期不断发展的新理论.新机制、新领域才能后时很进,为读者提供更丰富、 优质高效的服务|
|能力:语言表达能力||
|相关技能和能力知识|由于信息服务工作的特点,图书情报学者们应具备过硬的语言文字能力,只有这样才能准确、清晰、简明地撰写各种报告、综述、学术论文,才能及时使新成果、新见解得以交流和推广。|
|能力:信息服务能力|核心专业能力|
|相关技能和知识|它要求从业人员能够:致力于以客户为中心的服务;识别、分析和评估用户信息与知识需求;开发与维持平等的信息服务政策;应用信息分析的原则与方法, 实施参考咨询;提供最新资料通告;知晓信息查询行为并能促进用户信息检索;实施与促进知识共享, 优化信息服务, 倡导信息系统和流程的有效使用与管理等。|
|能力:信息资源组织管理能力|括知晓信息组织的理论、原则与技术, 制定与调整信息资源管理战略;制定信息资源预算, 审计和规划信息与知识资产, 管理和提供所有类型、媒体和格式的信息资源, 开发定制的元数据模式、分类法和本体。|
|相关技能和知识|包括知晓信息组织的理论、原则与技术, 制定与调整信息资源管理战略;制定信息资源预算, 审计和规划信息与知识资产, 管理和提供所有类型、媒体和格式的信息资源, 开发定制的元数据模式、分类法和本体。|
|能力:信息机构管理能力|对机构的管理|
|相关技能和知识|要求从业人员能够:制定有效的组织的战略规划;制定与组织任务和目标一致的政策与规章, 知晓组织的任务、目标、规划与方案, 知晓外部环境与文化对组织的影响;知晓并应用相关法律、规章、制度、标准与政策;创建一种促进变革的文化;识别内部与外部的利益相关者;致力于高水平的道德与职业标准;了解不同岗位的工作特性与价值;运用基于数据的决策和问题等。 包括对信息的采集和处理能力、编目能力、收藏管理能力、电子资源管理能力。|
|能力:信息技术相关能力|核心能力|
|相关技能和知识|基本技术能力:掌握系统和信息技术的技术能力,包括数字资源技术、企业计算、网络和安全、操作和自动化系统、公共访问计算、服务器管理、软件应用、技术规划、技术政策、技术培训、网页设计与开发等技术能力。|
|能力:技术相关能力|信息技术应用能力、信息反应能力、信息处理能力 |
|相关技能和知识|1.信息技术应用能力。随着社会的进步,基于计算机技术、通讯技术及微电子技术而发展起来的现代信息技术使人们获取信息的方法产生了革命性的变化。因此,图书情报专业硕士必须掌握各种信息处理技术。信息技术应用能力包括一般性操作和专业软件设计两方面。图书情报专业硕士不但要学会操作,而且要具有软件开发能力,这样才能适应信息化发展的需要。2.信息反应能力。图书情报专业硕士要有良好的信息意识,面对浩若烟海的信息要有洞察力,能够及时准确地捕捉到有参考价值的信息,并快速传递给用户。3.信息处理能力。为解决图书情报工作中所发生的信息需求,图书情报专业硕士须具有良好的信息查找、信息获取、信息评价、信息组织和信息利用的能力。|
/9j/4AAQSkZJRgABAgEASABIAAD/4Q55RXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAeAAAAcgEyAAIAAAAUAAAAkIdpAAQAAAABAAAApAAAANAACvyAAAAnEAAK/IAAACcQQWRvYmUgUGhvdG9zaG9wIENTNCBNYWNpbnRvc2gAMjAwOTowNDozMCAxNzoxODowNQAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAKAKADAAQAAAABAAAGQAAAAAAAAAAGAQMAAwAAAAEABgAAARoABQAAAAEAAAEeARsABQAAAAEAAAEmASgAAwAAAAEAAgAAAgEABAAAAAEAAAEuAgIABAAAAAEAAA1DAAAAAAAAAEgAAAABAAAASAAAAAH/2P/gABBKRklGAAECAABIAEgAAP/tAAxBZG9iZV9DTQAB/+4ADkFkb2JlAGSAAAAAAf/bAIQADAgICAkIDAkJDBELCgsRFQ8MDA8VGBMTFRMTGBEMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAENCwsNDg0QDg4QFA4ODhQUDg4ODhQRDAwMDAwREQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgAZACgAwEiAAIRAQMRAf/dAAQACv/EAT8AAAEFAQEBAQEBAAAAAAAAAAMAAQIEBQYHCAkKCwEAAQUBAQEBAQEAAAAAAAAAAQACAwQFBgcICQoLEAABBAEDAgQCBQcGCAUDDDMBAAIRAwQhEjEFQVFhEyJxgTIGFJGhsUIjJBVSwWIzNHKC0UMHJZJT8OHxY3M1FqKygyZEk1RkRcKjdDYX0lXiZfKzhMPTdePzRieUpIW0lcTU5PSltcXV5fVWZnaGlqa2xtbm9jdHV2d3h5ent8fX5/cRAAICAQIEBAMEBQYHBwYFNQEAAhEDITESBEFRYXEiEwUygZEUobFCI8FS0fAzJGLhcoKSQ1MVY3M08SUGFqKygwcmNcLSRJNUoxdkRVU2dGXi8rOEw9N14/NGlKSFtJXE1OT0pbXF1eX1VmZ2hpamtsbW5vYnN0dXZ3eHl6e3x//aAAwDAQACEQMRAD8A8qg+CUHwR4d4lKHeJSUgg+CUHwR4d4lKHcyY8UlIIPglB8FZdU5gBPwTMre920DXvOiSmvB8EoPgroxHTq7TyT/ZdOTPySU0YPglB8FYfUWGCQT4Dt8U20nQak9klIIPglB8FYNVjdSIATbSkpBB8EoPgj7CBKUFJSCD4JQfBH2lLaQUlIIPglB8EfaUtqSkEHwSg+CPtKW1JT//0PNyzVLYO+nPKK+s+oBtnX7/AJyrOFW+tzy2C5pDgBBEQ5JTXoord9JzQ9xhtb5k6T/ZRLMZ9cOeNgfI3FziJA/R7nsa36X5i2GencAWunQl1Ohcf873e3+Qmsxq2tENG5rgQCSSD/nJKcS+na0tIja/a4d5EnVv5qgx1jB7ToTpOo15VzLeLHBrGACv27wNp09u3+qghjSXOYCRA3T4jSTCSmzQwW1tsjkajwPCe2sMbua3cZAA8T+Kn06zGYx9VxFZBLmuMe4Rq3d++2PYq9uTfdzLG/uMMCD+/ruc5JTTewOscQIE8Eg/+dKG1W3MrMBjNpkySZRMPBfl2GsPFbGgOeTzBdshg/eSSQ1Ay652jXWRH0RMRp+aFDYFv3GsWOx59KmloJkHhw0Ldpd7Wt+m9/8AOWrDDXNaANTGpmf/ADlJDDYIPOiJbiW0tc6wQ1pAMHuQPb+KvdN6dZaRkXA+iAHVEOEOcD32ndtatGzEqLHMs9rbQWkjmI2+z+qkp5o+QR6MR97HPYRLXRDgQDp+a6FAMEDfLTMEQCf+qHu+l7Fu4bGHGpafa4AMDSRqQJdt1SU4z8G6oiWeoCJO3j+ru0Q3sY1zmiBtMaGV0FuOBtd4mCDwsO3FvY5zbIc4+4uDge7uTP0/5KSkPpp/T+cQDBV1oAraXwwx9EfwaouAJMtEke094jl//fUlP//R4QggmBGvz1Sbua9rhMtJIKntO4yO45/1akWmR8/yf2klN/p9zN4eQ0NeQyxrgdCfz2bR9BXr8ezc5xdDZ51Pl9FZOHa6p2j/AE3EjY+Ygn2/1forosoNFcBsbjo7dIj6Tfoh38hJTzXVG2Nyw8gur2j3cgn3FxG4efvQcWmwP9Q1bwI4OonR3sbu3bmlaPWGw2m2sOFjS5jYLdAQX7nabvpVKgWS4gaAkanSdPzv5SSlX0tYQAdCNzWgSAD/AC/pf9FC26HTwRfc7VxJPi7X/qykBBJIJGmnE/ckpjXtZZuczfBJAkt1/NJhbOD0mnIBzSdzXNljB6ZaQQ5lt1r49Nv8ln+k9/8AwSz8Nr2X1W7BZFn0XaSB9P6TfT/6v/i1rZGFmXH1mXNxRVWXUYzQYYQN7d7/AND+l9T9J76n+j/wiST0S3dOpoc5u02vyTNpsMuc2Jdu3BrWs27f5tc5k4TKcllDbqzXc72knVjXbYda8Md+j2v9ljf6/prWbk5zqTjPx3vxw8tNYGoa9oa6lrWtO2vf+kZ9n9LHZ6ttVVdajkMxsepobhsddksluO6XAASKn/S9Rjrne2vakhuMrqqxWiqze0aMe8yHQfdD2n3oRDS7UNJ7uAn/ADvoNah9P6wfRGO+g2llfseDLpLgxtT2OZa5jWyyvf8ApP8Aiv3LHUBYaawyoUbmzZjNG8gA+z9LHqfu+t/wiSnFqxPTzLIebG/mvIO5273bmuO3f9F3qbti0Mauip5sfudYGmGbYA7a2PP5yE2eN0NPlIn5+1OWucdjBu7t02wfJstYkpP6teRR7v0b2gmzaS0NH+kY4/yf8xZHosD5qBcxpa6IkjTdsdt/O/sq4barqaWutdi1hu3KbW0l73lxcx7G7tt36H/Tvpx6HqtfbZdc+yXAF3sBJlrNfTr/ALDPakpi9su9R1dgmZLhIED2/mt3bf5aiWM3D6TjHJ4giQ795Od0cn7/ACU7Wn1W6H6Ff/ntiSn/0uILWePu8NIHh7t3uTR8OXdwpAMcIBBeTOh8BLW7f+ihyOZ0kpKX1GoiQB3Hj8VpY3Uv0T6Mp5BMiqwQQNwLXeo3+s71FlyIOvb+KlInn85JTas6caMWvIBZayIsdW4ANl3sb7v0m9233+xBeK/btcN0gEAADTv6m/3/APbdaiw2Vk1tLQXxuEBwMe5u6RtdtVnGLWs3PIta10VmJBA9ztriK3MZ6j9n82kpqDUDjv3CcDkadu4/vWnm9La5rbcIOsc5s2B79ZIkOq3D/wADfYsuxj63OrsaWPbEtcIKSnTwWXU1etrXFsC3QQAAXV+9zdn0/etfFffdQW5DIj26H2OkGfa331Oauax8y3He4sLTvlp3CfgZ+luatHA6vYX1VWurFNj9ha4at3fntd/W2N9/6JJJ1o/T/FbXVbfsLK3Vt9Wyx4rZS8g6NG+13t93s/7+sN49W85dlba3WE72B5aWu+g2w7Q57d2yz6TPTXSdUooya/s+RDRuDxYTse1w/wAIN30f5brfYuZljWjU7S0NLNBw0fyHfnBnt+gkhO26ykU34/6HJa0tde0bQZHvH6R1rPU/f9P9GrozWPY7LtO54OpYS0SNsbWu93/TWPIjnTRFNxdXt9xbt2wdWiDun6I/Nckp0X9QdcyL6SwBoa1rHEBzRt198t31/nIFjntt9IsBLiAC1wiCeY/SOa1zf+21U9eQ1tg3VsGrW6EggNf7v3vYiMFbvUA3ue7RjzIaCSGbnFp3O9n5iSmD2uYXMeNrmzLNJ+O4pnsDNQ8PaSIcNAYLp2yitpvuedu192g9x2nQ7fbv9n+j+moWDIrLhawsI5lgHlO7bt+kkpiAARMRrzx/0DuRCKeBtB2y3a4niNo9w2/RQgQIJLTr9FwJER9LbH/f1J1YEWNeHVwA12rZgbfa0z+ckp//0+FNpL5BIEzqZEj4j2Je1rtzXhxaHS0wR/5FVTYJPxCXqD8qSmw9xkl4gkeG0f5rQExe2dPFA3iD8E/q9oESkpIHCBIkRweCrmG572O3e5rXCNrRLWwHfm7drVnCwd+I7LTwHiupxnZLplx1gAQkp0sO55Y8WEkMIa0kGAANHbnO/OlY2ZlHIyLLC7c0HbX4BjT7I/6tRz81l0U1D9EwkniC6Xat2/me7equ/QpKbLbHNJAcQCTIE/3KD3MP0nEtIG58axPu0P7qEHyewMpnP11iY1jj8EkkkgC9nqrra3FnDxqW8klsdnDcz3LGzvszLNuOz3M+m3WNQPoNlrWs/qITOp7am1vaXuYNo1gQPo7v3lUfaXvL3AFziXH4kykhO4uiXaDgSImOYgJhY4t2ydvhOn3KvvHh4J/USUnNgLdsAQPpd/mnaXF52STOvH4yq28R8kSu8McSeD4ePZJTdbQ17PpfpGgBrwNoaR9Fx2JZZuBBfa57NHAuO47422NYfpfy1XZnlviG9jOoj+SiZWW11JYHB7nEDQzoDulJSN7jDXOLiXA7Z/dH7qm20hpIdofaI9ujvp+0fmKrvj2t0Dj301Th7YfDdurREkx9JJT/AP/U81FhE66TPZObSRz95Cr+r5fl/vTep5JKT70t/wCVA9QeCf1R4fl/vSUm3o7rh9nrrB0J935YVH1B4JeqkpOXgcGU4JIn+KALR4f6/el6jfBJScWD/bqkXt+/xJQPUHml6vikpNvEpbxGvPZB9VvMapeo3wKSmwbhrAjwBg/wTeoI5/BV/UHgl6o8Py/3pKT70t+qB6g8EvV1nukpPvT+oY29hwFX9QeH+v3p/VHh/r96Skwsjjnx8FI2z9w/BVvU/BP6o8ElP//V8qSSSSUpJJJJSkkkklKSSSSUpJJJJSkkkklKSSSSUpJJJJSkkkklKSSSSU//2f/tFKZQaG90b3Nob3AgMy4wADhCSU0EJQAAAAAAEAAAAAAAAAAAAAAAAAAAAAA4QklNA+0AAAAAABAASAAAAAEAAgBIAAAAAQACOEJJTQQmAAAAAAAOAAAAAAAAAAAAAD+AAAA4QklNBA0AAAAAAAQAAABaOEJJTQQZAAAAAAAEAAAAHjhCSU0D8wAAAAAACQAAAAAAAAAAAQA4QklNJxAAAAAAAAoAAQAAAAAAAAACOEJJTQP1AAAAAABIAC9mZgABAGxmZgAGAAAAAAABAC9mZgABAKGZmgAGAAAAAAABADIAAAABAFoAAAAGAAAAAAABADUAAAABAC0AAAAGAAAAAAABOEJJTQP4AAAAAABwAAD/////////////////////////////A+gAAAAA/////////////////////////////wPoAAAAAP////////////////////////////8D6AAAAAD/////////////////////////////A+gAADhCSU0EAAAAAAAAAgAAOEJJTQQCAAAAAAAOAAAAAAAAAAAAAAAAAAA4QklNBDAAAAAAAAcBAQEBAQEBADhCSU0ELQAAAAAABgABAAAAAThCSU0ECAAAAAAAEAAAAAEAAAJAAAACQAAAAAA4QklNBB4AAAAAAAQAAAAAOEJJTQQaAAAAAANHAAAABgAAAAAAAAAAAAAGQAAACgAAAAAJAFQAaQBtAGUAegBvAG4AZQBzAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAoAAAAGQAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABAAAAABAAAAAAAAbnVsbAAAAAIAAAAGYm91bmRzT2JqYwAAAAEAAAAAAABSY3QxAAAABAAAAABUb3AgbG9uZwAAAAAAAAAATGVmdGxvbmcAAAAAAAAAAEJ0b21sb25nAAAGQAAAAABSZ2h0bG9uZwAACgAAAAAGc2xpY2VzVmxMcwAAAAFPYmpj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BgAAAAAABwAIAAAAAQEA/+EWpWh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNC4yLjItYzA2MyA1My4zNTI2MjQsIDIwMDgvMDcvMzAtMTg6MDU6NDEgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzQgTWFjaW50b3NoIiB4bXA6Q3JlYXRlRGF0ZT0iMjAwOS0wNC0zMFQxNjozNDozNCswMTowMCIgeG1wOk1vZGlmeURhdGU9IjIwMDktMDQtMzBUMTc6MTg6MDUrMDE6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMDktMDQtMzBUMTc6MTg6MDUrMDE6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvanBlZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9InNSR0IgSUVDNjE5NjYtMi4xIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjkxRjI3QzczNDUyMTY4MTFBRUFFOTg3MzYzRDU1MjAxIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjhCMzk2OTQyMzQyMTY4MTFBRUFFOTg3MzYzRDU1MjAxIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6OEIzOTY5NDIzNDIxNjgxMUFFQUU5ODczNjNENTUyMDEiIHRpZmY6T3JpZW50YXRpb249IjEiIHRpZmY6WFJlc29sdXRpb249IjcyMDAwMC8xMDAwMCIgdGlmZjpZUmVzb2x1dGlvbj0iNzIwMDAwLzEwMDAwIiB0aWZmOlJlc29sdXRpb25Vbml0PSIyIiB0aWZmOk5hdGl2ZURpZ2VzdD0iMjU2LDI1NywyNTgsMjU5LDI2MiwyNzQsMjc3LDI4NCw1MzAsNTMxLDI4MiwyODMsMjk2LDMwMSwzMTgsMzE5LDUyOSw1MzIsMzA2LDI3MCwyNzEsMjcyLDMwNSwzMTUsMzM0MzI7NzA0RjZCMzA0QzRFREMzNUNBMjQ3NDQzM0E3NzFCMDYiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSIyNTYwIiBleGlmOlBpeGVsWURpbWVuc2lvbj0iMTYwMCIgZXhpZjpDb2xvclNwYWNlPSIxIiBleGlmOk5hdGl2ZURpZ2VzdD0iMzY4NjQsNDA5NjAsNDA5NjEsMzcxMjEsMzcxMjIsNDA5NjIsNDA5NjMsMzc1MTAsNDA5NjQsMzY4NjcsMzY4NjgsMzM0MzQsMzM0MzcsMzQ4NTAsMzQ4NTIsMzQ4NTUsMzQ4NTYsMzczNzcsMzczNzgsMzczNzksMzczODAsMzczODEsMzczODIsMzczODMsMzczODQsMzczODUsMzczODYsMzczOTYsNDE0ODMsNDE0ODQsNDE0ODYsNDE0ODcsNDE0ODgsNDE0OTIsNDE0OTMsNDE0OTUsNDE3MjgsNDE3MjksNDE3MzAsNDE5ODUsNDE5ODYsNDE5ODcsNDE5ODgsNDE5ODksNDE5OTAsNDE5OTEsNDE5OTIsNDE5OTMsNDE5OTQsNDE5OTUsNDE5OTYsNDIwMTYsMCwyLDQsNSw2LDcsOCw5LDEwLDExLDEyLDEzLDE0LDE1LDE2LDE3LDE4LDIwLDIyLDIzLDI0LDI1LDI2LDI3LDI4LDMwO0ZCMkNEQjk2MTg2MUVGNTAyMDBFRTc2MkMwQzJBNzg3Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo4QjM5Njk0MjM0MjE2ODExQUVBRTk4NzM2M0Q1NTIwMSIgc3RFdnQ6d2hlbj0iMjAwOS0wNC0zMFQxNjozODo0OSswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENTNCBNYWNpbnRvc2giLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBpbWFnZS9wbmcgdG8gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6OEMzOTY5NDIzNDIxNjgxMUFFQUU5ODczNjNENTUyMDEiIHN0RXZ0OndoZW49IjIwMDktMDQtMzBUMTY6Mzg6NDkrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDUzQgTWFjaW50b3NoIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo4RDM5Njk0MjM0MjE2ODExQUVBRTk4NzM2M0Q1NTIwMSIgc3RFdnQ6d2hlbj0iMjAwOS0wNC0zMFQxNjo0MDo0NSswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENTNCBNYWNpbnRvc2giIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjhFRjI3QzczNDUyMTY4MTFBRUFFOTg3MzYzRDU1MjAxIiBzdEV2dDp3aGVuPSIyMDA5LTA0LTMwVDE3OjE1OjUxKzAxOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ1M0IE1hY2ludG9zaCIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6OTBGMjdDNzM0NTIxNjgxMUFFQUU5ODczNjNENTUyMDEiIHN0RXZ0OndoZW49IjIwMDktMDQtMzBUMTc6MTg6MDUrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDUzQgTWFjaW50b3NoIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9qcGVnIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL2pwZWciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjkxRjI3QzczNDUyMTY4MTFBRUFFOTg3MzYzRDU1MjAxIiBzdEV2dDp3aGVuPSIyMDA5LTA0LTMwVDE3OjE4OjA1KzAxOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ1M0IE1hY2ludG9zaCIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OTBGMjdDNzM0NTIxNjgxMUFFQUU5ODczNjNENTUyMDEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6OEIzOTY5NDIzNDIxNjgxMUFFQUU5ODczNjNENTUyMDEiIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4QjM5Njk0MjM0MjE2ODExQUVBRTk4NzM2M0Q1NTIwMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3hwYWNrZXQgZW5kPSJ3Ij8+/+IMWElDQ19QUk9GSUxFAAEBAAAMSExpbm8CEAAAbW50clJHQiBYWVogB84AAgAJAAYAMQAAYWNzcE1TRlQAAAAASUVDIHNSR0IAAAAAAAAAAAAAAAEAAPbWAAEAAAAA0y1IUCAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARY3BydAAAAVAAAAAzZGVzYwAAAYQAAABsd3RwdAAAAfAAAAAUYmtwdAAAAgQAAAAUclhZWgAAAhgAAAAUZ1hZWgAAAiwAAAAUYlhZWgAAAkAAAAAUZG1uZAAAAlQAAABwZG1kZAAAAsQAAACIdnVlZAAAA0wAAACGdmlldwAAA9QAAAAkbHVtaQAAA/gAAAAUbWVhcwAABAwAAAAkdGVjaAAABDAAAAAMclRSQwAABDwAAAgMZ1RSQwAABDwAAAgMYlRSQwAABDwAAAgMdGV4dAAAAABDb3B5cmlnaHQgKGMpIDE5OTggSGV3bGV0dC1QYWNrYXJkIENvbXBhbnkAAGRlc2MAAAAAAAAAEnNSR0IgSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAASc1JHQiBJRUM2MTk2Ni0yLjEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAADzUQABAAAAARbMWFlaIAAAAAAAAAAAAAAAAAAAAABYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9kZXNjAAAAAAAAABZJRUMgaHR0cDovL3d3dy5pZWMuY2gAAAAAAAAAAAAAABZJRUMgaHR0cDovL3d3dy5pZWMuY2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZGVzYwAAAAAAAAAuSUVDIDYxOTY2LTIuMSBEZWZhdWx0IFJHQiBjb2xvdXIgc3BhY2UgLSBzUkdCAAAAAAAAAAAAAAAuSUVDIDYxOTY2LTIuMSBEZWZhdWx0IFJHQiBjb2xvdXIgc3BhY2UgLSBzUkdCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGRlc2MAAAAAAAAALFJlZmVyZW5jZSBWaWV3aW5nIENvbmRpdGlvbiBpbiBJRUM2MTk2Ni0yLjEAAAAAAAAAAAAAACxSZWZlcmVuY2UgVmlld2luZyBDb25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB2aWV3AAAAAAATpP4AFF8uABDPFAAD7cwABBMLAANcngAAAAFYWVogAAAAAABMCVYAUAAAAFcf521lYXMAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAKPAAAAAnNpZyAAAAAAQ1JUIGN1cnYAAAAAAAAEAAAAAAUACgAPABQAGQAeACMAKAAtADIANwA7AEAARQBKAE8AVABZAF4AYwBoAG0AcgB3AHwAgQCGAIsAkACVAJoAnwCkAKkArgCyALcAvADBAMYAywDQANUA2wDgAOUA6wDwAPYA+wEBAQcBDQETARkBHwElASsBMgE4AT4BRQFMAVIBWQFgAWcBbgF1AXwBgwGLAZIBmgGhAakBsQG5AcEByQHRAdkB4QHpAfIB+gIDAgwCFAIdAiYCLwI4AkECSwJUAl0CZwJxAnoChAKOApgCogKsArYCwQLLAtUC4ALrAvUDAAMLAxYDIQMtAzgDQwNPA1oDZgNyA34DigOWA6IDrgO6A8cD0wPgA+wD+QQGBBMEIAQtBDsESARVBGMEcQR+BIwEmgSoBLYExATTBOEE8AT+BQ0FHAUrBToFSQVYBWcFdwWGBZYFpgW1BcUF1QXlBfYGBgYWBicGNwZIBlkGagZ7BowGnQavBsAG0QbjBvUHBwcZBysHPQdPB2EHdAeGB5kHrAe/B9IH5Qf4CAsIHwgyCEYIWghuCIIIlgiqCL4I0gjnCPsJEAklCToJTwlkCXkJjwmkCboJzwnlCfsKEQonCj0KVApqCoEKmAquCsUK3ArzCwsLIgs5C1ELaQuAC5gLsAvIC+EL+QwSDCoMQwxcDHUMjgynDMAM2QzzDQ0NJg1ADVoNdA2ODakNww3eDfgOEw4uDkkOZA5/DpsOtg7SDu4PCQ8lD0EPXg96D5YPsw/PD+wQCRAmEEMQYRB+EJsQuRDXEPURExExEU8RbRGMEaoRyRHoEgcSJhJFEmQShBKjEsMS4xMDEyMTQxNjE4MTpBPFE+UUBhQnFEkUahSLFK0UzhTwFRIVNBVWFXgVmxW9FeAWAxYmFkkWbBaPFrIW1hb6Fx0XQRdlF4kXrhfSF/cYGxhAGGUYihivGNUY+hkgGUUZaxmRGbcZ3RoEGioaURp3Gp4axRrsGxQbOxtjG4obshvaHAIcKhxSHHscoxzMHPUdHh1HHXAdmR3DHeweFh5AHmoelB6+HukfEx8+H2kflB+/H+ogFSBBIGwgmCDEIPAhHCFIIXUhoSHOIfsiJyJVIoIiryLdIwojOCNmI5QjwiPwJB8kTSR8JKsk2iUJJTglaCWXJccl9yYnJlcmhya3JugnGCdJJ3onqyfcKA0oPyhxKKIo1CkGKTgpaymdKdAqAio1KmgqmyrPKwIrNitpK50r0SwFLDksbiyiLNctDC1BLXYtqy3hLhYuTC6CLrcu7i8kL1ovkS/HL/4wNTBsMKQw2zESMUoxgjG6MfIyKjJjMpsy1DMNM0YzfzO4M/E0KzRlNJ402DUTNU01hzXCNf02NzZyNq426TckN2A3nDfXOBQ4UDiMOMg5BTlCOX85vDn5OjY6dDqyOu87LTtrO6o76DwnPGU8pDzjPSI9YT2hPeA+ID5gPqA+4D8hP2E/oj/iQCNAZECmQOdBKUFqQaxB7kIwQnJCtUL3QzpDfUPARANER0SKRM5FEkVVRZpF3kYiRmdGq0bwRzVHe0fASAVIS0iRSNdJHUljSalJ8Eo3Sn1KxEsMS1NLmkviTCpMcky6TQJNSk2TTdxOJU5uTrdPAE9JT5NP3VAnUHFQu1EGUVBRm1HmUjFSfFLHUxNTX1OqU/ZUQlSPVNtVKFV1VcJWD1ZcVqlW91dEV5JX4FgvWH1Yy1kaWWlZuFoHWlZaplr1W0VblVvlXDVchlzWXSddeF3JXhpebF69Xw9fYV+zYAVgV2CqYPxhT2GiYfViSWKcYvBjQ2OXY+tkQGSUZOllPWWSZedmPWaSZuhnPWeTZ+loP2iWaOxpQ2maafFqSGqfavdrT2una/9sV2yvbQhtYG25bhJua27Ebx5veG/RcCtwhnDgcTpxlXHwcktypnMBc11zuHQUdHB0zHUodYV14XY+dpt2+HdWd7N4EXhueMx5KnmJeed6RnqlewR7Y3vCfCF8gXzhfUF9oX4BfmJ+wn8jf4R/5YBHgKiBCoFrgc2CMIKSgvSDV4O6hB2EgITjhUeFq4YOhnKG14c7h5+IBIhpiM6JM4mZif6KZIrKizCLlov8jGOMyo0xjZiN/45mjs6PNo+ekAaQbpDWkT+RqJIRknqS45NNk7aUIJSKlPSVX5XJljSWn5cKl3WX4JhMmLiZJJmQmfyaaJrVm0Kbr5wcnImc951kndKeQJ6unx2fi5/6oGmg2KFHobaiJqKWowajdqPmpFakx6U4pammGqaLpv2nbqfgqFKoxKk3qamqHKqPqwKrdavprFys0K1ErbiuLa6hrxavi7AAsHWw6rFgsdayS7LCszizrrQltJy1E7WKtgG2ebbwt2i34LhZuNG5SrnCuju6tbsuu6e8IbybvRW9j74KvoS+/796v/XAcMDswWfB48JfwtvDWMPUxFHEzsVLxcjGRsbDx0HHv8g9yLzJOsm5yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp22vvbgNwF3IrdEN2W3hzeot8p36/gNuC94UThzOJT4tvjY+Pr5HPk/OWE5g3mlucf56noMui86Ubp0Opb6uXrcOv77IbtEe2c7ijutO9A78zwWPDl8XLx//KM8xnzp/Q09ML1UPXe9m32+/eK+Bn4qPk4+cf6V/rn+3f8B/yY/Sn9uv5L/tz/bf///+4ADkFkb2JlAGRAAAAAAf/bAIQAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQIBAQEBAQECAgICAgICAgICAgICAgMDAwMDAwMDAwMDAwMDAwEBAQEBAQECAQECAwICAgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMD/8AAEQgGQAoAAwERAAIRAQMRAf/dAAQBQP/EAaIAAAAGAgMBAAAAAAAAAAAAAAcIBgUECQMKAgEACwEAAAYDAQEBAAAAAAAAAAAABgUEAwcCCAEJAAoLEAACAQMEAQMDAgMDAwIGCXUBAgMEEQUSBiEHEyIACDEUQTIjFQlRQhZhJDMXUnGBGGKRJUOhsfAmNHIKGcHRNSfhUzaC8ZKiRFRzRUY3R2MoVVZXGrLC0uLyZIN0k4Rlo7PD0+MpOGbzdSo5OkhJSlhZWmdoaWp2d3h5eoWGh4iJipSVlpeYmZqkpaanqKmqtLW2t7i5usTFxsfIycrU1dbX2Nna5OXm5+jp6vT19vf4+foRAAIBAwIEBAMFBAQEBgYFbQECAxEEIRIFMQYAIhNBUQcyYRRxCEKBI5EVUqFiFjMJsSTB0UNy8BfhgjQlklMYY0TxorImNRlUNkVkJwpzg5NGdMLS4vJVZXVWN4SFo7PD0+PzKRqUpLTE1OT0laW1xdXl9ShHV2Y4doaWprbG1ub2Z3eHl6e3x9fn90hYaHiImKi4yNjo+DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//Q+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//R+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//S+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//T+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//U+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//V+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//W+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//X+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//Q+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//R+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//S+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//T+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//U+f8A+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r//V0G/4XD+Hktc/2l/Bt/qffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jffuvde/hcX+rk/wCSl/6N9+6917+Fxf6uT/kpf+jf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7fm9PWD/AHrj37r3SMx1bPiK2DI0LeGenkR28foE8KuGlppgttSOoKkH/XFiAR7r3Sz7FpKem3BHNTqsbV+Ogq6hF4vP5ZIvMyj+06qoNvrpv9Tf37r3SD9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3WKT9Z/1k/wB5QH37r3XEfUf64/3v37r3X//Q0OiHWEhOXWMhL/lwvpuD/j7917pSV+Ho/MtThs3hJaciKSFJcxHjMnj5/CplQit8TkLJq0SREtb6qCOfde6mbrzceX/gdMk4rpMNi0pazKhJFXJZGWKIVksBmCu0QaK6uyKWLMQNNifde6mbZqaGHbu86WqyFFSVOWxzUePgqaqCKWomjopx6VdhYFpVVWawJuL8G3uvdM23hTQ1U+VqauigbE0dTWY6kqZolmyGYWBv4dDFA7AlY3tKzHjUEAvc2917rjt7NVeLzWJrajIV00ENVHHWCprKuoialqR9tVSvFK5F0VjKOL3X37r3UrclJjDuSZsXkcdVYvI1sVV54KymaGkeaoH8RiqGBsihtUqm2kowCliCPfuvdRM/Mg3Jk67HVqSKcl9/QV9FOsigsFmjkhkW4uhupU/0KkEfX3XulRlMzhc/t6uylR4KPdq0tHiamnVxEMlCMrTVRrKeIm8gVY2YC5aMF0a4CMfde69io8fV7DyOKlzeBx+SqsumRpYMnlqWkMcVNUU6FqiMMzp5FikCak/tKfoQffuvdJ+gWkwGQp8nV5DFZWagZp6LHYWqkyCVFZ42SB6yvEawwxRk6yQzuSBpU29+6913R1BNPuLcNXkaYZurimpqCnSojSuM+UmWHJZGCFXDxrDAzRwf2rFrfpUt7r3UzZmcbG7gpmyNfMcbWQVFBWPkKyaamgSRPNDO5qnKqA6KjNwLMb8D37r3UWip8fjd3UQp8jQyYaky0dbT5AVcJpkxqE1MaSyEi0iD9lkYBiwuAQwJ917p7bcFJj96Zmo89Pkd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GkL08lFLSQRVDyOoWfVIoZR+r9a+n6e691CqsXSVOby9ZUZvAR4x8pl8gpizePqqyuglq5ayCno6WlkY65QVS7ldN/ywCn3XunLZL0H8L3ZT1+UxWLly2OhoaRclkKek1zfa1Gt9DuHKIZU1MFI+oFyCPfuvdJ0YmjopoJMpncHU0ccsbzwYCtbNV9VHGdZp4Y40SKPyadBeaVQoOog/T37r3UfM5apzmTqcpVKsTTaI4adGZ46SkhGmCmRmte3LOwADOzEAAgD3Xumz37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdR5VvI3NuE/H+0D37r3WPRYg3vyPx/j7917r//R0X8pDt/GZPI477TPz/w+vrKITHN4uMzClqGgEpQYsgFtNyAffuvdQfuNv/8AOvz3/n+xn/1q9+691lp/4FVVEFMlFnImnmji8jZvGyBPI4UtoGMW9r3tqF/6j37r3WIVGA/OPz1/zbPYwf7x/C/fuvde+42//wA6/Pf+f7Gf/Wr37r3XvuNv/wDOvz3/AJ/sZ/8AWr37r3XvuNv/APOvz3/n+xn/ANavfuvdZZP4FClO70ecf7mAzqq5rGp4wJ5IAhJxjav0ar2H1tbi5917rF9xt/8A51+e/wDP9jP/AK1e/de6zAYM0zVn2eb8a1CU3i/jeN1lniaXX5P4Zaw02tp9+691h+42/wD86/Pf+f7Gf/Wr37r3WaEYOpE5jo83H9vTvUtrzeNfWqMqlFtjFsfV9effuvdYfuNv/wDOvz3/AJ/sZ/8AWr37r3XvuNv/APOvz3/n+xn/ANavfuvde+42/wD86/Pf+f7Gf/Wr37r3XjUYD8Y/PX/F89jD/vH8L9+691mqBg6OeWmlo83K8TAF0zeNjU3UMPScY39f6+/de6w/cbf/AOdfnv8Az/Yz/wCtXv3Xuvfcbf8A+dfnv/P9jP8A61e/de699xt//nX57/z/AGM/+tXv3Xus1sH9uKv7PN+Izmn8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8bxuoGNFfVr/AIZzfV9NPFvqb8e69119xt//AJ1+e/8AP9jP/rV7917rMgwcsVRULR5tUpREXjObxrNJ5pPGNLjGC1vr9D7917rD9xt//nX57/z/AGM/+tXv3Xuvfcbf/wCdfnv/AD/Yz/61e/de699xt/8A51+e/wDP9jP/AK1e/de68ajAfjH56/4vnsYf94/hfv3XustQcFS1E9M9FnZWgmlh8i5vGRBxG5QP4zjGte17ajb+p9+691i+42//AM6/Pf8An+xn/wBavfuvde+42/8A86/Pf+f7Gf8A1q9+69177jb/APzr89/5/sZ/9avfuvdZT/Algjqvs84Uknng8X8axoZTDHHJr8n8MsdXktbSLW+pvx7r3WL7jb//ADr89/5/sZ/9avfuvdZI3wEonIos8ngp/Pb+NYx/L/lMVP47/wAMXTxIW1Wb6Wtzce691j+42/8A86/Pf+f7Gf8A1q9+691mp22/UVEFP9lnovPNFD5P43jJfH5ZAhfx/wAMXVa97ahf+o9+691h+4wH/Ovz3/n+xn/1q9+69177jb//ADr89/5/sZ/9avfuvde+42//AM6/Pf8An+xn/wBavfuvde+42/8A86/Pf+f7Gf8A1q9+691lkbARJTv9nnn+4habT/G8Yni01ElPo1fwxtX6NWqy/W1uLn3XusX3G3/+dfnv/P8AYz/61e/de699xt//AJ1+e/8AP9jP/rV7917r33G3/wDnX57/AM/2M/8ArV7917rLD/A6h2RKPOR6IaidmbN42S608DTlABjFtq06b34vextY+691i+42/wD86/Pf+f7Gf/Wr37r3WanOAqKiCn+zz0XnnihMv8axkvjEsgQuIv4Ymq1721C/9R7917qOtTgGVW/h+e9Sg/8AF+xn5F/+dV7917rl9xgP+dfnv/P9jP8A61e/de6yzfwKmcRPR5yRjFTy6lzeNjA+4p1qNGk4xv06tN782vYfT37r3WL7jb//ADr89/5/sZ/9avfuvde+42//AM6/Pf8An+xn/wBavfuvde+42/8A86/Pf+f7Gf8A1q9+691lH8CaCSq+zzgSOeCDxfxrGlmM0ckmvyfwyw0+O1tJvf6i3PuvdYvuNv8A/Ovz3/n+xn/1q9+69177jb//ADr89/5/sZ/9avfuvde+42//AM6/Pf8An+xn/wBavfuvdZImwM8s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691h+42//wA6/Pf+f7Gf/Wr37r3WZxg44IKlqPNslS06pGM3jVZPAVBLOcYQb6v6D37r3WH7jb//ADr89/5/sZ/9avfuvdYcrS09PJSSU33AiraGGrEdVLFPLFqZodBmhihVh6L38Y+tubXPuvdNg+o/1x/vfv3Xuv/S0Vd1cbn3GP6Z7Mf+7CT37r3TJGoeREaRIld1VpZBIY4lZrGSQQq7lV+p0qxt9ATx7917pTUeHkpK95W+4mhociKaOeKkZoppoB5m8oViyjTpOhNUjKSUUlSPfuvdNtdjRRUlLMRUmSdaeRmKUxpAlVSLVxqksMruHswGmREJsxH6SPfuvdNHv3Xuve/de697917qVUTpNHRoqMppqXwOWIId/uZJ9a2AsLOBY/09+691F9+6906D/iyuf+rpF/7iP7917pr9+691LpKlacVQZGf7iklpl0sF0NIysHNwbgW+n+8+/de6ie/de697917r3v3XuninxIqBijFVxzNkairhkhhR1kpPs0hldGNV4laRlluoU+P6DyElgnuvdS6mhFZXSu8ssRqqymoaZpIIQpqpYFLPUfbSyBYlJT1RlyytqAJUqfde6TYIYBhyCAQf6g8j37r3Xfv3Xuve/de6l/cL9iKTQ2sVZqPJcadJhEWjTa97i97+/de6ie/de6c8cLw5b/tWMf8AbV0Hv3Xumz37r3UikmWnq6WodWdIKiGZkUhWZYpA7KrG4BIFgSPfuvdR/fuvde9+691737r3U+GiWagrK0VMYejaAGl8cpldJpBH5jIQIwoJtYOWv/ZC+r37r3TsMUZ/4akk1Q1P4q+KCRKGOnFRBSeSqkqaCWqaJZofMzRNLIylbjg20J7r3TDUxLDUTRKJlRJGVBUIsc+i/oMqIWAJFjwxH9CRz7917rB7917r3v3XupFLMkEjO6swanq4QFIBD1FI8EbXIPAZgSPyBx7917qP7917rw5IH9ffuvdTcnxksgP6V1X/ANb29+691C9+691IqpknkV0VlC09JCQxBJenpEgka4A4LKSB+AeffuvdR/fuvde9+691PxlGmQr6Sikq4qJameOH7mZJpEQyMFACQqSWJNlBKre2p0W7D3Xus1BF5qN1ilDS10YSVPDIYqRUlSam89SSqq08i+OMANyQDy40+691hraNKYB4pWli+5q6PU8YjLS0QjMsiKC3oYSqVudX1BHAJ917qB7917r3v3XuuSMFdGIuFZWI/qAbke/de6zVcy1NXVVCKUSeommVGIZkWWQuqlgACQDa9vfuvdR/fuvdOeTFlxv+OMpz/wBZH9+6902e/de6lmpU0CUmhta1ctSZNQ0lZIUiCabXuCt73/Pv3Xuonv3Xuve/de6yRIskscbyxwK7qrTzCYxRBjYySCnSR9I+p0Ix/oCePfuvdPkNGKHITRpUiaVcnksLQEU7NHVTwP8AZ+WVQ/oWTyIFCsxBbUeEs3uvdRshjVoqekk/yoyTRwvMzpS/bKZ6ZKlEilp5ZGJsxt5FUkAMByQPde6aPfuvde9+691737r3UusqVqWpyqMnhpKambUwbU0EehnFgLA/UD37r3UT37r3Ti4/3E0x/wCrjXD/ANVqc+/de6bvfuvdSIZUjiq0ZWJqKdIoyCAEdauKoLMD9RpjYWH5IPv3Xuo/v3Xuve/de697917pwp6BqinMyyWeR6qKlhEbuZ5aKnSqqYyyfo9EiaDYhmNjpUMy+691lyFOzNUVwsNdYVqoL3NHU1hkqoqYO1jJZVYOwUAOrD6aWf3Xumr37r3Xvfuvde9+691IWVFpZoCrF5KillVwRpCQRzI6sPqSTIpBvxY/1Fvde6j+/de6lUwvHW/4UoP/AKtRe/de6i+/de6kUkyU9XSzyKzxwVEEzopAZlilDsqlgQCQOCR7917qP7917r3v3Xuve/de6lUccE06RT/dESeiNaOGOeeSdzpijWOR0B1E24JP9AffuvdP89BTyUE/28tXV02OnrY6eSClpSXkSmhnq5ZtNSxaINfS8KsBGpkawNh7r3SW9+691737r3XvfuvdS6OpWmadmRnEtJVUwCsF0tPCY1c3B4BNyPfuvdRPfuvdTMeL5CgH/TbS/wDW9ffuvdY6zirqh/Spn/62n37r3Uf37r3UurqFqHhZEZBHSUtOQxDXangWJnFgOCRcD37r3UT37r3XvfuvdZYIZKiaGniCmWeWOGMMwVTJK4RAzH6C5HPv3Xun16NKSCugkNSKYNA8ztSKKrywymGDxIZQiq/kkLK51KY9DBbqx917pjqITT1FRTs6SNTTzU7vHr8bPBKYnaPyBW0kg2uoNvwPfuvdYffuvde9+691IpJlp6qmqGUusFRDMyqQrMsUgcqCb2Jta9vfuvdYpGDySOAQHdmAJuQGa4BPv3XuuHv3XunLKC1TD/2rcQf9vioT7917pt9+691IaZGpIYArB46iqmZ7jSyTxwoigWvcGNiTf8j+h9+691H9+691737r3XvfuvdKLH0EccMFVUPolqa6jojDKyU0MeLylHWRTVklVOQkch8JNOX9PBdgykD37r3TTXQfbzKFp5KeKWJZYQ9XBXiWO5iaWKspkjjdS6uvpX0kFSdSn37r3UP37r3Xvfuvde9+691ImmSSKjRVZTT07QuSQQ7tVy1GpABwLSAWP5BP59+691H9+691Jf8A4BwH/ppq/wDeIoffuvdRvfuvdSIZUjjq0ZWZqimWGMqQAjCriqCzgjkaYyLD8kH37r3Uf37r3Xvfuvde9+69040dCKuGodWmaSGnq6l1hp3mSmgpI1kaorpBbxxuWEaML+r629Ib3XupGVgOuWd3AqITRQ1kIiMaRyT0heDwNqfUNMbK97HULi4ay+690ze/de697917r3v3XupYqVFA1JobW1WlT5NQ0hUhaIppte92ve/v3Xuonv3XunTGD0ZX/DEzn/1ahHv3Xumv37r3UugqVpKyCpdGkWJ9TIrBWYaSLBiDb/be/de6ie/de697917r3v3XupuNp4avIUVLUSSRQ1NVDBJJCiySIJXCAojEA8kD68fWxtY+6905vBHNjwog81RRSZGnjWHJ0cckVJTD781NRj3jeaW2ubU6aECIPyGPv3Xuk/7917r3v3Xuve/de6lU06wpWIyMxqaXwIQQNDfcRza2BHIshFhb6+/de6i+/de6ccPzlsWP65Gi/wDclffuvdNo+g/1h/vXv3Xuu/fuvdSKqZJ5FdFZQtPSQkMQSXp6RIJGuAOCykgfgHn37r3Uf37r3Xvfuvde9+690909MklBLTrf7iWmbMmViBHHBQPNSrTKouSz/uszG1rIAOWPv3XumT37r3Xvfuvde9+6912OCD/Qj37r3WesmWoq6qoRSiT1E8yoxDMiyyl1ViLAkA2JA9+691H9+691nqf86v8AjT0n/uIg9+691g9+691JeZWpIKcKweKoqpme40ss8cSIoW1wR4zc3/I/p7917qN7917r3v3Xuve/de6f8XR2GPrYqmNpqjKxYw0/28shphVKYxPKZGiRyQdSIjkcetlPHv3XuoGSpEo6hYkWqVGiSRTVxwozhmKlomp5JUdLgrqVzyGBsQR7917pv9+691737r3XvfuvdS6upWo+10oyeCkhpm1MG1NGSS4sBYG/09+691E9+691nP8AwFT/AKiZv+tMXv3XusHv3XupcNQsVLWQFGZqkU4VgQAnhl8jagRc3+gsR7917qJ7917r3v3Xuve/de6dcbR09Z5Uk+4eVY5JP2Hp4xTQxqNVU61HM51MAtPEVdgDZr2B917rJXQic19Vp8dRBUI1YBMjU7vWMxZaSO2tVjcaBd3LL6iUI0n3Xumb37r3Xvfuvde9+691KadTRQ02lg8dVUTl7jSVmiijVQtr3BjJJv8Ake/de6i+/de6lU36Mh/hj/8A5J0o9+691F9+691IpJkp6ulnkVnSCohmdFIVmSOQOyqWBAJAsCR7917qP7917r3v3Xuve/de6kUsH3M6RNKlPGTqnqZeIqaBeZaiT8kKtzpHqY2VQWIB917p9yGMWClm1GokbH1Fbj6Z4qeERyw0texaorA07OrEyOD44yq2QEkkn37r3Sa9+691737r3XvfuvdSqSdaeSV3RnElLVwAKQpDVFM0KObg8AsCR7917qL7917qbjecjQD+tbS/9b19+6903x/5uP8A4Iv/AEL7917rn7917qVWTpUTCVEZFEFJFpYhjqp6VIHa4A4JUkf4H37r3UX37r3XvfuvdSaKmNbWUtIrFDU1EUGsJ5CnlcIWEYI1Wve1xf6XH19+6907yxUlNRySyx1q42SSjcxRz46pkNSRUKk0GQjXTKiRpKWjVFGsiNmGlXb3XumaqgalqaildldqaeWBmX9LNDIYyy/XgkXHPv3XusHv3Xuve/de6zU0ogqIJmUsIZopSoNiwjcOVBN7Xt9be/de66nkEs00oBUSSySBSbkB3LAEi1/fuvdYvfuvdZp/1J/1D0n/ALip7917rD7917qXNUrLS0cARlalWcM5YEP5pvINK24t9Dz7917qJ7917r3v3Xuve/de6UVBHjxHRySQVME1ZUpQiabJ08dK1K8P2+XqbzU0axm0g8BaZlVr+TUE9XuvdNNdB4JU008lPFLEJYQ9ZBXrKgdoXliq6aOON18iOnpXhlKk3B9+691D9+691737r3XvfuvdSKqZZ5FdFZAtPSQkMwYlqekSndgQBwSpIH4Btz7917qP7917qSf+AEX/AGsa7/3Do/fuvdRvfuvdSIZkjjq0ZWY1FOsMZBACOtXFOWYEcjSjCw/JHv3Xuo/v3Xuve/de697917pxpaA1MIdfKZZWr1pkSNGVzjaJa6o1szC10cWsDaxJFrX917qRk6a5qa4Mur+Iz0tbCsUkUdPWsWmeKm8rOzRqRJGC51ei5/ULe690ze/de697917r3v3XupDTI1JDAFYPHUVUzPcaWSeOFEUC17gxsSb/AJH9D7917qP7917qXTj/ACfJf4UcP/u0pvfuvdRPfuvdSqGoWlrKapdGdIJkkZFIVmCm5AYggf7Ee/de6i+/de697917r3v3XunOnooKijR0nkFdJl6HHrA0SrTrBWU88nnM+oksHiAK6RYc3a/p917p0emo57s4HhxsNTQCCXLUGNnqJ6StjkkliqKtGVg0dSW8Yi1CxsXCsT7r3ScmjeGWWKSN4ZIpHjkhlv5InRirRyXC+pSLHgc/ge/de6x+/de697917qXS1C061YZGb7ikenWxA0M0qSB2uDcWUiw9+691E9+691lg/wCBFN/1E0//AFuX37r3WEfQf6w/3r37r3Xfv3XupdfULV1k9SiGNZn1hGIZlFgLEgAH/be/de6ie/de697917qfjqNK6oaB6hafTTVdQt43leZqanacQRKtgGYKfU7KoAJuW0q3uvdT6fH+ejKQyNJE9RQy1FStLM0UUgp5JZKWGRmXXLDE8kkqFQDoOlrKDJ7r3TZU0wiSnqI/KaaqWQxNKqI+uGUxSxkIzA29Jvx9bfg+/de6ie/de697917qRRzLT1dLUOrOkFRBM6IQrMsUodlVjcAkCwJHv3Xuow4AH9Pfuvdd+/de6k1X6qf/ALV2J/8AdZD7917qN7917qQ0qGlhgCsHjqKmZnuNLJNFCiKF+twY2ub/AJH9Df3Xuo/v3Xuve/de65xqryIrzRwIzANPKJmiiUnmSRadJJCo+pCIzf0BPHv3XulCmKWnrsvDBO1WuPOZpvPHRzyQx0tPG1M2TrzE1oYnD2jIZrN9QQAr+69035CgSjipGUVfkmhjkn80VOsKPLAkojikglkJIJYWcKSAGtzYe6901+/de697917r3v3XupFVMk8iuisoWnpISGIJL09IkEjXAHBZSQPwDz7917qP7917qdN/xbqD/Gsyn/Wqk9+691B9+691LgqVipq2AozNVRwojBgAhiqFmJYEc3Ckce/de6ie/de697917r3v3Xun6DEqavHpHWJVJPjXysr0kYBg8MtRG1MBXtAGZTANbMVHJ061Cs/uvdeq6ASSzztLIs1VJlquKJ4VUrDQK9RMakRu+ln0uEVC4BAu2ltS+690w+/de697917r3v3XupbVCmhjpNDa0q5qgyXGkrLDHGEC2vcFCb3/AD7917qJ7917qXB/wHrv+WUP/uSnv3Xuonv3XupdFULS1AmdGdRFUR6VYKbzUzwqbkH6FgTx7917qJ7917r3v3Xuve/de6eKTGRVtLTtDUP97UZiixXikh008Qrkk8EomRmZyzLZgEXSB/a1DT7r3TgKGmmCM8R8FPTCCngkzeJoZZ5DkXeRkrpFmikKq1njRAULISWUan917pMujxO8cqPFLGzJJHIrJJG6HS6OjgEEHggi49+691x9+691737r3UiGVI46tGViainWKMqQAjiqinLOCORpRhYW5IPv3Xuo/v3XupeP/wCLjjP+1njv/c2P37r3UT37r3XvfuvdSKqZZ5FdFZQtPSQkMQxLU9IlO7XAHBKkgfgG3P19+691H9+691737r3U7H00FVLPHNLLH46DI1MPijWTyT0lE9VFFIWZdCNo9TAMfxbm4917p5p8dBLiokDyLNXVeOlFRriePQJ56GSnFGdDoU1FzM7+NraLoSpb3Xumetp4o0pKmnWRKetgaaKKaVJpo/FUPSuHlRIw2oprFkFr6fUV1N7r3UD37r3XvfuvdSKSVKerpZ5FZ0gqYJnRCFdlilEjKrEEAkCwJHv3Xuo/v3Xuve/de6ccqLVp/wAaTGH/ANZcPv3Xum737r3UuWpWSkpKYIwamepZnLAq/nZSoVbcW088+/de6ie/de6fM1+jCf8Aajpf/cib37r3TIPqP9cf737917r/09FndaH+9O5f/DgzI5+vGRkHv3XumDQf8P8AeffuvdPsFZV1+QCtHRmatrkmpzL90kFDXSMqLVwrA1+LLqVw6mw1IxAt7r3TfLVSSw+LxwRFzGamWHyq9Y0KlYXqFLGO6gm5jRdR9b6n9Xv3XuoWg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917p1VD/A5P8AtbQ/+4b+/de6atB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3UyOqkjjpYvDSyJSz1UwE0XlE33kccU0UyvcaQsY0FQGUksGDBSvuvdONRPLjK6aGOGjYUxj+zUJUiGimRTJFU0qSSFi6mR2PnaQMx1OGYKV917pi8Z/w9+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8AeffuvdOuNQ+HL3t/xant/r/ewe/de6atB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3UmKeWGnq6ZREY61YUlLBi6iGYTL42BFrkc3B49+69051NSyxUrNT0ckdekldWUxgkhp5qoSzUIkAgkUx2Cl1FP4lQuyqoXj37r3TVUzTVc7zzFNbCNAEGlI4oYxDBDGo+ioiqij8AD37r3WDQf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8AeffuvddhDcfT6j+vv3Xup2UQ/wATyP0/4H1f/uQ3v3XuoGg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917rPSyvSVVNVIscj008NQiS6zG7QyCRUkCFTpJFjZgbfQj37r3TtRzt/CZKb7WjK4q9ZBOXycdSaipkSjSY/a1EcTPFqDRtJE1raTdSQfde6bquqkqxGpip4VRpZWEKyXlqajT9zVSPKztqk0JdFIjW3oRbm/uvdQ9B/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3TrlENsZ/2qqX/od/fuvdNWg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917p9o6ietrKlWiolerqK/IxyPBJJ9hVSI9TNJRgNfkAKqyl1Fla2tQw917pulqpJadKZYaanS8LTmnR0NXLTRGCCadWJUMqs4tEqKSzMwLEn37r3UPQf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3Ti6H+EUo4/wCLjXH/ANVqf37r3TdoP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de6c6OueignjjjPmkEginFROgj88BppS8IOkkIW8ZTQbk+QypZB7r3XPJSsr1NCuklK1mq5z9ayqozJSxVKoQTHdXdnQOQXZjwNKp7r3TToP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de6l0qER130/wCAlv8Ab1cXv3Xuomg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917qRSTSUdQlTGsTyRiTxiVSyo7xmNJgAR6oyQ6G/DAHm1vfuvdTl8lLj6eZUpWepfIRRzeORammUxJBUASRsFcOj2USq3j5aPSxJ9+69006D/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XupuNQ/xHH3tb76k/3moUe/de6x1qH7yr+n/Amf/raffuvdRtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3WSIywSxzRPolhkSWJ1/UkkbB0df8QQCPfuvdPUdQ8tLNUGmoftaSWMPjitb9tU1FeS8lW7LKHVgaeOyK6oANKoFZ1b3XumWUyzyyzysGlmkeWVrBdUkrF3bSgAFySbAW9+691j0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvdOeWQ/cw/T/i2Yb+v/Oph9+6902aD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3Xunqkr8lLE1BJkKk0ccE1SsLkVMYbHY+Z6eARz3AiN9Lx/oIsWViiW917prnlnqWVpWU6I1iiRVWOOKJP0xRRoAqi5JIA5JLG7Ek+691h0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+691KdD9lTjj/AIFVf/WqD37r3UXQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+691Np6qSnjZFhpne8hhndHE9O00YimKPGVDhkGnTMHVeSgViSfde6l5YyRuKH9thEtNJLUlHFTWP9qvgapZ3cftI3jQR6VI9TAuzMfde6Z9B/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3Tri0OjLfT/i0Tf8AuXB7917pq0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+691lgeWnmhqIWCzU8sc8TFVcLLE4kjYo4KmxANiCD+R7917pzqJJ4aSiaOT11tPWSTOyQl089XLSzxU0ioHjjkRbOgaxu39l2X37r3TPoP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917pywyH+MYr6f8XKh/r/ytL7917psVDpH0+g/r/T37r3Xeg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917pzjeo/hdQonskdTT06x+GJm8VWks8yiqI8irqhQ+JTpYkk2N9XuvdNmg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917qRVIfKv04pqP/wBw4z7917qPoP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917p6xLtJLT491iMBq/vSWjSVjLBTOERlmDIyH+0rIb/1Hv3Xum2okacxWjihjgiEEMMRlKRx+RpmGudnkYl3diXdjzYEKFUe691H0H/D/AHn37r3XtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+691IKn7RBxf7uf/rRF7917qPoP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de6mQVdXTIscUoVY5jUQ6kR2pqkhQamlZwTHIQiAulj6VN7qpHuvdZ8pqSpqaJLCnpahoItccAnaOkvTUwqJoUTWyJ6QSP68c+/de6bNB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3UqlQ6Mj/ANq7/H/naUnv3Xuoug/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917qTS1NXRPJJSzeF5YvDIQqSB4vMlQEeOVWUgSRxuAQfUoP1Hv3XunWtrpmJrPFTrV5eKvqKqoRGV0FdkJ0qqeBVIUI6i13VnALKHCnT7917ph0H/D/AHn37r3XtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+691OxiH+JY76f8DqP/AHmoUe/de6bkQ6E+n6V/3r37r3XPQf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvdc4zLDIksT6JI3V0dTyrqdSsP9Y+/de6eYqmdaKSsUxrNTVVFTQRCCl+zjidJ6nWKRoyvkWRQyuLWuwIIbj3XumQq7EszFmYkszMzMxJuWZjySfyT7917rrQf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3WaZCWS3/KvSfX/qEQ+/de6w6D/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XunOieWWeBZHIWix+QWm8SwowEUFRXokpZGEimV28gkBLISlwoXT7r3UKeSaoZGlZSI4xFEiqqRwxKxcRRRoAqrqZmIA5YsxuzEn3XusOg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917qVoP8AD4vpxkq//wBwqM+/de6i6D/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3Xup0FZNS01TTxJAPuAwefS4nCSR+KWP0sEdShIUSo/jJZotDsWPuvdSctK/nnokESQ09XOHeNHiatnicwLW1MOt0WVkABEQVfqbamZm917po0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+691MplIpsn9OaKD/AGH+5alHv3Xuoeg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917rMskyQvTq6rG9RBVGyr5BPTRyRQus1ta2E0l1VgCSCQSqke6906Vk9RGKOYNG7VePLzJLTUrwGRq6XVIsHj06iyKxdgWJuC2n0j3Xumd/JI7ySOZJJGZ3d2Znd2Opndm5JJ5JPv3XuuOg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917rLTofuab6f8Cqb/revv3XusIQ2H09+6913oP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XupNJPLRTrURCNnWOoiAkDMmmpp3ppCQpBuFckc/W3+t7917p3eu82MjY0dNFU458dQ0dRDNkFWOFo55apno2mNOXnZFMx8VnuxKksT7917pnqJGnZdMUVPDGuiGmhadoolLF30tUvJIxZiSWd2P4vpCge691H0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvdSqtCWpiLf8WzEf+6qH37r3UXQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6910YyQRccgj/AG/v3Xun2lrZpquol8dNDM8mUykE8ULmWkqTRvUMkJLgsjGNFAnMgj5dAGLl/de6gTVUklOtKkNNTw+SOaZadZF+5qIojDHPKHZgCFZrLGFQFmIUEn37r3ULQf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3U+ZT/DceOL/AHmW5/6dUfv3XuoGg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917qfDOzSUkbwUsiR05oCskTyCWKaqlnMjHUGWQGYhXhZCABY31Fvde6mVlXPBPXUhEE/ieqoaeeSOQNS0hT7GWGmg1mNVeJQlnVyg/QysSx917pk0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvdTIEP21f8AT/Mwf7zVoPfuvdQ9B/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3UmOoqoYfBFL4k+5grAYwElSppkdIJY6hR5FKiRrBWAvY2uAR7r3ThPVVESUMiGIGWm87xtS0ZplqErp4lmgpxEEVrKCTYkm/Omyj3XumdldmLOxdmJZmZmZmYm5Zmbkk/kn37r3XWg/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de6l49CMljCbW/imN/8Ac6P37r3UTQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+691mgkmpnMkLKrtDUQElEkBiqqdqWddMgIuUdgDa4+oIIBHuvdPqUORG2/48KqFaaHNRYCNAp+9LrS/xn1Taf8AMqQhRdRu1+AFF/de6Yp5JahlaTxDSgRViijgjRdRchIoVVRdiWNhyST9T7917rDoP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de6ccqhNafp/wDxX/ALqoD7917pu0H/D/AHn37r3XtB/w/wB59+6917Qf8P8AeffuvdPucQ+PB2/50NJf/X+5m9+690xBCCDx9R/vfv3Xuv/U0YN2i269zj/s4c1/7spffuvdJ737r3Tlh+ctjR/03U3/AFuHv3Xum337r3Sgh21kZ63AUEbUhn3HSU9ZjyalfEsVTUy0sa1MoFlfVC10XURcL+u6j3Xuk8rBlVh9GAYf6xFx9ffuvdd+/de697917r3v3XunYD/cFIf+rtCP/VN/fuvdNPv3Xuve/de697917r3v3Xuve/de6e9uYcbgzmOwxqjRfxCZ4RVCn+68LLA8qE0+uPUCVCn1i1782sfde6dXoKCqqYMjk6iemo8tk5sXE1NGHlpJaagpZp6+dXFpI4jVQjwoQ0g1+uMqof3Xuk5k6GTF5LIYyV0klx1dV0EkiBgkklHUNTvIgbkBitxf8e/de6he/de697917r3v3Xuve/de6dcYP2cx/himP/q/Tj37r3TV7917r3v3Xuve/de697917r3v3Xuve/de6WtRtbJS4uiqFanE9NtU7kkx5aU1TYGTJzN/E45UQ0+kI6SGNplk0m4QkED3XukV7917r3v3Xuve/de697917r3v3Xuux9R/rj/e/fuvdTstxlMkP6ZCs/8AchvfuvdQPfuvde9+691737r3Xvfuvde9+690q8DhqjIUc6ianpVzFTDhcXJVCpKVeVjrKWY0gNJHKUuJogJJAE1MObLIye690lP9t/sGVh/sGUkEf4g29+691737r3Xvfuvde9+691737r3XvfuvdO2VFlxf+OJpj/1kk9+6900+/de697917r3v3Xuve/de697917p925HSy5RRWV6Y6BaTIOalqOqrrFaGSyLT0YLG/wBSSQAATcmyn3XuoWUo4KCtkpaarNbHHHAxqDSzUd3mgWZ4/t6j1gxltDagDqB4tYn3Xum/37r3Xvfuvde9+691737r3XvfuvdOUn/FopD/ANXLIf8AuLTe/de6bffuvde9+691737r3Xvfuvde9+691mpqeesqKekpYmmqaqeKmp4UtrlnnkEUMa3sLsxAFz7917p93TiZsRmKyGYVBMlZXSJLJST09NOgqmUvRTVAUzKrao2kCBdSnQXUhj7r3Sc9+691737r3Xvfuvde9+691737r3Uum/zVd/1CD/3Mi9+691E9+691737r3Xvfuvde9+691737r3XvfuvdKWtoIY9v46c5fEtULJUS/wAMjkr5MjaqMJVXVafwoVT9xtcwBX9JZvT7917pNe/de697917r3v3Xuve/de697917qZjecjjx/Wvo/wD3JX37r3XCt4rKsf0qp/8AraffuvdRvfuvde9+691737r3Xvfuvde9+690p8djHqNt7irTOsIolxFbFA0TvJWwtkmxUjRuCFRUkl5Y3uVKqpszJ7r3SY9+691737r3Xvfuvde9+691737r3XvfuvdOmX/4FQf9qvC/+6iD37r3TX7917r3v3Xuve/de697917r3v3XulHtjEvmcg1HDV0lPUz01bS0kNS0wesrKrHzR09NB4kcC7fqeQqii121FVb3Xuk/JG8UjxSLpkjdo3W4Ol0Ollutxwf6H37r3XD37r3Xvfuvde9+691737r3XvfuvdSn/wCAVOf+mqr/AOtUHv3Xuovv3XuvXtyeB7917rq4/qP6fX8/09+691z0P/qW/A/Sfqfp7917rhqW9ri/0tcXv/T37r3WWFFmnihaaCnEsiI01Q5SCFXbS00zKGIRRy2lSbDgE2Hv3XulFujGzUVZTVXmpayiydFT1NBXUMkklLURxRilmUeZUdZI3QrJG6BlPBHv3Xukz7917r3v3Xuve/de697917r3v3XunfFcpl/+1NUf+5cHv3Xumj37r3Xvfuvde9+691737r3Xvfuvde9+6909ZWmenodvF2jJqsRLWJ4312ikzFVAokI4DBo2uoJt9DY3A917pl9+691737r3Xvfuvde9+691737r3Tnhf+Lzif8AtZ0H/uUnv3XumsfQf6w/3r37r3Xfv3Xuve/de697917r3v3Xuve/de6V0G3Kx8LkZGqKKOqjpcbn0x71AFTLifsaurkmDAeNZFpx92IHcO0N3AvpVvde6SPv3Xuve/de697917r3v3Xuve/de697917qRVf50f8AUPRf+4Ufv3Xuo/v3Xuve/de697917r3v3Xuve/de6fNuU0lVl4I4ygKQZCpcyMyqIaPHS1dQ3pDEkRoxAA5PHF7+/de6Y/fuvde9+691737r3Xvfuvde9+691737r3Wf/lET/qLqP+tEPv3XusHv3Xuve/de697917r3v3Xuve/de6zU8InnihM0FOsjhWqKl2SCBP7c0pQMxVRclUVnP0RWYhT7r3T5ujFzYzLTF5qWqp8gZchQ1dHKZaeoppaqSEj1hWSSOSOSKaJ1DI6sCCLE+690nffuvde9+691737r3Xvfuvde9+691Lpf83kf+1d/8lKX37r3UT37r3Xvfuvde9+691737r3XvfuvdeAJIAtcmwuQouf6lrAf65Pv3XulNnsPJjqDb9WtXR19HXUlfDBWUTT+Bqigykoq4AlXHFL6BLGdRiCtq9BYc+/de6TPv3Xuve/de697917r3v3Xuve/de6nYwXyWO/6j6P/ANyF9+6903R/5uP/AIIv/Qvv3Xuufv3Xuve/de697917r3v3Xuve/de6URxlTDtV8tIYlp6ncFLQQxam+58kGLlrHlkjtZUZJoyh1XN72ClWb3Xuk77917r3v3Xuve/de697917r3v3Xuve/de6zTfqi/wCoWj/9xE9+691h9+691737r3Xvfuvde9+691737r3Sj29jY656yabKY3Gx09JWR3rzW6pmqMXUsDAlHDMSEEbM97H6BA7EKfde6Tg/23+H9Pfuvde9+691737r3Xvfuvde9+691737r3Uoj/cdCf65PIf7xRUXv3Xuovv3Xuve/de697917r3v3Xuve/de6z0tJU19TBRUcL1FVVypT08EYu8ssraERb2H1PJJAH1JA59+691OzsK0+ZysCzw1HiyNdG0kBcx60rJEKhmAv9AbrdSCLE+/de6avfuvde9+691737r3Xvfuvde9+691Lp/+A2U/woYP/dzSD37r3UT37r3Xvfuvde9+691737r3Xvfuvde/1uT+OQP95Pv3Xuldnsbi6fG4uqoc4MkwhjpFjGIyWPWQeaeoqJY5q1VVhEWjRgDq9aMVUMPfuvdJH37r3Xvfuvde9+691737r3XvfuvdZqb/AIE0v/UVTf8AW9ffuvdYB9B/rD/evfuvdd+/de697917r3v3Xuve/de697917pX4TbNfmcPUTwPTU6VGbo8dQNVzeNK7IwYuqrZqKMxhyjCMxkPMEjJYDXw2n3Xukh7917r3v3Xuve/de697917r3v3Xuve/de6lVfDUv/arw3+84mA+/de6i+/de697917r3v3Xuve/de697917pW7ewYqolydZVrRY6aoyWFhmWJqmU17YSSpZngQgiGNHjMjgliWUIjesp7r3Sdr6OXHV9djp2jafHVtXQTtEWaIz0VQ1LMYmdVJX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3ScsP6D/AGw9+6916w/oP9sPfuvdesP6D/bD37r3XrD+g/2w9+6916w/oP8AbD37r3UvHqP4nirAXOXxQ+n9cjF7917qJYf0H+2Hv3XuvWH9B/th7917pwxM8FHlsVWT6hBSZKgqpzEivKIKerSabxoxUFtKnSCwBPFx9ffuvdPM82FzO5s3ka6qkoMdWZDKZKl8lFJVyVDVFcZqWkqYqWWNkVle8rpJcAEKdRBHuvdNmdmgqcpVTQV0mTjfxaa2WiTHCQJAqLFT0CO4hihUCGKMEAKg0qq2Ue69002H9B/th7917pfIo/0VSm3/ADUhV/w/49UH37r3SBsP6D/bD37r3XrD+g/2w9+690p8Tl6Oh21u7ETJMarOf3d+xMaI0KnF5CWpqjUuzAr6HGjSrXPBt9ffuvdcqAYelxNTMueqKXK1lDWQVNFBh5JGaLy2ixkGRM6Ki1SqPuZfHcIfEAyGVZfde6S1h/Qf7Ye/de69Yf0H+2Hv3XunHLKBXMLD/gHiPx/1Zqcn37r3TdYf0H+2Hv3XuhDx258XR7+otzSLVtjaekpYJFSGM1mqDaC4FtMTOFN5l1D9wejn68e/de6DwAf6kD/Cw49+690oM6oEeA4+u36Q8j/prn+nv3Xuk/pBIsAORzb/AB9+691//9bRr3lxu/dQ/puTOf8Au0l9+690m/fuvdOuD5zOLH/TfS/9bh7917pq9+691737r3Xvfuvde9+691737r3XvfuvdPKj/fvyH/q8wj/1Sk9+690ze/de697917r3v3Xuve/de697917r3v3XunjP8Zit/wCWif8AWlffuvdM/v3Xuve/de697917r3v3Xuve/de6eMV/mM3/ANqd/wD3YU/v3Xumf37r3Xvfuvde9+691737r3Xvfuvde9+6905Vw/yXDn+uOl/3jLVXv3Xum337r3Xvfuvde9+691737r3Xvfuvddjkgf4+/de6cMx/xd8p/wBrGu/9yW9+6903e/de697917r3v3Xuve/de697917p3oB/uPzh/pR0l/8Az6Q+/de6aPfuvde9+691737r3Xvfuvde9+691737r3Txl+FxP/anpf8ArbJ7917pn9+691737r3Xvfuvde9+691737r3TxgRfJxf9Q9f/wC6+X37r3TP7917r3v3Xuve/de697917r3v3Xuve/de6dZAf4HRt+DlckP9itJSH/iffuvdNXv3Xuve/de697917r3v3Xuve/de697917qfleMrkx/TI13/ALlP7917qB7917r3v3Xuve/de697917r3v3XuplL/msh/wBQY/8Ac2H37r3WOmpKiraRKdFkeKGSoZTLDEfFELyMvmZQdI9RAPCgseASPde6z0tHFLHNPUVUcVNDCXaakenyfjmZvHTQ1SUUrNCJH9AkYcEi459+691zrlx2Pnahr46zHzovlFf91TZGiq0aLywCjhp441dZeBHOlU6X4awBZfde6hpJipQZEr5kiZAYlkoXefyaiGSYUrSRqotw6ytf+gsbe6909QHGfZrJT0FNXPHDrqJa3IVMMRqFT92nWeAwLDqI1QrURjXcgSsR7917pinknpJhDWY2mhYpHOsDSVayGGUaoXLpMxIZeQT9fr7917pwnyCJisGXx1LKsku4xoE9bEQYpaaKJ/L5Guw139SkXA9Nrg+691loaairVqjRq1VVkK+PoKurp6UIul/uUycgKMSl08MkZSKQ3LvEf2/fuvdQMgucxzfa5LHHFNIt1iqcJSReVEaxannrIpGdQ3BeOQ88FvfuvdTIcnipaWSOqilosg8MMYrqfFY2vplNPCICBQSPDCFn5eUiDXGyqUZtTW917pjjraqK2lqd1F7xSUNGYH1CxDxxxqf8QylXB5VgQCPde6lS19K8ehcYsBB1eaKunM/1vo/fV49P4/zer/avfuvdSqCupHqY6mnxeQnlppknMFDMJqWHwSqyzPOY3cLewdHUAE38ouFX3XunGOgjrquQztV0vlaeobx01NWVPrVpo4Y6GCouD9F1vIq/1IPHv3XumtKYMdBrMcjh9Dq2QpWEa/RpWkjZk0r/AGgrFx/qfr7917rI1LTyQJU0WQpaqK0gqFlYY+ekdLkfcQ1xQ6HUXjlBKt+nhwV9+691jkpHjgSpWSGaneQwiWKS6+YLraNRIFLaR+pkDKtwCQWUH3Xuovv3Xuve/de6d6b/AIsuW/6i8T/vVR7917po9+691737r3Xvfuvde9+691737r3XvfuvdO2ZFquD/HE4I/7fC0/v3Xumn37r3XvfuvdSKSAVVVT0zVFPSLUTxQmqq3eOlpxI4QzVEiKxVFvdjpNh9ePfuvdOmWwb4lVkOSw9fHLM8cQx9elRUaFF/NNTWDIptYE3549+69097Yn2fHSsmbjZcn948sdbUxVM9DFSiBUhh+3pTJ5CZNbPrgPGmx4I9+690t8V/DaZJ63DRZI0Ur1jSR47D5OrpMgKXGTNNLjjkIo9JYoEKLUxlpNKGIAgj3XunR5BLGNVJn1jkjDaavEZF4VSRP0ymWBAvB0sNBH4BIPv3Xuui8tRqDvWkBtf72Py8rMx4LfsQSEf7G3v3XuoFTWUFLPHj6qrSOorIo3jpKrHZaFamCSS0Mg++pUjdGdSFNyLqfyD7917pzp6r+IR0/iWlysdG0c1KkApaxaGWlISCZKVA4iaO4VToUjgAj37r3XCsaol8v20r4queF4DkBAampp2c2eeKJpIisun0o4cFGtIvqVffuvdQYsfSmFJMnSnMVZSOnefN5GTPTx/aySMTQz1iK0UEzSPME8aN6tLglST7r3UwSSqnij1RRjgIjsEC206Ql7AW/A9+691h0N/T/eR7917rIkfqfzLJEgEJhceGT7nyKTNojV9SeM2U+ULqJ9II59+691kMcPpKeRwJU8yyulMRTlG8kkDos2uQMECxFQGubutufde6yyziSmkgVJ45GRkiqRPDK8GpbK8cNREyal+qkgi4FwRcH3Xum0Qz2RGrZjGqFZAtLj46qdxbxStWpGNFudapF6+OVAIb3XuuTQqyorxiTxg6TKTK2pv1SNrJBY/1tx+Le/de6cayeraaZDUVBjPjvGZ5NHMSm2gm315+n19+6902PSwyFWkgBZCxVklmp3uwAOt6V0LjgWVyV/w9+6916ekgqlkWqinqPLH4mMmVzIOi97KsVSqji4ta1ieL8+/de64U2PpKVovs8fRQSRx+CKVKWBqpY7EaDWSBpmuDYs8hJ/JPv3XuoufxlTlaSDFqYIlWohyDZCaaGSCmWKGanFBBDTeWcySGQPJ6URQiXZ2Nl917pFT7HyqVUMFPNR1VNNG0hyAaanpYDGQjxT/AHCK+u7DSiKxZbsoIV9PuvdcKLAZqjXMCfGVlmxNRCkkMRqYJZRUwSmOGop9aOwQMxVGJABP0Bt7r3SQZSrMjAq6Eq6sCGVh9VZTyD/gffuvdde/de697917r3v3Xuve/de697917p1rx/kGE/xoan/3a1Hv3Xumr37r3Xvfuvde9+691737r3XvfuvdOuC/4veG/wC1rj//AHLT37r3TSPoP9Yf717917rv37r3Xvfuvde9+691737r3XvfuvdOEf8Axaq0/wDVwxn+801X7917pv8Afuvde9+691737r3Xvfuvde9+691737r3Umr/AM8P+oah/wDcGL37r3Ub37r3Xvfuvde9+691737r3XvfuvdPGAF8tSfn/P8A/uM/v3Xumf37r3Xvfuvde9+691737r3Xvfuvde9+691II/yOM/1q6j/b+CH37r3Uf37r3Xvfuvde9+691737r3Xvfuvde9+6905ZkWy+UB/52FZ/7kN7917pt9+691737r3Xvfuvde9+691737r3Uyj/AM3k/wDDF/8AyXox7917qH7917r3v3Xuve/de697917r3v3Xuve/de6cK3/gNif8cfJ/7take/de6b/fuvde9+691737r3Xvfuvde9+6904YnnK4wf1yFF/7kr7917prh/zUX/LNP+hR7917rJ7917r3v3Xuve/de697917r3v3XunSMf7haw/8AV0xo/wDVSq9+6901+/de697917r3v3Xuve/de697917r3v3Xus0/6ov+oWi/9w09+691h9+691737r3Xvfuvde9+691737r3Tji/+BMv/auy/wD7qZ/fuvdN3v3Xuve/de697917r3v3Xuve/de697917qWf+LbCf+rrkv8AeKCh9+691E9+691737r3Xvfuvde9+691737r3XvfuvdOGW4yuTH9MhW/+5Le/de6b/fuvde9+691737r3Xvfuvde9+691Npf+AuW/wCoCn/93dH7917qF7917r3v3Xuve/de697917r3v3Xuve/de6dcl/mMN/2qh/7san37r3TV7917r3v3Xuve/de697917r3v3XustP8A8CaT/qLpP/chffuvdYR9B/rD/evfuvdd+/de697917r3v3Xuve/de697917qfH/xa6s/9XHG/wDuLV+/de6ge/de697917r3v3Xuve/de697917r3v3XupdYLGkH/Vpwf/umg9+691E9+691737r3Xvfuvde9+691737r3U/Gi9S/wDhQZY/+sqf37r3UD37r3Xvfuvde9+691737r3Xvfuvde9+6904T/8AFqxp/wCm7M/9aKH37r3Tf7917r3v3Xuve/de697917r3v3Xus9L/AMCaf/lvF/1sHv3XupWX/wCLtlP+1jW/+5Le/de6bvfuvde9+691737r3Xvfuvde9+691Mpx/kuQ/wCWNP8A+5kZ9+691D9+691737r3Xvfuvde9+691737r3XvfuvdT6wf5Pij/AFx8n+8ZWp9+691A9+691737r3Xvfuvde9+691737r3UzG/8XTEf9rjE/wDuxi9+691D9+691737r3Xvfuvde9+691737r3XvfuvdCGg/wCMSTN/TsxRf/yUxx7917oPPfuvde9+691737r3Xvfuvde9+691737r3TnmBavb/Giw5/2+Fp/fuvdNnv3Xuve/de697917pRbgFotvf47doz/6t1Hv3Xuk8PqP9cf737917r//19G/eqn++W7bC/8Av589/T8ZWX37r3SZ0N/T/eR7917p1wSn+M4q4t/uQpP6fmYe/de6atDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3T0qn+7svH0zUH9P8AlQk9+690y6G/p/vI9+6917Q39P8AeR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917p63Ch/jNdYf7sQfUfiFR7917pl0N/T/eR7917r2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de6ecSh8Gd4/5cr25H/OypvfuvdM2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de6c65G+0wvH/AC7pvyP+dvVe/de6bNDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de67CNccfkfkf19+69045lG/jGV4/wCXlXfkf8rTe/de6bdDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/wB5Hv3XunjHqf4dnuP+UKjt9P8Anawe/de6Z9Df0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3T1mEOnEcf8uWk/I/Esg9+690y6G/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P8AeR7917r2hv6f7yPfuvdPO31IykJI/wCUfIf0/wCddL7917pm0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917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XunbAI38dwvH/L2x39P+VxPfuvdNCq2kcfgfkf09+6913ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3TjGrfwmt4/5eOL/I/5Vaz37r3Tdob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de6lVinzLYf8otBfn8/YRe/de6i6G/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6909beU/xijuLcz/0/NM/v3XumXQ39P95Hv3XuvaG/p/vI9+6917Q39P8AeR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvdSip+xj/r95Ucf9U8P/FffuvdRdDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3Tpm0b+M5Xj/l4Vf5H/HdvfuvdNehv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3UyjU+PKcf8ur/D/nc0Q9+691D0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3TjWo322H4/5d0v5H/O2qvfuvdN2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3UugmFHXUdW8JnSlq6epeFZRC0ywTCVolmKvoLAWDaGt9bH6e/de6yKmKVVUJkSFAUHyUtyBwL+n37r3XLTi/wDUZH/qZS/9G+/de69pxf8AqMj/ANTKX/o337r3XtOL/wBRkf8AqZS/9G+/de69pxf+oyP/AFMpf+jffuvde04v/UZH/qZS/wDRvv3XunGNcf8Awirstd4v4njtYL0/k1Gkq9JRgLW+uoEf0t+b+6903acX/qMj/wBTKX/o337r3XtOL/1GR/6mUv8A0b7917r2nF/6jI/9TKX/AKN9+6917Ti/9Rkf+plL/wBG+/de69pxf+oyP/Uyl/6N9+6917Ti/wDUZH/qZS/9G+/de6ySNi5GU+LIJphgisJqZr+CBYdVyv8Aa03I/r/h7917rHpxf+oyP/Uyl/6N9+691jqYqPwQS0n3QdpqmKZKgwlQsSRPE8bRW+vkYMCOLC1/fuvdQtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de6ccUh+5luP+XbmPyP8AnUT29+6903aG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuppU/wun4/wCXtk7/AE/5UKH37r3ULQ39P95Hv3XuvaG/p/vI9+6917Q39P8AeR7917r2hv6f7yPfuvde0N/T/eR7917r2lv6f7yPfuvdOOYRv4tlOP8Al41v5H/Ky3v3Xum7Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P8AeR7917qdSqftMxx/ygU39P8AneUY9+691B0N/T/eR7917r2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3TvlFPgwnH/LoX+n/OyqR7917po0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de6zUqH7ujvx/llJzx/ysr7917rAEaw4/A/I/p7917rvQ39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XunCNT/Cazjn+I4u3P/TLWe/de6b9Df0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/wB5Hv3XuvaG/p/vI9+691MrVOuksOP4Rg/z/wBWWn9+691D0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917pwxikVMnH1x2XH4/wCdTP7917pv0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvdOVQp/hOLFufv8AN3/6kUHv3Xum3Q39P95Hv3XuvaG/p/vI9+6917Q39P8AeR7917r2hv6f7yPfuvde0N/T/eR7917rPSo33NPx/u+L8j/joPfuvdSswh/i+VsOP4lXW5H/ACst7917pu0N/T/eR7917r2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de6nUykUmSuPrBT2/87I/fuvdQdDf0/wB5Hv3XuvaG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HwmQrU82kN4xLVRxRfQ3uXHHPHv3XupE+UzbtLFSbZqpRE+sTZmuwuHjlhQairUhLesngItQffuvdR6yDd82XrJRXYTGUBkheGEUVBkivkpEkMNMjU7SOkLgxsaqSMt9VEicj3Xuoa4jcbOHm3fJH6tZFHhqaCzfWyiKVBp/2m1v8PfuvdTYcTkYo2vuzJSTc+My4TF1cKi3AYVczEfn9Pv3Xuu2o9xK2qLdNIbRiPTPsrbpQhfUGYi5LE8FzckfU+/de6RO5M5unE5BsdLlaYmKOCoiqcdicbjHlhqoFnhMn28EcisFazLqIBvpZlsx917rlhtpJm6OHNZbJ1UslcZfGkZWeqkipZ2ozJVV1SXIbVHIoQxsQADext7917pSUuzcJSCcI+Wb7qB6WoJraFb00jpIwhH2h0yakFnJI0kqVuQw917oKMrQNi8lXY9n8opKmWGObR4/PCr3gnMd20600vp1G17XNvfuvdKrAnaeSxL4jLJBiMmkjyQZotIGn1yakZpZn8amMehqeUpFJHco0VRZz7r3SRqKMxV0tDTzQ5FkqHp4Z6DyzQ1hVtKyUmpVdlb6rdAf8PfuvdRCCrMrAqykqykEMrKbMrA/Qg8Ee/de6UNBtPP5EQSRY+WGmqFhkStrB9rSeCePzJUCWW2pCnqHjDE8BQWIB917qcNi7iK3EFGW9V42ymOjIVQSG1yyqhv+FDFubWvx7917qfW7Nz8lDh1jp6Z5KeirEmj/AIjj0ZHGTnlCh5JQjalZdOhzzwQD9fde6S1TgM5SCVqnEZKKOAI00xo52p0EguhNSimM3/qG9+6900Ag/Qg/63v3Xuu/fuvde9+691737r3Tvt8Xz2EH9cvjR/t61PfuvdMy8Ko/2kf717917rl7917r3v3Xuve/de697917r3v3XunGIf7iK4/0yWKt/wCctZ7917pu9+691737r3Xvfuvde9+691737r3XvfuvdSqz/PL/ANQuP/8AdfF7917qL7917r3v3Xuve/de697917r3v3XunvbgvmaL/XqP/cV/fuvdMnv3Xuve/de697917r3v3Xuve/de697917qQf+Acf/UZU/8AuPB7917qP7917r3v3Xuve/de697917r3v3Xuve/de6dc5/xesr/2saz/ANyG9+6901e/de697917r3v3Xuve/de697917qbRi6ZX/DE/7z/GqH37r3UL37r3Xvfuvde9+691737r3Xvfuvde9+6905V3/AXDf9q2X/3b1Xv3Xum337r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3WWCCeqmipqaGWoqJm0Q08EbzTzPYnRFFGCzGwJsBf37r3WVKGrcqvgkR2ZUWKYCCZ3awVEhn0uSbiwAubj+o9+691OWN48NkEkR45EzGNjkjkRo5I3SlrAySRuAVYHggi4P19+690z+/de697917r3v3Xuve/de697917r3v3Xuve/de697917rMf+AsX/UVV/wDWin9+691h9+691737r3XvfuvdOeJBNVNb8YzNsf8AALhqhmP+wAv7917pruP6j/bj37r3Xrj+o/249+69164/qP8Abj37r3Xrj+o/249+69164/qP9uPfuvdeuP6j/bj37r3U4g/wmnax0nMZUBrcErjseSAf8Lj/AG/v3XuoXv3Xuve/de697917r3v3Xuve/de66PII/wAPfuvdOeZ/4u+V/wC1lXf+5Te/de6bffuvde9+691737r3Xvfuvde9+691Opf+AmY/7V9L/wC76i9+691B9+691737r3Xvfuvde9+691737r3XvfuvdPGV/wCA+D/7U6/+7Kp9+690z+/de697917r3v3Xuve/de697917rNTf8CqP/qMpP/clffuvdYB9B/rD/evfuvdd+/de697917r3v3Xuve/de697917pwj/4tNYf+rli/wD3ErffuvdN/v3Xuve/de697917r3v3Xuve/de697917qZWizUf/anwJ/2+Epz7917qH7917r3v3Xuve/de697917r3v3XunHFAtVSAAk/w7MngX4XDVDMeP6AX9+6903e/de697917r3v3Xuve/de697917r3v3XunKf8A4tGLP/Vwzn/uPj/fuvdNvv3Xuve/de697917r3v3Xuve/de6z0vNVTD/AJvw/wDWwe/de6l5njMZYf8AVyrv/cp/fuvdNvv3Xuve/de697917r3v3Xuve/de6nU3/APJf8sab/3Oj9+691B9+691737r3Xvfuvde9+691737r3XvfuvdONd/wHw//ask/wDdxV+/de6bvfuvde9+691737r3Xvfuvde9+691OxQvl8MP65rDj/b5OL37r3UH37r3Xvfuvde9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KxufwCfoD7917pxym3ctg0By6UNBUmRIzipMpQzZuMPH5VmmxdI8jxxWsC8hXkgWv9Pde6ZPfuvdOlYLYXbR/rUbs/3irovfuvdNfv3Xuve/de697917r3v3XupuPr8bR1USZalpKvH1EsC1kciuK9KRZgal8TPFUUzRz6LhSZdF7awR7917pWQ4XbVcxfF0G/qyGVZXp/vG25haRtLkLDS1D/dPUWGlfSQ7H6Lcge/de69XYjAU1M+ilmoK+OdIjDXbgjyFL+oLN5HMWOkhVBqbUEmYsNBVdWtfde67jz2IxtI+NhpNq0r+NoFzWOwU+T3DpllbXozWWYRs7o2gSQuGUABPHf37r3WKWatjoxKaqvhjSUx0MWSoaehq6qnqTL5aiGETTSqEMYUvylzZZAw0+/de6Y3YyO8khMkkjM8kjks7uxuzuzckk8kn37r3XGw/oP8AbD37r3QnbCrsnPHUYo07T4ak8tW1Z5BGMRVVMREMa6yBIKp4gngX18NMvoimDe690IscZ+3q/wA+qk/1v1Se/de6iy00NRFJT1cENXSzqEqKabX4po1cSBWaMq6kMqsroyspAZWDAEe691kp4UiEcc89ZURqAhmneKoqwgay/vBY9elLKvk1ObAs7G5PuvdZZaYx3KSxTRXAWRGsWBF1vE3rU2+oI4PF/fuvdYdB/wAP959+6914If8AD37r3XGKnSn+6aIqZa+sq62snMXinn89U81JSzyB31pSxssEIGlAFusaFmv7r3XLQf8AD/effuvddhWBuDY/1BIP+3Hv3Xuu7MXqJHZ5GqPEdEkhaGCSMEPNTJYFDKLeVdRQkawquzs3uvdcdB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3Umk8sc+uORo3ENUQ8bsjC1K54ZbH37r3WB/LI2uR2kYgAs7MzEKNKi7c8AAD37r3XHQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+691gmoqWpemkqqSkq2o5JJaX7qBKhYZJVCSERygqwbSpKupUlVNrqpHuvdSnMsmnW5YIqogZiQiILIiA/RQOABwPx7917rGUNj9PoffuvdSqtD9zLa3+6v8P90Lz7917qNoP+H+8+/de6wV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mILcgBdRJsAq6mJP0AUck/0A9+691nqKWSmaNZljBlgjqE0SwzAxS30FmhZgrcG6NZh+QPfuvdZ6nG1NJDBNUrTxCoip544TV0ZrBDVQ/cU0ktArmeNZIysiGSMXUqw4ZSfde6j09NLVTw0tNBJUVNTLHBBBDG0ks00riOKKONASWZiAAB7917rDZf6D/bD37r3UienqKCoMVTDLSVMSwTaJUaGVEngWrpZhexCvG6SxuOGVlZSQQffuvdeq0qVqqgVyTLW+aQ1S1SOtT9wzFpTOso1ayxJbVzf6+/de6j2H9B/th7917r1h/Qf7Ye/de69Yf0H+2Hv3XuvWH9B/th7917r1h/Qf7Ye/de6nU63o8lawtBTX4+v+Xxe/de6g2H9B/th7917r1h/Qf7Ye/de69Yf0H+2Hv3XuvWH9B/th7917r1h/Qf7Ye/de69Yf0H+2Hv3XunGuUfb4fgc4yT8f9XirHHv3Xum6w/oP9sPfuvdesP6D/bD37r3XrD+g/wBsPfuvdesP6D/bD37r3XrD+g/2w9+691OxSj+L4WwFznMKBx/XKQ+/de6g2H9B/th7917r1h/Qf7Ye/de69Yf0H+2Hv3XuvWH9B/th7917r1h/Qf7Ye/de69Yf0H+2Hv3XuhN0D/QyzWH/ADNCIHj/ALNKT37r3QZWH9B/th7917r1h/Qf7Ye/de69Yf0H+2Hv3XuvWH9B/th7917r1h/Qf7Ye/de69Yf0H+2Hv3XunbOAfxFrgH/cfg/x/XA0p9+69002H9B/th7917r1h/Qf7Ye/de69Yf0H+2Hv3XulPuRQIts8DnbFEfp/021Pv3XukxpH4Avcfj/H37r3X//S0gt98b43kP6br3F/7t5vfuvdJT37r3Txt7nO4cD/AJ2VH/1vX37r3TP7917r3v3Xuve/de697917r3v3Xuve/de6f1/49eX/ALX9P/7rpffuvdMHv3Xuve/de697917r3v3Xuve/de697917qbkaGTG1k9FK8UklOyqzwlzGxZA/p8iq35tyo9+691C9+691737r3Xvfuvde9+691737r3T7hf8AgPuH/tRSf+7Sl9+690xe/de697917r3v3Xuve/de697917r3v3XupE1LLBFSTSaNFbTvUwaXDN40qpKNvIo/SdcT8H8WP59+691H9+691737r3Xvfuvde9+691737r3XY+o/1x7917p0zvGbzI/plch/7lv7917pq9+691737r3Xvfuvde9+691737r3T3jRfGbiP9KCi/8AdxTj37r3TJ7917r3v3Xuve/de697917r3v3Xuve/de6fs4LLhP8AHA0R/wCssvv3XumH37r3Xvfuvde9+691737r3XvfuvdPu2/+LvD/ANQ2T/8AdXN7917pi9+691737r3UyCk8sE1VJURU0EM9NTs8sdU5eWqWSRBGKaOS+lYnLXIt6RyWHv3XunD+G4j/AJ6Wh/8APdnf/qb37r3Xv4biP+elof8Az3Z3/wCpvfuvde/huI/56Wh/892d/wDqb37r3XVfLRxY6jxtLWJXtDW11c9TDBVQQhaunp4Eg01iRuXBgYtZNNitmYkhfde6ZPfuvdKzBbYGUpWyFbWS4/HmeSlhkgofvqmoqIY0klMcEstOnjTyIHczXuwCqxDafde6XFDSSUeGhop83WSVtNJWRUn21Jiq6ggpGmM1LIr5ajE6+pmJpizKL3DoWKL7r3WeGWohjjU1Uks/iaOpqligovvCZS4MlJRhYlULpXQFIOkE3Yk+/de6ZMzt+PMQ+bHwQQ5iJnYwQQrTrmInvI6qkICfdq9ynoBnDMCxlWNZPde6D2gmpqSvp5a+iFbTQy/5TRvJJAZF5VgHSxDKfUoYFSwAdWUlT7r3Q0PlYchmMvQ4ySWpqIa7JPLAcdSwiOlp6o+WqSRmZURS1gsZuBcgBNRHuvdYdFOTf7gx/lvPE5OssdQX7Lzgj83JH+t7917rDHczMkkMYgKnRUvXvEA54UtT09LUSMB+QAp/ob+/de6yGGVLUlTUIKxEvW0WCheKSnQziekrMjmsoDNSK6KAsSLSzPqsA6Ore/de6b91Pi027atyOapqKtzNBT1X8MoKWepndKGqq4aSq+8rVSUDxeXyuztrSNdQDMy+690Fc82yYvIaej3lURqR42yWW29QeRR9TOtDRzeO/wDRZHt/X37r3UetyeEemMdDtmnxh9ResqM7mMpOARYafM0MItweYjz/AIG3v3XumdlZGKurIwtdWUqwuNQuD/UEEe/de64+/de6U+HoqKtxc33tApaprKWmwmTiyb46Zp6lmSrM0bieOekhCrd1pRpka3mJBjPuvdScgcgEFFisdLjceGljhllENHV1PBpppIwzLoMi+mSUl53H6pQCye/de6aoNp7idV+z27lqiN+UbH42orIJCeT4pqFXjf8Ax0sf8ffuvdMpBUlWBVlJVlYEMrA2KsD9CPyPfuvdO9cP9we1z/Wfdn+8VdD7917pn9+691737r3XvfuvdOeKraGhqHkyGFpc5A0Msa0tTWV9D45mQrDURz0DqboxDFHVla1iB7917p4TembpA0eGTEbdhaGOnMeFwmKilkji/RLVVtVDLNLUcnXU6lc3NtIOn37r3TY1ZuDcVY9M1ZlszXVojSaE1FRUS1MesRxCqRTpMatYKZBoU2tb37r3XOHE0tJKBkqiJ44JVD47Fy+SWdUBJhORCmCFSQEMkXmNjdR+R7r3Uha2WIEUsdNQrx/wCgSGUHxiMk1h1VDXte8kzEEmxA9+690rMTsbLZSBMhWTw4uCqbzp98lW2QrYJxHOtfT0yx2ZJlkLxSSyoJLEg6SrN7r3QgYvYu34JaZ1SpydXSwz+mvaNaTI1TODDOMfFfSY11aKZppFckay2nS/uvdSajbe3Kx5XqMLSq8ws0lFJU45ojwPJTQUjrTqwFwA0DJzcoTYj3XusWE27R4CSsejq8hOtbGInp6mSAUoEc3lppmhiQFp4hqRZdYFnkAQByPfuvdKWME09WbcaqTn/HVIR7917qP7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6zQC8v+tDVn/wBU5PfuvdYffuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XTcgj+oP8AvXv3XupVYLVU3/Tr/rQnv3Xuo3v3XuvW/P59+691737r3XvfuvdcJpoaaNZZ/OwklFPT01HTvWV9dVNG0sdHj6OMgySMEa1yqj+0y3F/de6ZvscllpJJ88sePxr0jUdJtmkqRPIYZZ0qmrcvkKchTKzRx8Aa7ekLThAr+6908Qw09LAtLR00FFSRuzx01MmiJXdQhkcsS8khVVUyyszkKoZjYe/de6ye/de697917r3v3Xuve/de65xxSStoijeV7M2mNGdtKjUx0rc2AFz7917po3Rka3BYegyVPBjJ0E89LUxV89QlQzTVEjUxooKd0128c3mLNdbLZTdivuvdBdld85fJUv2cUdNi4XC/dNjzVLPVlJDIokqKiSRkT9P7cRUEgFtXFvde6RzMzszuzO7szu7Eszux1MzMeSSeST7917rj7917r3v3Xuve/de6educ7hwIH1OZxf8A7nJ7917pkXhVH+0j/evfuvdcvfuvde9+691737r3Xvfuvde9+6905xf8WavP4/ieI/3mlrffuvdNnv3Xuve/de697917r3v3Xuve/de697917qXW/wCfX/qEx3/uui9+691E9+691737r3XvfuvdLzZE88P8SSDCV+W+4fGxNPt+uio900CrLJPM2PjkgqxPSSwJMtdC9K0bWhEkkYI1+691LyW2cUtM9bQV1FkITuDJbRGTGUxuKxlTmv4stXjc0qwo8UNBJjZirSRj7dJYWZXMRQSe690tMHt2hxhy0kUCU2Rl2LvKGrop5Vllosngdz09IlRTw5BY6mCWWk+3qjFNEkiiTUqrGwUe690zbj2pT12erGio/wCF5Wt3dnoKXDSVEgiz2KjgnykOWxUEEMk6hnQQRwwxMtS8sdPSaJY5PfuvdYqjae0xTUta9RU4+nye4dn44TzZjHNQ4eh3LtiDO5Vp5mj9Zo5jNBDM0gjUBvOzGMlvde6at4UX2O19nxS4Z8HVDJ7xjkoqiQzVjQRSY96eaWeRUdk/cYRm2hrF4+HIHuvdBv7917r3v3Xuve/de6cIBRSUixT1UtPKlVPKQKbzRvFLBEiFHVwQwaNtQK2sVIP1Hv3XuuX22N/52Un/AJwP/wBfPfuvde+2xv8AzspP/OB/+vnv3XuvfbY3/nZSf+cD/wDXz37r3Xvtsb/zspP/ADgf/r57917r322N/wCdlJ/5wP8A9fPfuvddGnxwBIyMjEAkD7Fxc24Fy/v3XunTN09AczljJXvG/wDEq3Ui0UjhD9w11Dlhqt9NVhf62F7e/de6bPtsb/zspP8Azgf/AK+e/de699tjf+dlJ/5wP/189+69177bG/8AOyk/84H/AOvnv3XuvfbY3/nZSf8AnA//AF89+69177bG/wDOyk/84H/6+e/de6mUtPQLS5x4q95ZUwymOI0jxCQncGPV7yFjawJP05/3v3XumH37r3Xvfuvde9+691737r3Xvfuvde9+69051/8AwFwn+OMlt/5+ase/de6bPfuvdZfBOITUeGX7cfWfxv4R6tPMttP1Nvr7917rCCD9CDb62N/xf/evfuvdOlFhsrkXijoqCpqHqFZqcLGR9yEQyMKcvYSHSpOlLnjge/de6n5eipKelhenxOYpD5YYzW5BhTxy3pfI8L0BWQlnuk0VQs6Kyll8NwGX3Xuk77917r3v3XunTGUlNUSsa81qUwhkaD7SBmNVVK6qlM1SEl8ShfJI0ghkPo8eldfkj917pRxYWtoaWoq6N66oglU/dUUGKyVYWgiKVcPNABMSgs7SNFDo+hsG5917qXLNiszTUuOjnyUm4aWEPDTZTE0CSQVFQBFMYMdURF59bIj3VDNbxmSYkOffuvdPtQMzlPPt2roayixGiGpp6KSmnpaaGOmjjq4ziMvWyV8MVLrYa5nqJmiB0GMF5PfuvdIPK0FXjk0U8mWFGiMlXDKlQlLj2rJpfFRPUIVSXzRKJSxii1amXRdW9+6917H0y1GDyBnmalpUy2N11RgaSMzDH1vhpkkdo4BI7FeJp4lCknVfSre691wpMbTTV1OKmlroMX5qdaqakyuKylbNESDUfw6mxscoEzIHMMc5VA1lkkUXPv3XumqSgronhjkoqtJKlitMj08ytUMGClYFIu5uQLLf6j+o9+6913JRrCQk9fjYJrAyU8lS7zQ3UMqzimjkVWseYy2tTcOqnj37r3UKrr6emaKKlioapIljaasq0yCCoqpOZIo0jqIf2UuI0JRXdgz30sqj3XuptXEESjlNNJQTVVN556CV2d6VvO8cVvIBIqyxqkyJL6wHF7jSze691D9+691737r3XvfuvdSCP8jiP/TZWf8AuPTe/de6j+/de697917r3v3XupmP5qv+qHNf+6Op9+691D9+691737r3XvfuvdONPjJZoYamaeloKWpnnpqeprXkSOaaljSWpWJIVd28Yli1EJYFwPre3uvdcqvFVNJC1VqgqKIVK0iVcMmmOaZ43lAggqRHM6hUJdxFpQlFcqzoG917ps9+691737r3Xvfuvde9+691737r3Xvfuvde9+69045gH7whTpJxmBsbXsTt2ksbfn/W9+690p85lqdtw5rxMcfSnMZJgrbd2nmpVD1zsxvW0sTkC50I0xsAFLsSX9+690lsjUU9TOj08ejRCI55vBT0hrZxNJIaw0FJ+zT3Rkj8MN1GjVcsze/de6x01J5klnnnhoqGnSZ566q1iBDDCZ/AgjDPJK9tMcUaliSDYKGYe691hFVh42Or+KVYMLi0cVJj0Wdv806VMj1LMq/VlamUn6Aj6+/de6zU25a3G09TTYiOno1rk8VdU1VLj8tWVEK6vFDE9fA0dOF1ltcESy6grCRdIHv3Xuo8WVaqC0+VkEo+lPk5FZqulIiEaRVckQLT050rfWrSR8shILRv7r3UiWgq4o/M0DPTmPyiqp2Sqo2TSGYrW0peJtNwHs50nhrEEe/de6ie/de697917rwBJAAJJNgByST9AB7917qWaCuDyxmiqxJAoedDTzB4UaIzq0q2uoKAuCf7PP09+691h8E+pk8MutRGzJ431KszrHCzLa4Ds6Kp/JZQPqPfuvdZmoK9Ll6KrULF52LU0y2gBdTMbr+i8bjV9PS39D7917pyykcjQbdVY3ZpsKhhUIxM2rMVcSmID9V2Up6b+oEfUEe/de6Z1hmddaRSsmmR9axuy6YVDTNqAtZAQWP4H19+6910YZgoYxSBTH5gxRtJh8nh8oNv06/Tq+l+Pr7917rH7917r3v3Xuve/de66IDAqRcEEEH8g8Ee/de6d82jffvUlJEGShpsoDI6SF3yEC1VUymMkBfM0iqt7qAAeR7917pp9+691737r3Xvfuvde9+691737r3TlH/xZ67/ALWmJ/8AcOu9+6902+/de697917r3v3Xuve/de697917r3v3Xup2Q/XRf9qXb3+84GmPv3XuoPv3XulZgaugwlVj58n53pcojx5P7KdfLT4GpeSgrKeenaGXyNKoaVol0sYwgV1MpK+690y5mgbF5Kso9Fo4ZW+2cVEdZFU0rc01VTV0KIk0Uq2eOVEAYEce/de6XmWp4Kx9x0eIrC2boqagwtZQmpo66mze29v0lGuvb9TEOZYKjHxzS06SO0kIVoToinVvde6Tu36GlyWK3DTU5jbcZjxsmJhkqEgarxyTuc3S0AkZRJVNemZIlu7wrOEB5B917pLSRvEdMi6H/KEjWv4IkUcqwNwVazC3IHF/de6eKqN029hGapjZXy25JY6RZ43eFHpcZCZ5KdWLR62iKhmUagvFwvv3Xus23z4lz1X5IUal25kkVZZ0haX+KNHgnjpw3Lvoq2bQoJKhj9ASPde6lbfoaPI43cVLGFfcT0+PbBwyVENOKinWvX+MQUZmZddU0fj8cSktJF51UMSAfde6TEsMkLaJV0Sf2o2t5E/FpE+qm9wVazD8gcX917rH7917qRSfafdU334mND9xD96KY2qDSeQfcCAkj16L6eRzb37r3Qhyu23MrjMyUpjSUu4t0ZOg+3khloMpSBaNaOCkalbRJTTafBIqGyJqR1FtHv3Xuk/t+ho8jjdxUsYD7iemx5wcT1ENOKiBa9f4xT0ZmZddU0fj8cSks8XnVQxNj7r3SYlikhbRKpST+1G1hIn+EifVT9QVazD8gcX917pab0x70dYiDEvBHDR4amXMJLNNR5WOjwVNRpPBN/mH1BAdUJte621A+/de6bsFXjbk1DnmjmmqjVhqGKkyFPSTJTUrj7+WbVFOyicE00d47MvnuOEv7r3ULcFBS47K1MOOE74mRjNh6uaX7j77Guf8mqxOI4hqYf5yPTqifVG5Lox9+6908VtVFXzY/AZ+rpFp6Ghx+PoM9SRxTtioZqGJzHWGkuamkSRmaWK7SwMZGhudcEvuvdJ/M+b+MZUVE0NTOmSro5ainm+5p6h46po2mgqASJEa2pXBswII+vv3Xum337r3Xvfuvde9+691737r3XvfuvdT6X/gHlP+WFN/7nxe/de6ge/de697917r3v3Xuve/de697917r3v3XunOvH+S4Q/1xcv/ALuav37r3TZ7917r3v3Xuve/de697917r3v3Xup+J/4vOD/7XuE/92sPv3XuoHv3Xuve/de697917r3v3Xuve/de697917oUgv8AxhN2t/zVSEX/APJRkPv3Xugt9+691737r3Xvfuvde9+691737r3XvfuvdO+dFskwP/OuwH/vPUvv3Xumj37r3Xvfuvde9+690qtz/wCZ2t/4atB/7m1Pv3XuksPqP9cf737917r/09IffyH+/e9foP8Af27kH5/GZmHv3XukloP+H+8+/de6etuIf4/hv+1nRDj68zqPfuvdMug/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917p/VD/dab+o3BTj/D/i2yn37r3TBoP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de6f90If49kfp/nY/6/8AHBPfuvdMGg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917p+wiH7bcf0/4sL/8Au2pPfuvdMOg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917p3yKH7LAfT/i1z/+7ys+nv3XumjQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6912qHUPp9R/vfv3XunXPIf45mvp/xdsj/X/lcf37r3TToP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917p9xiH+FbkHH/ACh/wDdzT+/de6YtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3T/nUOjB/T/iwUX9f+O0vv3XumDQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+690/bZQ/wAYhv8AT7XKfT/tVT+/de6YdB/w/wB59+6917Qf8P8AeffuvdOixj+DTcnX/FKX8DRo+0mv6r3vf8Wt/j7917pr0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvdKHb2NM+SpWrMfHU45y4qJa6nzr4+FDEzLLM+CaKYEkBIiZUj1spmdIg7r7r3QnzYqhoUlp8ZFkNsZAVcM7yUc9VkMfpiikjaCowuWqJkmVw9g0k5sLEiRSVb3XupVS9LNT06pT+CpiSKOQxRR+KfRCElqJZxobW7gvoEQUA21Gw9+691A8X+De/de694v8G9+690153DUuXglqCIqTLfcfcS5AQyFayH7crNHWJEwHkLhJPMsZdiZC+osCPde6gZ7aE0eSz+QoctTMaaXMZRUMddTzhKeSSqnhWXx6fIIgxBB0sfSGsb+/de6j4yt3nU0aVXhjzFI8rGKbLtFJU1AglZJ0hq5ZIqqVC14iVkYKU0IVZSPfuvdYq/dOSpPPSQ4xsLk0bxVEsklSK2icG8i0ccyq1O/0AdtbqOVYN6vfuvdPcO6Not/k/8AuWw+Pjm/bpKfHUFdJGZYSsVXVz/dU5nkZlWKSdwJH+oWyhB7r3TRuCrxmb22aalrJYzR7ixVXPJNRSAos2KyNNCnjRjfWdTXVjYLzYkX917pLY8UuDIrqSuFfk/JStTA48w0tJFFKzVsU7VDM0nnURoDGqHQZFLLeze690/U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fkjqXz20a/GQrW7krKKjqtt4zJZRazLfeUc0s2Mny9VFJVUcEoqAXkkjZygL+691jiztLS4bbtBW5iWmqcNt+fdOz8hSUQljxm6mzddU1uEqU8KTCDIhYEkkjcR080MToGjMpb3XustHuLbtJJs+jizNTHjdr7mnxFRBPTVFbj8ltLcFOlPu3N0yGjWaKOsEMmqgnWWSMTosX6ZCPde6atvbgxsP8SfL5GfVuDZ24dqU0TVWQnptqYyOl8uBoamD7GR6hnqqam8bU0+lVJeYs8soT3Xugx0H/D37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3TpPA8uJx9UsRApairxcsi38Vi/8TpDIWN/K5mqF4FtEa/m/v3XumvQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6905xIf4LX/T/AIuuH/8AcOv9+6902aD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3Xup+QQl6Ii3/Fj27/7oKb37r3UDQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+691Ox9JHU1DxTFwi0OUqF8TKreakxk1XBcurDTrRdYtcrcAg2I917qDoP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de6dqlT/AAPDrfgZPcJtc6bmlxoJA/ra1/8AWHv3XumnQf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3WSGAyzRRFgokkSMsBq062C6tPF7X+l/fuvdZ8hRfY19bRLL5hSVdTSiUp4jKKeZohIYwW06rX06jb6XP19+691E0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvdONIh+yyv0/wCA9N/vNfEPfuvdN2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917p0yCH7TBjjjFS3/2ObrPfuvdNeg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917pww6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eqr1pIKnGYiQrj6taGeojSTIvDFVxhKiZKVKt1j1JKuk1aUkMjqCi2hZhJ7r3TCQxJJBJJJJN7kk3JJ9+6906YTWM3hijeNxlsaUkKK4RvvU0uUcMpsebFSD+QffuvdCvN2HjlkqBkMdkTkIqqaGcUskL0lTokZWqEmqWMkRNv8ANFZbfXyH6D3XupU2+NrxUkdSk+SqZ5YtQx8VBoqYZhpvFWTTusKry1nhklJsLoL8e690s6FqKehoa9hNIa2jpa5aWNoykSVlMtTDFLWLfU661EgROCGAPAJ917rp40LExo8acWVn8hH9buFW/wDySPfuvdcfF/g3v3XuveL/AAb37r3UmJLUtYLH9VF/vLyD37r3Ubxf4N7917r3i/wb37r3XvF/g3v3XuveL/Bvfuvde8X+De/de694v8G9+6917xf4N7917r3i/wAG9+6917xf4N7917r3i/wb37r3XvF/g3v3XuveL/BvfuvdZ6aO0v0P+YrB/t6KT6e/de6weL/Bvfuvde8X+De/de694v8ABvfuvde8X+De/de694v8G9+6917xf4N7917r3i/wb37r3XvF/g3v3XuveL/Bvfuvde8X+De/de694v8ABvfuvde8X+De/de66MdgTZvp7917qXWxf5XN9f8AdX0/5YIeffuvdRfF/g3v3XuveL/Bvfuvde8X+De/de694v8ABvfuvde8X+De/de694v8G9+6917xf4N7917pizlbkKRsXi8JTU1VnNwtkqehkrJmSnxX8PjhlmyNRBp0yoscksl2kCx+Is6SrdD7r3SjrolqKSampq6sxtT5o5KTIw0lDXmARyWc1NNWLGtQskdx420AM2vgqB7917qLS0eSbVFPmp6+VnLiogwW2cIqU8MLamkp2gqkQD/OSyGbTYEtYeoe690EOe3vuEVtdj6DO089FT1FVSwZfEYagwctfThzGtVFJRoJYw4F0KSA2N+L29+690HYWwAC2AAAAFgAOAAB7917p9yin+Gbb4P/ABbaz8H/AJ3lV7917pjsf6H/AGx9+6916x/of9sffuvdesf6H/bH37r3XrH+h/2x9+6916x/of8AbH37r3T5tgH+8u3uD/xfMT+D/wAr8fv3XumFAdC8H9K/g/09+691ysf6H/bH37r3XrH+h/2x9+6916x/of8AbH37r3XrH+h/2x9+6916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+R/TeO5h/wCtqf37r3SP9+69097aF9w4Qf8AV1of/clffuvdMnv3Xuve/de697917r3v3Xuve/de697917pQqv8Av052/ruKmH/rMl9+690nvfuvde9+691737r3Xvfuvde9+691737r3Sh3WLbgyQ/pLF/7jp7917pPe/de697917r3v3Xuve/de697917pQ4IXpty/4bekP/rXox7917pPe/de697917r3v3Xuve/de697917r3v3XunjJj/ItvH+uIn/939d7917pn9+691737r3Xvfuvde9+691737r3Wel5qacf1nh/62D37r3WfJ/8XLIf9R1X/wC5De/de6g+/de697917r3v3Xuve/de697917p/xQ/3E7mP9MdQf7zm6b37r3TB7917r3v3Xuve/de697917r3v3Xuve/de6UO4BZcD/wCG5jP+i/fuvdJ737r3Xvfuvde9+691737r3XvfuvdP+2CBmoLsF/yXK/UgfTEz/wBffuvdM9LS1NczpRU09Y8YDSJSwyVDIrcBnWIEgGxsT7917qPcH6G9jY/6/wDT37r3Too/3DTn8fxOkH/qpN7917ps9+691lpZ5aKpgrKV/DU000c8EqpGxSWJw6kpIGVhcepWUqwuCCCR7917pyyudyWa+2FfJAUpPOYIqaioqGJXqmVqiUxUUcalm0IORYBQFAAt7917po9+690/YXcVZhPJGiR1mPmkWWpx9QpaN3VdBnpZVs8E2njXEwDWUSLIqhffuvdDHJTxw+KQtSVME/jkiqqCd6yjk1xLK0FNUegTBdQBc+Nv9VFG10X3XusVRT1CiN5KZ4VMcaoxgEIlvcK4WJEUlirW0rzY/Ug+/de65VWOqaGq+xrzS46tBiBosjX0GPrLzzfbw2pK2RJSGkugKoRcNz6Wt7r3WIUdU0jRJTzySo/jaOKGWV9ZfQFCxqSSW4Fvqfp7917qNPEypMrDSVSRWU3DKQCGBB+hHv3XunHJxn+JZD/Ctqvr/wAt2/p7917qDoP+H+8+/de66qqYVmOqKB6uWnjrP2qnwo0k326OlQIqcF0RfLLHF5XctZEK+Ni4Ke6913HRCGPHUtDXzQYujjq4auHK0+KyuSRXtNRzYuqo4cfLLqkLxtBPJ44VtIDIWKj3Xuk1vOmyeQwj4o42ninpNz4esoqqjarjx24qaqxORo6S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uvdZlpKp08q007RagvkWJ2j1NcqNYFubG3P4P9PfuvdIveG6H2u0FDTU9DU5eb7hqqKrleU4iOPSkK1VDAyETylmdEmcBFQF4nWVT7917oFcnmMrmpxU5WvqK6Vdfj8zgRU6yEF46SmjCxQobD9uJFXjge/de6bffuvde9+69087jFtwZsf9XbIf+5b+/de6Zvfuvde9+691737r3Xvfuvde9+6904UAvHmv8MHf/wBeHHe/de6b/fuvde9+691737r3Xvfuvde9+691737r3TtkR/keA/xxMx/9btaPfuvdNPv3Xuve/de697917r3v3Xuve/de6fdtYCo3PmabC0tXQ0MtRBkqo1eRepSip4MTip8xWSTGjiml4hp5NIjiYk2FrXI917p8x2xKnLY05LH5/bk8bzZ2CigNRlaefIybZ2nFu7Nmnaqo44o0ghmSnaSpkiQzfRvERKfde6aDtyZMdtjKT5PEU9FujKZLFQyy1M5/hMuJqKSCsqM4IomMMYFZDMNGtzHdwn6dXuvdTazZtbi6yvocxkMbiajHZxsFNHWLl5JJJDj58jTZKmgoKSaWWjqFhjWnmRD5PuIHVfCzSp7r3WSXZNcm76DZUGTw9bl62roMfNLRy18lDjMhWkLLQZKZ6ZXWWlJ01ixxuIWDxsfJHIq+691yxew8zmPLT0dRiv4yMPR56k2/NXCDKZHE1qJULVU8siijiZKaRax4Kuqhm8B8ixsPfuvdRztGdanPUs2XxVPNtnH1NdmVnizqGkanzdNt/wCxMYoi7zPUVcOnQpjC6i7rpt7917pzrNuDGbKOTlzeIqI8vk6WrxMNLFnnmr6bH5LK7eeVZJqFIYhK9NNUQLPMjNDGxZUl0xN7r3Qf+/de697917r3v3Xuve/de697917r3v3Xuve/de697917qQR/kcJ/6bq4f+qtJ7917qP7917r3v3Xuve/de6m44Xq7f8AVvz3/vPVfv3XusFN9v8Ac0/3hnFH9xD92aZY2qRS+UfcGmWUhDJo1aA5C6rXIHv3Xunxcft+ojaSHOyY8aZ/GuWoZ5maZZP2IahcQkzxh0BYSRRzLcqrFPUV917pODkA2Iv+D9R/gffuvdd+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XunLM/wDA8j/q17d/95mj9+691mziodwZdJG0IczkEdwuvQprXVnKXFwPqQObfQE8e/de6cqBcwctilpZ4N0SeKJcfjpchkKqglWJ2oKajkx00tNMgjcApBIkauApKvAxDe691lXDUAzGUizFHj8BXGSWOOatpzX42jzkksc89E0dDMmPpCEkOhZaR46dgA3g0mSP3XuusrTV06ibb+RxWXb7iohlldqJ9yVM1IFlWnxu3sijeCjYTu9MtLGxdhIpcNHFH7917oPKipnyMz1tXVTVtRU6ZJKueUzyznQFV3la5b0gAG/0t+PfuvdYdA/x/wB49+690543KV2HNVJjZIaapq6dqVq40dJPX0sEgKzDG1dQjNTNIrFXlh0vaxVlKqR7r3TYIwFVbnSt9IvcDUbta/8AU8n+vv3XulRs2SgpMnNnqqgkzEO34kk+0p8gcdpqsiz0MEs1bCruqqBIulVvqIYmyaW917qLIYzJIYkeOIuxiSSRZZEjLehJJVVAzAWBYIoJ50j6e/de6y0tFUVlRBT00LSz1TvFCPSgcooaa8r2UKikNIzEKi+piF59+691yqsdV0XFTTPHGZpIVmAWSkmmhVXlSCqi1RSFQyltDmwYH6Ee/de6h6V/1K/7Yf1v7917p+zSr9rty4B/3AqOebD+MVnAv+P8PfuvdMVgDewv9L259+69137917r3v3Xuve/de697917r3v3XunbBNGMtRxzAGCseTGz3qDSosOUgbGyyyTAiyxrKZDc2IFjwT7917prZHjZo5UaORGKSRuul43U6XR1P0IPBHv3XuuPv3Xuve/de697917r3v3XunOP/AIslcf8Aq74b/wBwch7917ps9+691737r3Xvfuvde9+6908U2LRI4K3LzPj8dK8ZRY40mytbBJGZFlxuPkdNUZtb7mV0h+oV5JF8R917rFU5NpacUVHTpjKFoaWOqpaaaaRslLSO0sVXlaiQ3nkDOWVdKQoeYYYiTf3Xumz37r3Xvfuvde9+691737r3Xvfuvde9+6906YcXrJP8MXnj/wCsGp9+6901+/de697917r3v3Xuve/de6cqLFVVbDJVgw0uPgeSKbJVshgoY544PuPtRKAzSTlLFaeBHlIIIQjn37r3U1snT4xim3TUwzJIrLuCcfbZlw1KYJ4qOOnkdKOJiz8Ru8xHDT6CYx7r3SfVQoCqAqqAAqgAADgAAe/de679+691737r3Xvfuvde9+691737r3Umj/4GUn/UTB/1tHv3Xup24P8Ai/Zv/tb5L/3Nf37r3TR7917r3v3Xuve/de697917r3v3XunGlF6DL/8AUPR/+7KI+/de6bvfuvde9+691737r3Xvfuvde9+691737r3TrkRalwR/riJT/wCt2uHv3Xumr37r3Xvfuvde9+691737r3XvfuvdOOGF85t8f13DgB/t8xB7917pu9+691737r3Xvfuvde9+691737r3XvfuvdDVRL/zj/mm/p2fQj/1319+690Cvv3Xuve/de697917r3v3Xuve/de697917p63CLZVh/1bNu/+81R+/de6Zffuvde9+691737r3Sv3Z/mdo/47Qx3/ALn1Q9+690kLX4/x9+691//W0muxxbsPfg/pvPdA/wDW5P7917pGe/de6ftrC+5MEP65ah/9yF9+690w+/de697917r3v3Xuve/de697917r3v3XulIv/Hnzn/s5KX/3Vze/de6Tfv3Xuve/de697917r3v3Xuve/de697917pSbuFtx5Qf83Yf/AHGT37r3Sb9+691737r3Xvfuvde9+691737r3SjwAvS7o/w25If/AFs0Xv3Xuk57917r3v3Xuve/de697917r3v3Xuve/de6esoP8g22f64eo/3jcFd7917pl9+691737r3Xvfuvde9+691737r3Uik/4FU3/URD/wBbB7917rPlRbJ5Ef0r6wf7aob37r3UD37r3Xvfuvde9+691737r3XvfuvdKHE/8WfdP+GOx/8A7vaYe/de6T3v3Xuve/de697917r3v3Xuve/de697917pS7kFht8f9mziv+unv3Xuk17917r3v3Xuve/de697917r3v3Xuh261ze3oKDF4WJat8/UZOskkokxv3UmRyFRTTU+Okx9RrYArDoplU+MrJI5UFZJH9+690Ik+QRchBhKjM3yhpfPRYx56uSY0SwS1nljAVo4U8UTzBJnjYoVZVIkQt7r3TblsRjc/SVlJlKeOSSqV5VykdFDPmaWrRQ0dTBUKBNMfSEanaTTIpKDSxV1917oLoevauLAwjK5SDG1VbU01WKRKOes+yBoZPDT5OQNG0cpLXmSKOUwqLEPKWii917oPszhchgaxaPIRqrTQpVUc8T+Wlr6OSR4YqyimFtaM8ckZuAyOjxyKkiOi+6900+/de69e3J4Hv3Xuurg3Fxxwf8AA/0Pv3Xuu/fuvdOVBmcri4quHHZCqooq5FSrSnlaITBFZEY6foyh3CutmAZgCAxv7r3S22pQ7kydDkK6g3Q1DTTZN485HC2QrM4rS0gMeXaJIwhE3llhSR62JmKTAkADV7r3T7BtbbuPq46mggzFPNS1SyxCor8PWp44lWMU1TS1WLaGTUoKvriKlTp0WFz7r3S2OdnEaxR06CFIzEIp6zI1CMjKA6yrDLCpH10hFQAGxDe/de6a8hV/dwyj7HFUnpdv9x+PipP7BAUyXaQj/Aub/m/v3XusuTUDJZHj/lOq/qB/x3b37r3UeKFJGGuSOCISUsck0iyOsZrKyOghPjgV3a8sqCyqbAljZQzD3XuupEgiSqnlnigo6Qapq2pV44Y43nWmgeYRCQqZHdFCjUbmwv7917rFST42sFXNDW0TUFNPLSx17VlOorKmkSOSs+3xU5gnMAEqCOZpUkkudMHBt7r3TPmaSqyCZCjr4KqTA0uTwstBWYjA5GhmPkwlc2TqZKWv89UIEn+zhnqJfIi2L0qOH0P7r3SIq8Jhsx91MspwebVGqpzHVUFZt/KyeJXlkIrDQNRTSsGZxFrj8hIjhFxGnuvdJOPbeenRpKTGTZGNGZJZMVLS5RYHQLrFUKCSRoVGtR5J1RCTZWPv3XusuU2/LhaOCXIV1GmSnqGg/gsSVMtVCkKFqmolqgggKRsY4i0bsruxETSCKUp7r3Sf9+6912LXGokLcaioDMFvyVUkXP8AQXH+uPfuvdCBtbFYmsqchU0VRk5EwtEcnUZzNYiTCYbAPHKTjquuyuC3DHJTmeRRBGt5XZyTFG2lre690pk3NtTU9Zn6jE5LKaIk+6wg3m5qo43Efjlyla000pVbkvMsK6VAQsbH37r3TxlsZWNTHcOL29X0+MqBQyLlMhtB85W3mo5aiRVw25EWWakCePTUfdaEdtSu4kQH3XumLKSn+6WPhzNPS0VRkXy2QoZv7oR4HJeWCWlNIKeKl0w/bVELeOYq5syq4uQ4k917oNffuvdc1ikdZHSN3SIK0rqjMsSs2lWkYcKCeAT+ffuvdcPfuvdeJA5PAH1J9+69084bB1ec++alkpoocbSCtraipafxQ05qEpgdNLHLI7a5F9CRsdOpraVYj3XuhA2xsfH1lXHXR7hnL4ibHVtTRDDIk0lqkOXpp5KpgYdSiPytDdXZdUVmXV7r3Sifrbb89TLVVFdm5DPNLNJDFJj4PXKxclJ2gksoJ/SYyf8AavfuvdPe3drYnbDT1FAaipyE2pEyVYYTU0dKw9VPQrCqrEz/AEmmHrZfQpRGkST3Xun/AED+p9+6917QP8f949+6917QP8f949+6917QP8f949+691LhjH2lda/6qL+n+rkv7917qJoH+P8AvHv3XuvaB/j/ALx7917r2gf4/wC8e/de69oH+P8AvHv3XuvaB/j/ALx7917r2gf4/wC8e/de69oH+P8AvHv3XuvaB/j/ALx7917r2gf4/wC8e/de69oH+P8AvHv3XuvaB/j/ALx7917r2gf4/wC8e/de6kUsY8x5P/Aetv8A7ChkPv3Xuo+gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917rooLH6/Q/09+691Mr0H3k17/wC6fpb/AJV09+691E0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvdT4cVVSPThoZIo6iURpLORTwXA1uXnkGlVVfU7EEKt2IsPfuvdAfuLdW7Nx4CqqqXDvjtnN9rR1S+Cjyh81PVo8VRLlJIFkj0zeOAzUyxRgukDkvORN7r3SN20MFHXmr3NS1dTh4YKpDFTioWOfIPSu1FSzS0zxONRVmQJNGdSgswQP7917pkqnppKqokoqeSko3nlelpJqr72Wmp2kLQ08lYUiMpRbKZDGpa1yAT7917rB7917p/wAsLYra5/ri67/eM/Vj37r3TB7917r3v3Xuve/de697917r3v3Xun/avO6Ntj/q/wCH/wDdjH7917pPLwqj/aR/vXv3XuuXv3Xuve/de697917r3v3Xuve/de6d4f8AiwZI/wDV3wn/ALhZD37r3TR7917r3v3Xuve/de697917r3v3Xuve/de6nZEWqU/6gcUf9vioD7917qD7917rsAsQqgszEKqgElmJsAAPqSfp7917obNqzbupMDlcBT4ulmzmKmqkocfk8tRYnOYGCWl+8rqiTbuRSOWoi1zRzUztKkcczMZVkWUIfde6ExqZIEgjjnyNTAkEa09Rl6lKrLzQqtkkysqM4+4P+7VDaVa6p6Avv3XuuAQDnn/Y2IP+BBHP+t7917qTjoUWqpY40WOONTHHFEiRRRRx07JHFFFGAqqqgBVUAACwFvfuvdNtXQRV8FNE081BW0FZHkcPl6eOnkq8RkYoyiyLHUIyyU7nQ1VSkqJvHGCylQffuvdSSC9pHhFM8irJJTJKkyU8jjVJBHMhYOim4Rr3K2JAJIHuvde0Dg3Jt/Wx+n49+690nMnszbOarZ8jkafKGqq/EKv7TJ09PTusMaRBqeCall8bsqWcszobkrGp59+690n8j1njnoMpXx5jO5TMyS5GTHUkdLS1c86g3xMeSqKuWnu/jH+VzIbLb9lJWKxn3XugZyGHyWO8AyuLrqDzF3phkaGopfN4GCySU/3KrrCkgFlva4559+691Owe4srt2oknxlQqLOqR1dLNGlRR1kSOJFSenlBFxyFkTTIgLaHXUb+690qx2juMMzLQ7djJ8vjZcfXu8LOCI3QVFXIjGMkFRJGykgalYXB917pEPlcpJPJVS5PIy1U1LLQy1MtdVSVMtFM5kmo5Z3Yu0TsSWjJ0kk3Hv3XuoAAAAAsBwAOAAPwPfuvde9+690qMXsvdGZpDkaHD1P8ADArOMpWNBjMZIqO0b+DIZJ4YZCroyMI3Yq3BA9+691wyGztz4uKeprMLWrQ08NPUNlKdErcPLT1QDU89JmaEyUs6PfhoZmH1BNwbe691G3MLbizo/wCrvkP/AHKb37r3TH7917r3v3Xuve/de697917r3v3XunHHf5rOf4YI/wDvRY0e/de6bvfuvde9+691737r3Xvfuvde9+691737r3Tvkv8AgFt//HETf+7+uHv3Xumj37r3Xvfuvde9+691737r3XvfuvdPWAzLYGunyEULy1LYjPY2kkjqp6OSinzeFnwv38ctPZi0KVDuqXAY2BI9+690oqffMi4SXB5DGjKxV0+563L19Xka1spXZTcUNEkWXhrnLNFUUz0EDXbWk4MiTxusjD37r3U7+9tfT4/FtmNrwVuIbNzZvbb5CGrgpjR0eMfbdRiaOuRVNTTRNDQrIfIxD0gRzd5L+691Mps3m8MI2zmwzNkdjYd8D/Gqmgy+Py+BqcqyrtbI5tqoS04q8dCksOD+4plEYEbKrtTxke691ExdFnaDPV+Zw+wtyJTJjsrjaLHrT5arNBUZvZ0yU1TXVzUxaR1pZzldCpEJFGuPxQkFfde6gz76knkpaxcVBDkJtv4/au46uKsqyu4MHj4qag8aJKXeinqaGlSirJqaUB0ZzGkJd9XuvdT4uyaw+Za2nyFY38Gxm3aHJncGQi3HRYXH7nbdUlMM0FJd5ZmEIkMI8UKokSpa5917qDktwVOV2XR41Y/s8dgptuYyOjiqKiWnqaqJc3kZ8tJFMxVJ5pK2bX4wFtYW/Pv3XukD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XupRH+QQn/AKuFeP8A1UpPfuvdRffuvde9+691737r3ThixesP/atz5/223qs+/de6b/fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3TtnBbIL/ANqnbJ/2+16I+/de673Bxn82P+rvkv8A3Nf37r3TR7917qXWmgM+rGpWR0xjjPirpYJ6iKUC0qmpp0iWRSeVbwoebaeLn3XusME0tNNDUQPomgljmieytpkjYOhKuCCLjlWBB+hBHv3Xus01NgZ5zUotdjIZADJhsfTwz00EtwjnHZGtn1xwkapFglgkKG0QkKWdPde6hzYynjeRYsxQ1Ko7hZFpcxD5I1aySaJqYWLCxK3Nv6n6+/de6j1eLr6KzzUztTspkhrqf/KcfURazGJYqyG6D1AqyOVkRhpdFbj37r3TarJITGrK7adRRWDMEJ06iBzb8X9+690uRkc3maGdMnDUxpRUVO65VaQY6jyCUhSno6PJrGkcM04Rm+2mi9bEMJEdnMy+691Cx0NDrNblp1psRRy0330hWpleQ1Evjp6WKCiBmdpWFiIypC6jrQ2b37r3UOozuUpqiu05WmrqaopJaSRYaIvhmop6V6d1oMRloB9v+1JIlxAko1Nckkk+690/VVFDtXHJgs1/EKKtqv4dmazD0FNB56uZ6WQ0j5eoqKlVgSlhn8dEwppjIZKqVP2pEZ/de6aaT+HZJoKOnZ8fk5qwU1OmQq0koa9JkC0qLWpBElPOZbxkTkRPrS0iEFW917p1z0ckdLtnyRyRlsAbCRHjJ0ZytiewcA8MpU/4gj37r3Sd9+691737r3Xvfuvde9+691737r3XvfuvdeIvweQeCD+ffuvdPe4dL5WerVJEXJxUmXIlqFqnMuVpEr6ktMhIP7skgK3uttJ5U+/de6ZPfuvde9+691737r3XvfuvdO0P/FhyJ/6vGE/9wcj7917pp9+691737r3UyioKvIyvFRw+VooZaid2kigp6anhXXLUVdVUMsUMY+heV1W5AvcgH3XunYVGNwrI2PMGYykUpcZKopvLhadGpQoWhxWRiVp5UkZj56uPxjSNFOSFm9+690xTzz1Mrz1M81TPJp8k9RLJPNJoQRqZJZSWaygKLn6AD37r3WL37r3Xvfuvde9+691737r3Xvfuvde9+691737r3TthP+Bsv/ap3D/7z9V7917pp9+691737r3WSKKWeRIYIpJ5pWCRQwxvLLK7cKkcUYLMx/AAuffuvdPslDQYfWuVZMjkdFZD/CKGqtDj6qMrHDJl8lT6lex1E01I5Y2s88Dgofde6bcjkqvKT+aqaMBRpgpqaCGkoaOPQqeGioaZViiWyLqEaDURqbUxLH3XuoHv3Xuve/de697917r3v3Xuve/de697917r3v3XupVFzW0g/wCmqn/62j37r3U/cXG4M6P+rzk//c1/fuvdM3v3Xuve/de697917r3v3Xuve/de6c6P/gBmf8Kaj/8AdnCPfuvdNnv3Xuve/de697917r3v3Xuve/de697917p3yQ/yPb5/rh5v94z9d7917po9+691737r3Xvfuvde9+691737r3Tng+c/t0f13Ht//wB3MHv3Xumz37r3Xvfuvde9+691737r3Xvfuvde9+690OFCv/OPGbbjjtOgH+P/AB7q+/de6A/37r3Xvfuvde9+691737r3Xvfuvde9+690+7lFsuw/6te2/wD3maP37r3TF7917r3v3Xuve/de6WW7xaHZ3+Ozcaf/AFoVfv3XukcPqP8AXH+9+/de6//X0oeyUUdi7+Fv+Y13V/X/AJ3s/v3XukXoX+n+8n37r3T/ALVUf3lwNhb/AHL0H9fzUr7917pg0L/T/eT7917r2hf6f7yffuvde0L/AE/3k+/de69oX+n+8n37r3XtC/0/3k+/de69oX+n+8n37r3SlRB/c6f+n95qWw5/51U3v3Xuk1oX+n+8n37r3XtC/wBP95Pv3XuvaF/p/vJ9+6917Qv9P95Pv3XuvaF/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01Vt58rFi9x4j+HVsElNHlESl81dNlAikNqailMS+690811X15Q0264tvQbXiGRqN0VGLq1wtfNladKnY1M+JOJrchAr0xbL+ZRCngjVtUaxwUzW9+691nqZNkff7bU7gwlYMJHnkqVqdp1v8PzcSZLHriIsrganEtDDVyUMle+uWgqZ2aMQS1RqBT1C+691Ex823KB91V+2FwOTosdgdz1CY+qxVTJn42j37BBR5WgztVTNLHjHw88EMKirU+RgZ4GmXUvuvdPkZp6iGCqpJTNR1cS1FLMV0s8L8ASLc6ZEYNHKl7q6sp5Hv3XuuXj/AMf949+6917x/wCP+8e/de694/8AH/ePfuvde8f+P+8e/de694/8f949+691Jij/AMlref7dD/0PJ7917qN4/wDH/ePfuvde8f8Aj/vHv3XuveP/AB/3j37r3XvH/j/vHv3XuveP/H/ePfuvde8f+P8AvHv3XuveP/H/AHj37r3XvH/j/vHv3XuveP8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+6917x/4/7x7917qRSx3m+v0p64/T/pgl9+691H8f+P8AvHv3XuveP/H/AHj37r3XvH/j/vHv3XuveP8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+6917x/4/7x7917r3j/x/3j37r3XvH/j/ALx7917r3j/x/wB49+6917x/4/7x7917r3j/AMf949+6910Y+Dz+D+P8PfuvdTK6P/LJufr4T/6rIPfuvdRPH/j/ALx7917r3j/x/wB49+6917x/4/7x7917r3j/AMf949+6917x/wCP+8e/de694/8AH/ePfuvdZ6eejoHbIZEKaDHxvX1jMHIjpqQeeV/EgYyGykJEB+4xCDkj37r3RPqoRz1M8zPNUmSolmFRWEPVzM8hYT1DXb91gbuQx5vyfr7917pXz1++q3bLUM75uTauKoKGrl10RioosZNk3ocVJW5IRLJNTfdB4aRJ53iV0KwqpjIX3XumXIV9BNSUVDisfUYylihp5MkJsrUZGTMZWASKmTqU0QwRiJZpY6aOKnDRxuyvJMzFz7r3TNoX+n+8n37r3XtC/wBP95Pv3XulDl0X+E7V/wC1VXf14/38FZ7917pPaF/p/vJ9+6917Qv9P95Pv3XuvaF/p/vJ9+6917Qv9P8AeT7917r2hf6f7yff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Hv3XuveP/H/ePfuvde8f+P8AvHv3XuveP/H/AHj37r3XvH/j/vHv3XuveP8Ax/3j37r3XvH/AI/7x7917p/gT/frZMX/AOX/AIPm39cdkePfuvdMHj/x/wB49+6917x/4/7x7917r3j/AMf949+6917x/wCP+8e/de694/8AH/ePfuvde8f+P+8e/de694/8f949+6917x/4/wC8e/de6lMn+QQC/wDy8Mh+P+mSj9+691F8f+P+8e/de694/wDH/ePfuvde8f8Aj/vHv3XunDFJ/l31vfG7h/w/5hqsPv3Xupu15qOh3Jgq/IVH29FQZagr6iXwzTWjoqlaooYoLudejQdPIvf37r3UqWPD1U9FUJk4sdRGjr3bDfZ5GoGIrKShlqoMXSPOtQrUtbOqQU9U8ss8JlL1KSmIzz+690oczmMVX1klLT5DHQUWU3JULV5mLb3lyVFt+fF0mMbIVBeCneSWaOSolrYILCSqheRNIeN3917pmy1ZRPlsBWYWtoIHosVhI2nnoJJaekymIBpWNdDNRaKlCYUmjP2jq0LxxyJqWRR7r3TimXwEb5LLYzG4fE5eN8JVQ0VSuZrsFW/tV1PuqhxdEySaYKzy0R+0yZeNlFQPLGhSn9+690zZY4xMLjKCgyNNkZ6XJVc9RKKOrpZ2gr8Jj2heFJaeJIxFJFNS1aeaQyTR+dC0cmr37r3SY8f+P+8e/de694/8f949+6917x/4/wC8e/de694/8f8AePfuvde8f+P+8e/de68UtyWsBySR9PfuvdPW46aanyrRVEckMq4fa2qORCki6tpULAMjcg2PIIuDweffuvde3HH/AL+HPc2/3M5Ti3/TdJ7917pl8f8Aj/vHv3XuveP/AB/3j37r3WWU+UxnxwxeOGOE+FGTymO9ppQzEayCAxUKDYEjVqZvde6xeP8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+6917x/4/7x7917pxEEbYwCmylFQVs1ZUQVpqYsmaoY16aMQChkoqedFR2NQtSxkWQjQir42kLe691ghoMJQursanOTxMSizp/DcOWSWN4mlpYmepqFZPIrIZoADa6yLce/de6kVNXSzszQ4PA0AIWyUePOhdP6iq1UkvLfm9/wDC3v3Xuuoa6SniEcFJiInZHSapXCYr7mcsxKSNI0R0PGp0o8IQgAHl7sfde6xPW18sTQSV9W8Dhw0DVExgKyG7qYdWmxsOLW9+6907Z5P8k2v6if8AfuRi55NlzNaqi5/AACgfgAAcAD37r3U+n3U01LBis/RLk8HSxUq02Mxj022/DU0itHHX+TGwGOaZkeQSPVQS62d5T+67u3uvdNmTqcBU0NPHjMNU4ysSoZ5ZZso2QVqf7dVMLOYohIWku6ERxmMAqxn8imH3XumHx/4/7x7917r3j/x/3j37r3XvH/j/ALx7917r3j/x/wB49+6917x/4/7x7917p+xNDUZGgzlDS0lTV1ENNS5uMUkLTTKMZU/Z1CugPEQgrJppCoLFo4wOCffuvdN38JyP/KjW/wDnJP8A8U9+6917+E5H/lRrf/OSf/inv3XuvfwnI/8AKjW/+ck//FPfuvde/hOR/wCVGt/85J/+Ke/de6UNDgq6bb2YebxY6GDK4aeSoyrtQQmOLH5IyCAyjVPICVAp6dZJmLDTGwuR7r3UNshR4ppItu+YyfuJ/eCvp44cq8U1MsUsdBRpJLFRLfXpkR3qCDcTxqxhX3Xuk8VLFmZizMzMzHkszHUzMT9STyT7917rrx/4/wC8e/de694/8f8AePfuvde8f+P+8e/de694/wDH/ePfuvde8f8Aj/vHv3XuveP/AB/3j37r3XvH/j/vHv3XuveP/H/ePfuvde8f+P8AvHv3XuveP/H/AHj37r3Si2vj6ivyk8FKqu64PccsjSSRU8EEX8CqIBPVVVQyxQx+SSOMyzOqBnUMwuPfuvdcnTD4ZdEf2+4Mtpq4pZZI2fAY6VKhUpp6JWKnIPoVyTPGtMNQHjqVOpfde6ZaypqshUy1dZUPUVEzEvI9rAFiwjiRbKka3ISNAFQelQAAPfuvdRfH/j/vHv3XuveP/H/ePfuvde8f+P8AvHv3XuveP/H/AHj37r3XvH/j/vHv3XuveP8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+690/UGIxk1EtXks0caZamoggiTG1FcXSniid5XkjZQpJk0heTxc2uL+691K/g+2f+esk/wDQfrP+vvv3Xus9NiduLU0zR7qdnFRCUU7friCwlFrhJST/AKw5/p7917qdncVt585mnn3O0MzZfJmWJMHWyJG5rX1KshkUkD+pUf63v3Xumr+D7Z/56yT/ANB+s/6++/de69/B9s/89ZJ/6D9Z/wBfffuvde/g+2f+esk/9B+s/wCvvv3XuvfwfbP/AD1kn/oP1n/X337r3Xv4Ptn/AJ6yT/0H6z/r77917rjPT4Shx+QSjzkuSnq46WGKAYmakCtHWx1LzSzzSkBVRCNIUlmYfpAJPuvdJnx/4/7x7917r3j/AMf949+6917x/wCP+8e/de694/8AH/ePfuvde8f+P+8e/de694/8f949+6908ZOP/I9u8/8ALlm/H/Zw1/v3Xumfx/4/7x7917r3j/x/3j37r3XvH/j/ALx7917r3j/x/wB49+6917x/4/7x7917p0wKf7+HbfP/ADEu3R9P65uAe/de6a/H/j/vHv3XuveP/H/ePfuvde8f+P8AvHv3XuveP/H/AHj37r3XvH/j/vHv3XuveP8Ax/3j37r3Q6Y9oG+Om4adZUaph7VxM0sI/wA5HBU7dMcErD/Uu0UgX/FT/T37r3QF+P8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+6917x/4/7x7917r3j/x/3j37r3XvH/j/ALx7917p+3NH/uYaxt/uK2x+P67VovfuvdMPj/x/3j37r3XvH/j/ALx7917r3j/x/wB49+690tt5x/sbK5t/vycZ+P8Aq41nPv3XukTo/wAf949+691//9HSw7P47K7DH/Z87s/939R7917pDe/de6UW0RfdO3h/XM47/wByl9+690nffuvde9+691737r3Xvfuvde9+691737r3SpQf78qoP/Z00g/9ZM59+690lvfuvde9+691737r3Xvfuvde9+691737r3So3oLbnyw/5vQ/7zSxn37r3SX9+691737r3Xvfuvde9+691737r3So24L0m7f8Nryn/wBbdD7917pL+/de697917r3v3Xuve/de697917r3v3Xun3LC2P2uf64Sp/96TID37r3TF7917r3v3Xuve/de697917r3v3XupFHzV0o/rUwf9bR7917qRl+Mtkx/TI1v/uS3v3Xum/37r3Xvfuvde9+691737r3XvfuvdKzblLUV2P3PQ0UE1XW1ONxy01JTRvNUTEbgpC5SKMFiFHLG1gOSR7917pyxux62ppxVnG53ORPAJoztylH8IJZ44fHLu2qSSl1xyGaOUU0FRHqQKJfUSnuvdT6jAb/AKWnqxi9p1eIoo4pXqzt6kmrKk0v3LTeKqzEclTWPFcqPCajxtpRtBKhh7r3Skx3T1NPjKOqyWfyWOyNVC7VWObbRV8dVaA/hlFdWU80uljokfwopNzG0gHq917pBbn2Fntq08dfWClrMTPWCgiy2OmeWkFbJFJUwUdRHUJFNFK8MUkqB4grhX8buY30+6901YfdW4sBDLT4fLVVFTTu8stKpjmpDPIgjepWlqFeNJioVfMiiSwA1WHv3XulJsneUOGzORq9xPlMjDmoI4qzILP97kIauKdZYchMlawNTZdcbhpkYBtQZivjf3Xuh5o8tgq7Hx5SnzuGFE8UsrtVZfG0NRTeA2nhrKOrkSWJ149LJ6gQyF0ZWPuvdNku99nUMsqnc1MammCErR0mWqldpF1KlNWU9Oadza9ys2kHhmBIB917oD+wNx43c+bp63FRVSUtNi6bHtPXUtJS1lbNBPNKamaOkeUAKkkcEYeZ20RjlVIjT3XukN7917r3v3XuuLKGVlJIDKVJUlWAItdWHIP9CPfuvdG8x9Ng9/UeJz5jx1PkayiyMBydEn28uGzk2Hmpa3H5QQRtLNSxTMtRHTTa5PtihhkQyuz+690VnMYXKYCtbHZijeirFiinEbPDPHLBMCYp6aqpWeGaMkMokikZdSst9SsB7r3TX7917oQIN57mj26q/wAT8v2FfQ0dHJVUdDWzwUy000qwCWtjk1KukKmsEqnoUhAFHuvdJHKZfJZqSCXKVkta9LTfZU3mK6aek+4kqxSwIoCrGJJpXCKAAWPHPv3XuoDSSOGV3dlbllZmYMf9qB+vv3XuuAFuBwBwAPfuvde/p/gQR/gQbgj37r3Sy2bncVhchWVOWp5WknhDUeWpqWCuyGLrknFSZ6eCskjS8xGl50dJk4KPpMscvuvdCHD2LhXLLNmtzwRtGyMVxVPUOwd1laMxfxKMaCygn1/qAOk/Ue691Mj7Bw801JD/AHozMVNTSj7efIY6piai1RmOSeCnop6zR6WZAY31HkEAH37r3QNbjzb7hy9XlGpKWiWd7RQU1LS08nhU2SXIS0yqamrk/XVVUpZ5ZCzEhdKr7r3TEbgEgXNjYXtc24F/fuvdDlPtTaLUVPNS41qmjOPRocpTZesM9YZaJTJVPLd6dZ1cljE1NaF7xvF6Snv3Xukd2ZgosHuyvNPM8tJmZshmqOOWPxz0kFRmqukNHMdTeTxvA6rMLeRbOUjYtGvuvdJnb+al2/loMpFAlSYoa6mkheWog10+RoJcbVeOelZGRxHM5QnUmq3kSSPVG3uvdD1BSJXU33+PamqaFqalrTJBX0NSKeKsUmOKpMbKyyB1kiKSRo5ZHGgFWA917qFkKGHLYmrw9UU8Tw1M2NlmVmGNyqReSlmgZAWjSZ0SCq0qwMTFtDyRx2917rqbD+TZm38BNiIM1JjdwpS46nyGVw8+MbIVGLyU6ZeN6efHGnolqqipqjBmQpMcjpLIyRh0917oE6Hb+2AmUrshuClqaXEU9PUDG0mX2xXVuXkmnWA08MeLrnaRELa5lgAPj1WdArMvuvdJzN5mXL1JlYGCjhd3paZmU6NShGqahl9JlZVVePTGgEUYCLdvde6UqbOlmwxappq3b24MdUTLWwZqGuoaeqoJ2jahqqqirYhURvqm8YlokmjWJBJURRBvO3uvdJ6fbW4YHlT+CZOrEMaTSTYuklzNMlPJYRVElRiRMiIxIAMhU34IB49+6916LbW45nZE2/mgI2KTzTY2rpaOkkVS7RZCvqlSCmcBTdaiRCCLEX49+6909Yijn25LkqrLLBHUVWHrMOMAZfLWVK5F0kEmVloyRTU8RhjqAkdQtTI6xIUWmklLe6901e/de697917pT5Ef79XbJ/rkNyf7x9n7917pMe/de6ecJhJ87UT0tNWYujmipXqYxk61aMVkiyJGlFRIFeSady+pY442OlWb6L7917pU0uFz+2sk9PS7xxW3Gr6etpv4jBuKtxqVsdMqNJR1lPRoK2COUSHxSV9LDBIVkUSa1K+/de6VeI3HTbUO3sjuX+5nYeKp8i8seJxmQpv4ifFVtPO+4H+xD1SMwYxiqdixaMM0kMfg9+691L3buna++t25TPbc2/ksVRVUFI392sThoDUvUwwpSvVVc9LK1NAtROyJJUpGdIKsYHk1GT3XumuPFrO8REX2ykQ/dR1m5dkUBpZXFpYopslkYvKA17EqrAW1qDx7917qNT0O5q3L0lDi8Nio6JyUkjNXSZ8yLBF5Ja3I5XbxetTSwaSFqEREDSiB25f3XuhmxuSpc5BJU08kbz0z00GTWHzGJKyamE33ELzRQkxTMJRGTGvqjkFrAE+691P8H+P+8/8AGvfuvde8H+P+8/8AGvfuvde8H+P+8/8AGvfuvde8H+P+8/8AGvfuvdSYYv8AJa4XH6qD/oeX37r3Ubwf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+691IpYbTfX/lHrh/t6CX/D37r3Ufwf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+6917wf4/7z/wAa9+691xaGysb/ANk/71/re/de6m18N6yc/wDLH/3GT68e/de6ieD/AB/3n/jXv3XuveD/AB/3n/jXv3XuveD/AB/3n/jXv3XuveD/AB/3n/jXv3XuveD/AB/3n/jXv3XumzL5CmwmPlr50NTIJI6ajolk8RrK2dWeNJJALpEiI8szgX0rpWzunv3XugkqMhDVpkKmfG0v8eyk6CqzcE1XARi0p4Yf4VHj9bRMp+3g0yyamRIwi/rdj7r3S2x20q/c+Do5tmZCkxW4EOUlosXuemwVB/evE4Kj82Vm2zTCCuqMlW084kEzxlIigKSKHi4917oOJqzc1Xj/AOGT7YxWShy9G7Q1UFZLX4anf7YSJlqSrxVc1FS19KXBZ1nWJFYwzU5SR1f3Xuk1jshubY1RPVU0Ax9RlsbVY6OqqaGkrVamFXFNO9BNULJGJI5YYm1oSV9J+jKT7r3SWlkkmllnmd5Zp5ZJppZGLySzSuZJZZHblmZiWYnkk3Pv3XuuHv3XulJmRbD7RP8AXEZD/eNx1o9+690m/fuvde9+691737r3Xvfuvde9+690otn87t2sP67jwn/uzi9+691PwWMjkw+OymMyIgzdNuFKatWGvpaHKYuhlipYMDkMcKuWnDLUVc1RDUTJNaLxxCQxJKDJ7r3TzWYXbGPrMfgJJkkkm3tl9u5bPVlZFjqymwmOr8bBHkUppKqenpC7PWWqauJo9AOonxyFfde6jR0mGQZSrqcLEanALiaDIYRM9RwDIQTxVtFk8zTks7pIjJREfavUJDKxMgZZ42T3XunXb9LtiOrp6tXxdO9HlunZvuqjNBnpzW0kce76kI0wTwLVNrrUCO1M9vXHErIvuvdQMbjcTJ9tJno8XqqN37Zmr3OZpoapNvVuZrsXmPJNHWCMoJI0FUY4wadDBKZkErD37r3UZMRha/blLW0TYukyVPDvCt+wqc7GtfkKPF1mOeko6xqmRYxVU9LWVVSuiOD7qKnZYlaUEH3XuuWVhp33oVjx+IzlEmMxk5x+OyMWOxtTRU+14ZJlx9WJJBE8SKzRRyeUrIgSWGb1Qv7r3WSqoNtrQZPNUVZV7lapyGQxJhzFbSUFfio6zBUlXhcxWSJUPJK8ORmngkmj8kFStG6lqdahdXuvdMu46GioKXBR08NEtZ4s1BlpaGuFZGa+gz09MaeWPzzshWLxSQyMIxNBJE6pYFj7r3SV9+691737r3Xvfuvde9+6904ZPipT/tX4j/ecRAffuvdN/v3Xuve/de697917r3v3Xulz14ZZtyQ4uPcFftxc1BLjXqsdoSprWcrUUuJjqHdPC9TNHHHDMNRSQoQjHj37r3RhKLasKblpsjU5bOZ+CCFo4MdvasrNyTUeRWOQSV8dUs1JA48ZaD7aqoJkEcki8Nodfde6c6LF4OipBHjqODFzNGWqFocTjMfRVTsRZVpceBoNlQF3Z72H0AA9+691zEMj6YlLNdgEjUkguxsAiAfUk249+690E28+wcZS0mc29hfvKjJyrJh6jLL44MfTwSMYcylC6u0lR5Iw9GWeNEZJJWQsBGze690Avv3XuucYjLoJWkSIuokeKNZpUjJ9bRwu8auwFyFMigngsv1HuvdGGp969b7bx8WHws2fqKCGWSqjaHFwTz1dTUkJUVeUqK6oowJ9CRppggMYRVVTcFm917pV7byw3NjctnIMbVY7BUFSaemyNfPHadaCjWszlXkGVFgpY6YT0v0qJR+56mFhq917pg3Jv3b+EoZP4XWUedzk8ZWhip1apxuP1HSa7I1DBUkZRq8NNGWu1mm0xgJN7r3QD5vc2e3GKNc3kpq9McKlaCJ46eGGkWsdZKlaeClREUOUQtZebD37r3TF7917r3v3Xuve/de697917p/3ULbm3AP6ZrJ/+5j+/de6YPfuvde9+691737r3Xvfuvde9+6906Ywfs7gP9Nvf73ubF+/de6a/fuvde9+691737r3Xvfuvde9+691737r3T1lf+AO2v8AHCT/APvR5Ae/de6Zffuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3ShgH+/Uyh/wCzhwI/9ZuSPv3Xuk97917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XupTf8AFvpz/wBXDI/+4lH7917qL7917r3v3Xuve/de6cMV/wADx/2rdx/7xtitPv3Xum/37r3Xvfuvde9+691737r3Xvfuvde9+691OqoselNQSUdbVVNTNHJ/Eaaox8dGlDOix6VpqiOom+4jctJpcpEwCjUgLWHuvdQffuvde9+691737r3XYBJAAJJIAABJJPAAA+vv3XulZQVNFtmJ6qWljrd06tNFTVkKTUG2rXDVlfR1CMlRkAbeKnkBjpiNUyvUftU/uvdMEtPlK6Kry8sOQrInqJ3rsrJFU1MbVckkb1MlZXsGBkZ6iIyM73LSpfmRb+691M3LxuPPj+mbyv8A7nSe/de6Zffuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3TnT4yR6JstVzR4/Cw1sdBPkpryXq5IWqhR0VHFeapnMSM4jiWwFjI8aEuPde6gnNY2IGGnwcNZEIZl+8ylRkYK6WomiVFl+3xVWsMccLKxiS8jNqLSP8ApSP3Xuoy7iyAlklemwkyvo0U0mCxy09PoPIganWOchgSreWdyb3vrVGX3XuljX1FDk/7qUdPh8vJVS7OiyDQYyrpauKnhlzmS887PXLFoig8eq001mDLGZUOkt7r3UVNvRmrzFNUbi21RxYiPWtdJX1FZSZbyi9EuHGHgqpZjKCrm8S+JSRP4nUp7917pnkoK6KipclLR1MVBXTVdPR1kkMiUtVNQ+P72OnnYaXMRkQPpJsTY8gge691E9+691737r3Xvfuvde9+691737r3UunuaXKrc6WoqZXW5AcDNUjhXH5GpQbH8ge/de6g+OP/AI5p/wAkr7917r3jj/45p/ySvv3XuveOP/jmn/JK+/de6944/wDjmn/JK+/de6eIJaePBZGm8yR1M2Xwk8dKElDTQU1FkI55w6r4wI2liUh3DHWNIYByvuvdNXv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XuuiQoLMQAASSTYADkkk+/de6Ub4SPFl/7yyVONqFSXx4SGJDnZJkjilhjroZ7Lj4pFk4lqVaUD1x0s639+69044/MzVVS9DSQQ4zFQ4ndrw4+luwcz7frH8mRq5by1cqrZEknY6BcRLGpK+/de6Rnv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XunWo/4s2M/wAa/Lf9aqUe/de6avfuvdS6D/gdRf8AUXTf9bh7917pw3NxuTcA/pnMt/7nye/de6ZPfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3T1lf8AgFtv/HCTf+9HkB7917pl9+691737r3Xvfuvde9+691737r3TrgBfce2R/Xc+2x/63Kf37r3TV7917r3v3Xuve/de697917r3v3Xuve/de6GLDr/xgzerf07B2aP/AFk5H37r3QO+/de697917r3v3Xuve/de697917r3v3XulBun/i9P/wBqna3+87ToT7917pP+/de697917r3v3XulzvUWp9kf47GxZ/8AWlWe/de6Qw549+691//S0te0UP8ApN7F+nG+93j/AG24Kge/de6Qmg/4f7z7917pR7PjP96tu/T/AIvOO+n/AFFL7917pOaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XulWiH+49QOL/AN66M/8ArIn9+690lNB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3Sq3tGf705f6f56H/ANxI/fuvdJXQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+690qdtxn7Pd30/wCPWl/93lB9ffuvdJbQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+690/5iM/w3av0v/Aqr/3psj7917pg0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvdSaJD95SfT/gTB/wBbR7917qRmIz/F8p9P+LjXfX/qJb37r3TdoP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de66KEAklQBySTYAD6kn37r3Smj2/HQRx1e5ak4uNnjaLDxhX3HXRrWLTzotA9vshpLMktf49ajXBHUDj37r3Q87P2bfCV8udxEGJxlTQ4xYNqxtXQZisqKTODyZPeeUljiqmWVI/wBughkjgdZROkNNoTze690vGUkIoWGKOGOOGCCCKOnp6aCJdENPTU8KqkcaLZURFCqOAAPfuvddvTyxkCRCjeOOZQ4Kv4ptXhlCnnS+ltDWs1jYmxt7r3XKnTTPCWETKJULLMSImAa5WQjnSfobe/de6K12IasbqyNBPncznoMc0EdJPnKWsx1TTfc0MNRV0aYurVPAIpSYbxxRpLoEyoquAPde6zYLrDd24MdSZijpKSLE1xqFpq6oyNJZzSztSzFqKmaSqUCRWQF4BqsSt159+690w7k2pm9p10OPzdPFTz1NGmQpTDV01XHUUMtRLSx1CtTOxS7wyDxyhJBa5QAgn3Xuk/4z/h7917r2g/4f7z7917rorYEkqABckmwAH1JPv3XulRX7H3bisdPlcnga+goaaWkiqJKtEhnp2rlvTvPQs33EaFtMbyPEESRkidlkdEPuvdJjQf8AD/effuvde0H/AA/3n37r3S866y2WxG4k/h1bLTR1NJkGrKYMXo68UOMnq6aKvpG9Eqq4NrjUoZtDKWJ9+691Azm8c3uOGSDLrjKoAUkdDN/D4oqjEUlLLPPJRYt4dKolTJOJKqSRHmcxRASqnkSX3XukloP+H+8+/de6eUQ/3fqfp/xeaL+v/KlUe/de6iUWJyeSMox2Pra8wRtNOKKlqKowxIpd5ZRAraVABJY8Ac+/de6wNRVSU1PWPTzJR1ZlWlqmikWmqWhbRMtPORpcoQQwUmx4Pv3XusGg/wBR7917rorpBYkAAEkm/AHJPv3XuhpputMRQUwbPS7gqqqsp4XpoKeIbTmxk3hH3cddSZykrKicxzExD9mnVtBdHdXGn3XusVXsDCVEEaU2Vz9LNDE0cRyLUObp7Go8qpGlOmPMCKhYaVEmpzrutyPfuvdMs3WGQ1N9jn9v1StrNPHUvk8bVzWB8cUqzUz0sMjmw9dZ4lvdpgAT7917pAVuOrcbVz0FfTyUlZTOEnp51KSIWQSI39CroyujqSrqVZSVIJ917qIU4IJAuCPqQf8AGx9+690IH949+7qqkFDPO1TjsKtNMuApKHBRviaGZpg+UTEpTQyqsktlae/qZVX1FR7917p73Bsvcmb3tu6TLVdPRinzUktRkcjUvN9xRV1VP/DHw1NCHlqYjDTvHD4lWCEokE0lOSqj3Xunqn2NtyhpESfHVWXNQz2yeQmr8asphca0oKXGTKqKLoJNc0zX/tIrFPfuvdPuMgocJLNNicVjKNqoBaxXp2yEdVECrCnePKmdUjuqtoiC+oBvrz7917rtgzszHSCxLEKAq3JubKoAA/wA9+690jOzUI2JQ35H9/sQPz/zyuZPv3XugD9IBPpsL3PHFvrf37r3XYXVHJKqF4oYlnnlRC8cEDzx0qTzyKCEQyyxRB2IBd0W+plB917p+h3VuGGhkx1Nl5YYXgjoJKmCKkTNfw6KPxDDjcSR/frSFNKPSipEZjVIiviGg+691kx269w4uKenp8nPU0s1PUQR0OWeTM4uilqpIpJcjQYjJtLSxVd4YwtQISwt7917pxxmbqa2Cvp85n63JzS0xo8Ni89V5GqxUMkkcs8lfFWO7LRyQsqpSxR+OJ5JSZSY1Mcnuvdd0tFjKysosDR1NVW5+vVxA9GlLJhRXineqTCrVNIHkm0IQ1RGphEh8YLKrS+/de6Z9B/w/wB59+6917Qf8P8AeffuvdKnJIf7pbX+n/Fw3L/seaL37r3SW0H/AA/3n37r3XvGf8PfuvdKnacm3qevf+PpoEv20VBXy0Ry2Lxkr1SrVVeUwsbwyVEYivyjyFBqIpaiRo/H7r3QrYdM1LWVGLot0Q46ida+onj2/kIp48pRY6kkytW+M2ztVv8AKz9urTJC0SIOFZkey+/de6aIs1l8VW1FVQ5KpoqiriaklnqqShFZW0TSrN9rXR1STK6syI7RMzrqUEElQffuvdDTsTyZLEbmnrNz9e1+SqutOwc1DRZF9tU9RtKsxVFow2TqcUtICjxOpqaqumiaOGExxpq1SE+690DEGcqI11fwvbU1QWLivn29QiuRif1JJAI1H9ReM2/Fvfuvdew+ZqMRlv4o4aoiqPJFlaaFYojWUdRIJKhYYowkayowWanA0qHVV4QsD7r3Q3BUdY5YJo6inniiqKapj1eOppp0EsE8YYA2ZSDYi4NweQffuvde0H/D/effuvde0H/D/effuvde0H/D/effuvdS4UP2df8AT9dB/wBDy2v7917qJoP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de6k0kZ8/4/4DZD/wB10vv3Xuo2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917rpozY/T6H/AHr37r3U3IIfvaj6f7o/r/yqp7917qHoP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de6D3fzM02Gx4YRCKiyWaqGmdI6daeSVaOOsaRv0qv28qMWP1sALnn3XuklQbershVzUEdTiqWpipDXqchkBBST0XgNUtZBW0yTRtAYh5RUavFo9ZcLz7917oUY9wbG2pubq/L1G7qDKDq3CSYzPwbYhXKPkMtTVFfmKKPCVDSw01VFXmvMT1dPUzJBIjrUiMMH9+690CVPLi5KdlpM9RtG0ImqIKyKpxE5EEh8aT0r+WBpOA6xwVMwUHhrgge691G3FHT0u3zTVElC1fVZmgrcZHR5LH5Erj46Grhy1VP/C5JkiE0jUCxCZkd9D2UhCR7r3Qd6D/AIf7z7917r2g/wCH+8+/de6UuaQ/wbaH/anyB/8AXkrfp7917pNaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XulJs1D/AHv2r9P+Pkwf9f8AnZxe/de6TKodC/T9I4N/6e/dbPHrsRkAAaQBwAOAAPoAPfutdd6D/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3Xup8eOMmLrMl5lBpa/G0Ip9BJkGQp6uczeW9ho+2C6bG+u9xpN/de6gaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XunDJofuk+nGPw/1/7U9OffuvdN+g/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de66MdwQdJBBBB5BB4IIPv3Xuhn2H2HultxY+ly1ac/QzRPDNDkRE9dppaKQxzwZfQajzhQRqlkdHNvKr6VK+690Mm3MhTbkxkOZo4Y4ccIQldTw5NczlMXWM7R08eSWCnpo6dZVRpIxICWW2lmYSLH7r3UTc2bj2xgcjmBKUrBahwTGmepVszUeuneWMftqIollnBlbSWQDTLzG3uvdFA0N+Tc/kkkk/wCJJ+vv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XusmqbxGDyv4DIJjDrfxGULpEpj+moDjVa9vfuvdY9B/wAP959+6917Qf8AD/effuvde0H+o9+6917Qf8P959+6917Qf8P959+6917Qf8P959+690od2xn+9O4rW/4veT/9zH9+690ntB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8AeffuvdO2LQ+DcQ4/493/AOWjFe/de6adB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3T5lkP2G2Pp/wAWOo/r/wA9LkPfuvdMeg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917pRwRn+6WV/r/ePAf63/FsyXv3Xuk5oP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XuskNLPUzRU9NFJUVEziOGnp45Jp5pD+mOGGIFmY/hVBJ9+691MkoqKilWLLZelo5w7LPQ0cU2XyVOngWaOSWOkApUJLBTDPWRyrzeMW9+691giqtuySJHK+fo4meMSVZosbWlIx/nmFFHUxEk/VB5uPoT+R7r3Xc9GiQ09XTVcFbRVbVKU9REs8LCSkdVqKeopqpEkjkQPGzAqVIdSjup1e/de67ZD/DoBxf+JZH/ANw6L37r3UTQf8P959+6917Qf8P959+6917Qf8P959+6905YhD9+fof9xW5f942vWn37r3TboP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917r2g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pM9HP+h6WTzRqsqMQXOj9YZR7r3UvIbC3hjHaOtwGQjaPKz4ObxRCqWlzNNS/fT4qtelLiCoWANOYZireNXcDSjlfde6j5nGVmKoaHH10aRVcFdkGkRJoaiMpU0VFV08kVRTM8ciPFIjo6OQQQQffuvdJ0RszKq8s7KiKLlmdjpVVA+pJ4AHv3XunlcRlMXkcUuTx1djmqpKSqplrqSopGqaVqnQtRTioVdcZZWAdbi4Ivx7917rnumM/wB5tx/T/i+5f6/9rCT37r3TFoP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de6e8sh+x2z9L/wOf8A96XI+/de6ZNB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvdO230P95Nsf8Ah07ZHH15ztOPfuvdNOg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917oZsNGf8AQPvg/wBOw9lf63OIyX19+690DOg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917pRbrQ/xpvp/xZ9qf+8lQn37r3Sd0H/D/AHn37r3XtB/w/wB59+6917Qf8P8AeffuvdLzfEZ+32L9Odh4k/8ArSrffuvdIMIQQePqP979+691/9PS87V47Q7IH9N+7w/96Go9+690gvfuvdKXZvO7Ntj+ubxv/uWvv3Xuk17917r3v3Xuve/de697917r3v3Xuve/de6VqD/fi1B/7O2jH/rHn9+690kvfuvde9+691737r3Xvfuvde9+691737r3Ss3z/wAfXmP+W0P+80kZ9+690k/fuvde9+691737r3Xvfuvde9+690q9si9HvD/Dakp/9b1APfuvdJT37r3Xvfuvde9+691737r3Xvfuvde9+690oMyLY3aZ/rgar/eN0ZEe/de6T/v3Xuve/de697917r3v3Xuve/de6lUXNbSD/pqp/wDraPfuvdSMz/xeMr/2sq7/ANyn9+6902+/de697917qZj6GbJVkFDB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tBF5t/jb37r3XY9QuvIBKm3NiDYg2+nP19+6910CCbAgnUU4IPrA1FL/ANQOSPr7917rshvUFSSV0jaYxQr5ZfGguzCNebf4mw/x9+690otz7eO2spDjVyAyiVGHxeaiqxQPjD4MqryQwyUcs0zKyhPUS/N/oPp7917pP6G/p/vI9+691xZG0tx/ZP8AT+nv3Xup2RQ/fVFhx+x+R/yqp7917qHob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/wB5Hv3XuvaG/p/vI9+690He+m8WRxyVXmODy2Cp8dlIPCs6VzYjPVWTaPwLNAzGFqqnlj/fj9djew9+690jdzY85vG0dPsufLx4wU1OmcwFdT4Hb2FGYx8azVeRw8MOQkjhp6l5Y6hceNf+VGqqFKBkjX3XukDk9hbzxFRNTV228oGp2iSaejgGUoEafX9uDlMWZqa8gjZkAm5FiOCL+691z2ZUSYjdtIs6VVFkUkyeHgjkp5xPR5utpJsNS09fQMFc6amQQzwyAaefIjqrRP7r3UPeJY7ozTOtKrSVrTMKOOKKn/fjWcMscIChiGBew/UTfm/v3Xuk17917r3v3XulNmx/uF2cf64bIf7xuau9+690mffuvde9+691737r3Xvfuvde9+690ptlC+8tpD+u5sCP/WpF791scekz+B/wUf7170OHVpBRz173vqnXvfuvde9+691737r3XvfuvdPtOP8Afs5c/wDV926P9vj8p7917pi9+691737r3Xvfuvde9+691737r3XvfuvdOOUFqtP8cdhT/wCsWn9+6903e/de697917r3v3Xuve/de697917pWbHF904of41n/uvl9+690z4XMV2AytDmMbKYqugqI505cRTxqw89FVrGyl4J01QzxagHjZlPB9+690otx7/3BufHUeKr2ooKKleOomioKRaY5GuiWSOKur3uxLKkjIsURSEfqEQe7H3XukT7917r3v3Xuve/de697917r3v3Xuve/de6fNv5HF4qskyGSxEeblpqZnxNBVuoxP8AFvMn21Vm6Uqxq6aFfI5o9SJNII1mZoPLDL7r3TRPPNVTzVNRI01RUSyTzzPYvLNM5klkcj8sxJPv3XusXv3Xuve/de697917pRbuFt1bjH9M5lB/tq1/fuvdJ337r3Xvfuvde9+691737r3XvfuvdO2KH7O4v8Nt3/8AXpxI9+6900+/de697917r3v3Xuve/de697917r3v3Xun3Lj/AHH7X/xwVQf/AF5siPfuvdMXv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917pSQD/foZU/9nJt8f8ArLyfv3Xum2nxNdU0M+SRaeGgppVgeqra+gx0UkxKeSGkNfLEah4lkjeeOnDtGjozhVdSfde65DC5ORI5KakfIRzLrikxTxZZXXytCt/4a0pViy8RuA/K3Uahf3XuuRw1XTq0mUanwUas6f7m5Tj55JVhE6xwY+QGqk1qw0tHAyk3GoEH37r3WBxhaI3q8mMmzRRyR0e3z5mYTRNpNTk6xFp4Cj6dcYEsvBVokuG9+691hlzdJD99T43DBaWrx+Uxy1dfksi+WKZOlekE0ox8sFH+yr64ojSv+4qu0jAKq+690lSqxISdEUaKSSSqIijkk/QAD37r3TzT7fzFQkMzUhoKOZpguRy7ri6ErTwrUVL071emSpKIyExUccshLoAl3W/uvdO1U9LHT0ONoXllpMdFMDVTRRwy5Cuq5vPXZB4E1eMNaOGKIyOViijDMz62PuvdcGH+42nP9cnkuP8AqiovfuvdRPfuvde9+691737r3TnhxfIf+Qrcx/221a737r3TZ7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xus9PTVFXL4aaJpZNLuQCiJHFGNUs880pVI40F2klkZURQWdlUE+/de6VFdkMZh8dNhNvuKyprYfBuHcpjkiatTUwmw2345QrwY5gQJpJEWert+4sMJNN7917pIe/de697917r3v3Xun3dAtubcQ/pncuP/WhJ7917pi9+691737r3WdJ9EE8BhgkE/iYSPH+/A8LEh4JVIIuCyuhujA3KllRl917paU1H2JiI6TakFNuPE/3nam3JRYFoqnH1eU/hmqpx+fp6KYJNoQUsj01UoCsqSeN2XXf3Xupj0+/osbuPFmelixNWtTuHcMsFftsUlSImSoqlOXppPUqyRU5npIZtEb+Fpo0BRvfuvdJPM4rJ7Zr6/CZJIoK4QUsVdArRTPT+Xw5MU7PYlJFKokoWx/Utypufde6j4vE5DKSFqLF5XJ09O8Brf4TRT1kkMMs4gF2iRlRnYiOMyWBchfqbe/de6fM/QYDDirZaHcEiU+ZqKFnTL4Zmo4zNKlLQ5SgmpY62lqR4mST7mljRnUhCSQD7r3TVRZ/b2Oy9NV02Gz01HFIrs1Tl8dFWxhSdQhp6en0MXU6Q/3CMh/cU3AX37r3TPVQbLeiZ8PJvDEVsEEYixeYiwe4cfVy3VfDT5rHvj5qdEGsmSakmLWWy3Y6fde6T+hv6f7yPfuvde0N/T/eR7917pQbhUlNnWH16+w5/H/PS5kf8R7917rngsxRYWKrl/hNTLm5HjGOz1PmBSyYem0EVSUVA1PIoqZTpCV3l1wprEaBm1j3XuvRZ2npdMlDt8UtZAB9nVS5z72GlmW3iqv4f9jDqeMgtEBMoVyGOoJpb3Xumr+J5sxLTtndwSUyABaaXP5eWlAX9IFNJOY+Px6ffuvddR5DLQo8cOUysMchLPFDlK6KIuws7+OOQLqYcM1rsOCSPfuvdc6TKZigZGosnkKXxqERY6uRoVVX1qv20paIgHmzIRyeOTf3Xul/hN2bZWCqm3hiaGeerrqWOVcLt+CFo8TSUTRySyNE0MNCHMhjaTFxvUSANK8Imihef3XumqqwNZSUWSr5VkFPjc6dvSzJR5OWikyCpM7wRZdacUgkUQs3glljmZfWsRVX0+691Apv+AuW/wCoKm/93NJ7917qF7917r3v3Xuve/de6cq3K1VfSYeiqBD4sHQz46hZIgkv2tRlKjMOk8g5e09VMVJ+gNvoPfuvdY46F5MbV5MTQLHSV2OoGp2833Mr5GnqqhJotKGPxxilZZNUitd00qw1lPde6g+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XunzbXObof+DT/AO8Urn37r3Sl2fuXA7eSlWvo6/IU+XrsniN94rTE2NzGxa6mo1pEo1MyH+KUVStXW0EzqopqhKaVHN5U9+691n3LurE5zaeJwsclaa6hXP1dZNkMBiKqsrc5nN3VOSfIx7n+5+6iH8PakR41p9JmSVdJWXyr7r3Qjydh7VymQ7Thw0e6qGl3RW5nem1krqinD47N12w85R72OVlpJHbTV/xGSGmENyY4qVZnVIWD+690GeA3bR4rZ+c27kHrcxTZaXLSptmsxuPlwlDlJMKlDt/d2KzskprKHI0tQ0j1KU1OEq6eKKmmco5MPuvdCRN2jsiip6uPFUW5KkLX4eKKkqKHGYR8piNvdRwdf4WpfN46tnnxdVHWNXVUqUkUwkjeNRMlmjPuvdJ47/wFPuPC5ihWtrUwWw6natElXtfFY2vrq9upIuvqWPJ5DCZFKuSmasjE4f7rzwRE+Il9Cx+691k3Bu7ET/xzC5Bd54jF5PKde1C7ayFFBVPhts7P2fko6faVPWz1dLUPTrW1tLTUtS6LI9MhyE4krGaGX3XusNX2Xi5DtfcdDjmx+7tq7Z29tmkxUVHUzbQrcfh8zkIqjG5eetyk1dVUM+FfHY6enl5mAnVnVVjZ/de6ZabdW3MZvXMZ7DR56lwce2904vamOyCUeYrsfPmNm1W38Vjq2pnmjBpaaoqS3nvJKIkX0NIbj3XunzF782xHS4qly65morsXt7cWIot20mExNPuGipMz17Nsyk2pURw10UeRx1JNMs1NWVkn3MMMX20aiKYLB7r3TFtvdW2tsUOex0GPqMqN1bX3dgMxla6jmp66lFQrVWzoMZQU+Tak0JX0eMra2omjaZA08EOtY1kqPde6cJ937OrKObb1XTbgfAY3cdJBtiuENK2cj64rMwuSz+08zGasRyRRPBT1eKpUl0U88lUBMsco0+691kyXYNAm4t11+267MYmDcm96nfBzL4PHS5NJxT5OlosE+Alr5aRqR4szk4q7z1M61CSRq0QRJo6n3Xukhu2vxuVkbKYfEx4HFV+dztTQ4aGWSaHHQvFRkwxSSkmxa76B6UvoSyKo9+690w4nNZbBTVNThshU42pq6GfGT1FIwjnahqpI5amnSaxZBIY1VyhBK6kJ0O6t7r3Uk5fK5nKYubK5CsyM1PLR0sElZO87Q0yVXkWCLWfSup3bSthqZm+pJPuvdd7q/wCPn3H/ANr7Mf8Auwk9+690w+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XunzLD/INsH+uCn/3jc2R9+690x+/de697917r3v3Xuve/de697917p424AdzbVBJAO69sC4Fz/wAX6ntwSPfuvdM/v3Xuve/de697917r3v3Xuve/de697917obcJHq+P+/5LkeLsTYxAABDF8bkIyGP44a/v3XugS9+691737r3Xvfuvde9+691737r3XvfuvdKPdg05th/1Ztpn/b7QoD7917pOe/de6979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ePI/8qm3/wD0Edq//UXv3Xuvf3jyP/Kpt/8A9BHav/1F7917rw3HkRz9nt4/4HaG1CD/AK4NFY/6x9+690p947kyX8ecGlwDXw20pCzbT2s7M02z6CdyWajNhdiERbJGoWONUjREX3Xukx/ePI/8qm3/AP0Edq//AFF7917rMc3rx2ekZVgzmWbC46P7DF0eMxa4GmglfKoYcS1PHHO89PjAAtKwlT7lpGEjAv7r3T5nN2U9a61sNNQ5HLvWyVKZOv2jtXHSUmPNC+ObHZOixsH2mUnmUxSvV1NPqieFZICslRPp917qd2bV1NevX1RUrShz1zh1VKLGYvFU8afxnIOESkxEEEXBY2YoWtYFiAoHuvdBhY/0P+29+691/9fTb7fBXtrtEH6jsbe4/wDXmqvfuvdB37917pU7IF947XH9c9iv/c1PfuvdJb37r3Xvfuvde9+691737r3Xvfuvde9+690skH/GPao2/wCYzoRf/wAglR7917pG+/de697917r3v3Xuve/de697917r3v3Xulj2ALbwzYP/AB3g/wDcOP37r3SO9+691737r3Xvfuvde9+691737r3Sw2qL0O9/8NnSn/14sd7917pH+/de697917r3v3Xuve/de697917r3v3XulJnP+LVs3/HbtX/AO9blPfuvdJv37r3Xvfuvde9+691737r3XvfuvdSqH/gbR/9RVP/ANbh7917qXnRbN5gf0yuQH/q2/v3XuodHSTZCspKCnaNaiuqqaip2l1eMT1cy08Jk0821ML25/p7917odOvDs7c25tzYPK4HCZXy0eraWTrKzMPI+L22sGNpMLElRWJDKWx0IqY5vtxUM0UgZmEoSP3XuhwjwG3oo6eOLau0EWlD/buu0NtmdDIwcuatqUyuwIBV3kZl/ske/de6e46muhp1o4Kqeno0cyJSU7NT0qSMgjLpTwlUBKqq3C/QAfQe/de6juplgqKSpSOsoqyMw1lDWwR1lDWRNzoqaSpDRvYgMpZbqwDqQygj3XuktD1Rsevhz8USZPbEOVpMfS1j4ytFZj6WFc+mTnq4MbmFlmeY6EiiiFdHFpUIFVmMg917oOZOhqJMrRiPcOVqNuti6yorMk+Gx9DXrmKepENLi6ei++qF0VCN5fPrdolSTXF/mjL7r3TzP0lsh1K0tdvKjZplPnqshgsqsUGl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uUC+/de6YaeaPKvsbc9XXUa7koMlTUu9ElqadK/J0G3HgraHcc1NGF5moFkoKmX6SSRJpABI9+690gPGDcpGYkJJSLlvEhN1j1H66Rxf37r3XvEf8f8Akk+/de694j/j/wAkn37r3XvEf8f+ST7917rpojpb6/Q/j/D37r3TjlYj/EKj6jin+g/rSRn37r3Tf4j/AI/8kn37r3TTns1htrYmXO7jrzjsVFOlKsiQNU1tdXSIZYsZiaFSrVFS6qzhAyoigyTSRRK0g917orO6e9d15cyU22Y4tl4n1Dyw+DIbnrIvqGrczUK0VKbchMdFGyG16iUgP7917oJnzmaqqhshLuHPVdZUHyvkZs/lqisnZmL+R66SZpGJJJuX9+690p6Hs3sbHBVp977hnjWJacRZirj3Ggp4xaOnibcSVTxIouFWF0sOPfuvdCXtfureOSylLjMtJ15DBVSwefN56Cp21T0NLRgzVVpsXVRUzS1CAoiGkZ5JSiRlCxPv3Xuhox/Y6moWPLYvJbbzL07VaYegqf4nWR4qNmGGrIsdR1Elewq/IVgdaXRKmiVZJoikp917pnz/AG7tKgqZ/wCGV2XztfR09PDCYsZJHt/LRGpX7zGZB8xPSV1JPCuqSKuio3cSqYpEmhc2917oL929s1u58FUbfpsHS4akyEtM2Um/iEuUqqynoqhK6mooXeGnSGL7iOOaQ+N5GMcaiRE8qS+690Evv3Xuve/de697917pV54WwWyD/XB5P/eN1ZAe/de6Snv3Xuve/de697917r3v3Xuve/de6V2wBffWzR/XdW3h/t8vD7q/w9P239qOk/kP+BDf6/8Axr2ns/8AcdfsHRtzH/yVp/8ATt/h6g+1XRF1737r3Xvfuvde9+691737r3Shph/v1M0f6bh2x/vONy/v3Xuk97917r3v3Xuve/de697917r3v3Xuve/de6c8uLVif9qzBH/b4GmPv3Xumz37r3Xvfuvde9+691737r3XvfuvdLHYAvu7ED/Gu/8AdbN7917pHe/de697917r3v3XulPkd5bjyu28LtGtyPk27t+eoqsXjY6ShpkhqKkuXnnmpokkndfLN43nd2QSSBSAxHv3Xukx7917r3v3Xup5/wCLRAf+rvkf/dfRe/de6ge/de697917r3v3Xuve/de697917r3v3XulNvUW3huk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RUNBh8/vemzMUtPXSGkye3cNg6elYlklz3ioDXtWiCSlnijn1IGjWRDrjl917pbOM5k2XD11NuDBV5ocXQ5LKY+vjzVBueSmh+2qJ8tm8hWQ1Dfc+WljlpIMrLTpKB4qWMxxxRe690JeJ31tjbVLSUtTtyLr+gzssNdRVe2VyeRwOTko4xjamuqY82KfOxU9PpK0jtBVpKXmaKQyGpd/de6SHZva1DmMBPtLCfc5aiy5xdfU57IxVUFNLTUNT54UweLykEdRHIlXFJTy17FCRHPTxo0Uru/uvdF59+691mpplp6innemp6xIJ4pmpKv7j7SqWKQO1NVfaSQy+OQDS/imR9JOl1azD3Xuu6qZKipqaiKkpqCKeonmioKJq16OhillMkdHSPkpqmoMUSkRxmoqJZCoBkkdrsfde6we/de697917p+g/wCPWyx/7OLbX+84vL+/de6Yffuvde9+691737r3XPxyeIT+N/CZWgE2lvEZlQStCJPpqCsrFb3sQfoffuvdcPfuvde9+691737r3Xvfuvde9+690oNqi+fx4/2qo/8AcST37r3Sf9+691737r3T9tvnJTf9qHdv+8bSrj7917pXU2wIdxbcOe2Xkp8tW4vGLU7n2zV0hizOPnpoy2QrMc1L5I6mjYI88TN43WMeNtU3oPuvdBn7917r3v3Xuve/de6GvZvW+H3Bt3HZaaLceYra6rySSw7fraGmpseuPYpLi6qOWhrZDViLx1xlLxqkU0d4ZF/cb3Xugx3XQYrB5/KY7F5WPKY2jnWODIGSmYMWiV5adp6VmhlaCRmgaaMhJSnkVUDBF917phBBFwbg/Qjke/de679+691737r3Xvfuvde9+691737r3U3Gc5LHj+tdSf8AW9ffuvdOu8Bbdu6R/TcebH+2ycvv3XunDcAttrYR/rh8z/vG6a0e/de6Rvv3Xuve/de697917r3v3Xuve/de697917r3v3XuuTo8TtHIjxuttSOpR1uNQ1K3IuCD7917rj7917r3v3Xuve/de6dMhXQ1dLg4IopY3xeJlx9S8kiOlRM+crcos0CqqlFEdTHGVYsdSs17MFX3Xumv37r3Xvfuvde9+691737r3XvfuvdPO2f+Pq2h/wCHjtH/AN6Sl9+690ze/de697917r3v3Xuve/de697917r3v3Xun+l/49bOH8fx/av+847M+/de6GTrLeG19ybeXpftWu/h206mrmqtib4ZIpajq7ctdI0kszCTTrw9fKwGSpnlSNSTMGhb/KIfde6C/sDr/dXWG68js3eWO/h+ZxxSVWid58dlcdOzLRZrC1rqn3FHUBG8UmhWVleGaOKoimhj917pGe/de697917r3v3Xuve/de6VG8hbPuP+rFsz/wB4jG+/de6S/v3Xuve/de697917oRuwhal67/x65w5/9a+Q9+690HB/4kf737917r//0NODuNSO3u1BY8dkb5H+23PVD37r3Qb2P9D/ALY+/de6Vmw1P99dqcH/AI+DE/j/AKbU9+690k7H+h/2x9+6916x/of9sffuvdesf6H/AGx9+6916x/of9sffuvdesf6H/bH37r3XrH+h/2x9+690tUU/wCjqqNjf++tCPp/1Yqg+/de6RVj/Q/7Y+/de69Y/wBD/tj7917r1j/Q/wC2Pv3XuvWP9D/tj7917r1j/Q/7Y+/de69Y/wBD/tj7917padiKRvPOgA/5+n/H/TFF7917pF2P9D/tj7917r1j/Q/7Y+/de69Y/wBD/tj7917r1j/Q/wC2Pv3XuvWP9D/tj7917pabRUmg31cHjZcxHH5/vHjffuvdIux/of8AbH37r3XrH+h/2x9+6916x/of9sffuvdesf6H/bH37r3XrH+h/wBsffuvdesf6H/bH37r3Snzqn+E7K4PO3Kw/T/s78oP+I9+690mLH+h/wBsffuvdesf6H/bH37r3XrH+h/2x9+6916x/of9sffuvdesf6H/AGx9+691Lx6n7+i4P/Aum/B/47L7917qXngf47muD/xdsj+P+mx/fuvdOW2kkpVzWeDTQnCYioFHJE9LG5yuZtg6ERmoZZBJClRNWxPTgyo1OJF0hSw917r2zcJuXObix8G0xLHm6GeHMU1elT9gMMcbUxzR5qWvJBgWml8biVbuH0CMNIyK3uvdHlFMYY6enasnyUlLS0tLNlKiMR1GVqKanWGpylRGB6XqZA0xUkldWksxGo+6917xf4N7917r3i/wb37r3U2CL/Icp9f83QDn/tYx/T37r3UHxC97Nf8Arbn/AHr37r3Xfi/wb37r3WaB5KaTyxGxKvG6yRxzQzQyromp6mnmVo5YpFJSSKRWR1JVlKkj37r3QA9r9X7YwuCqd2Y2Vdr1rTQS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6XPdg1tHX00kMpaCYrQq0cini4On3XukFnJqjaDxUuXrty7Zwc1LJVYakqarbe+sDFR5KKLMqJsjtrITUTmWKRKmT7ejaSSNw5iFwH917qFuGmnwm6MxQ7mlXcldS0rUjVNNkKyOAVVTikfGTRz1MKyNHR+SMCnEaIdHjRvFZj7r3SQ9+691737r3Xvfuvde9+691737r3Sv3CLbf2Gf64HKf7xu7Ij37r3SQ9+691737r3Xvfuvde9+691737r3Sx68F9/bJH9d27cH+3zEPur/AA9P239qOk5kP+BDe09n/uOv2Do25j/5K0/+nb/D1B9quiLr3v3Xuve/de697917r3v3XulHTC+0c2f6bk2r/vOLzPv3Xuk57917r3v3Xuve/de697917r3v3Xuve/de6dMx/wADU/7VeA/95+l9+6901+/de697917r3v3Xuve/de697917pbddC+8sMB/XIf7xi5z7917pE+/de697917r3v3Xuve/de697917r3v3XunIj/cLTn/q9ZMf+s6h9+6902+/de697917r3v3Xuve/de697917r3v3XulVvkW3puwH/no8z/7sJPfuvdJX37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690pM4P9xmzv8dt1R/9e/Kj37r3Sb9+691737r3Xvfuvde9+691737r3WWCCepmhpqaCapqaiWOCnp6eKSeoqJ5XEcUEEEQLO7sQqooJJIABPv3XulgRQbY21nq2n3FtSfeX3GIpcfQ0cmI3RXUFIMhLT56IwV0clDDIpFPURZKjmnnj8XihQx1M89P7r3QeZTcu483j48RmM9lsliY6g1YxdVWSNjpawtq+9q6JNMc8wP6Jp1d1/ssB7917p92BjN65DIR4nZdZvzG0c1XHPlzsWm3hkYqOPxM0+UyOC2dd5gkKSM7tET41a90Vh7917oU+0s6sNRj9rYzJZrK0+NxtJUV24c9V407hy0+apabLzYvIQYKnoUp6aicRxxUFfA9bTzLKs0qjTTwe690Dvv3Xuve/de6Gqi36w6Zq9nzbT2pVUOM3JJ9rXTR7iTItmd3YLJ0lRuetWmyUdJU19FTwRU+MeekaOmQEiJpGL+/de6Tdb2TkKitrMtRYDbOEzVXi9pYmPM4mmyq1uOg2PVY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MhWYCeSFJ9EbssM7iTxgOF0EN7917qNT9mbzWplqRuaevqpBUGV8rDjdwamqF8ckskObhqUZhe6M6HQbFbED37r3TDms1k9w5GXK5ipSqr546WGSWKkocfD46OlSipo4aHGRQ08SrHGo0wxKt7m1ySfde6m4vRFhs9V/bUM1RDJiIoZqygoq9oEnmlM6wCujkVNelNRUAkLa9rg+6903/wAUqP8AlXxH/oP4H/6m9+6917+KVH/KviP/AEH8D/8AU3v3XuvfxSo/5V8R/wCg/gf/AKm9+691OxmTqDkscPt8RzXUdr7fwBsfuFsRel+oPIPv3XunTeFfNDu3dESU2JCRbizca3wODdiEycq6nkkpyzsfqzuSzG7MSST7917pOV2UrcjHRRVUkXhx1O9LRU9NSUdDTU8MtVJXTaKagjij1vLLI7yFS7E+piALe6903+/de697917r3v3XupsGTyNLSVlBTZCtp6HIBBX0UFXPFSVwjBEYrKaNgkukMwGtTa5t9T7917r0WSyMDF4a+thdqYUbNFVTxsaQU0lGKUsjA+MQzSxaP06HdbaWIPuvdRmllaKKBpJGggaZoIWdjFC1RoE7RRnhS+hNZA50re9h7917rPUV9dV1MlZVVtXU1csXglqqipmmqZIftfsfDJPISxXwAQ6SbaPR+nj37r3XA1lWZqapNVUGookpY6OczymakSgINClNLfVGISAYghGi3pt7917rHLLLOztPJJM0ks88jSu0jPNUsGqZnL3u0hALseWIF7+/de6yvW1kgYPV1Lh5aydw88rB58jGsOQmYE8vOiIszHlwqhrgD37r3WESOI2hDuIXdJWiDHxtJErJHIyfQsqu4U2uAzAfU+/de6d6yfPQ1GLzdbXVxra2kjr8Xk3yDzV321DVy4eCWOpWRpYjFJSyRRqxVlVAVGgqT7r3TZ91UgFRUThWeqkYeWSxkrkWOtci/wBZlRFlP1cKA1wB7917rB7917r3v3Xuve/de697917p82sL7u2YP+z12d/701L7917pj9+691737r3Xvfuvde9+691737r3XvfuvdKKk/49LPf+HFtL/wB1mb9+690nffuvddEBgVYBlYEMpAIIIsQQffuvdG8w01R8o9qR7UytZSzd/wCw8PNJsnNZKqSGv7d2fjIZKus2Xla2oIE2boYw9RQ1crFqiMOa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oP8Anc5H37r3QY2H9B/tvfuvdf/T0+e7I/8AjM3blzz/AKTt+/j/ALOqr9+690GPj/x/3j37r3Sv6/S2+do8/wDMRYj8f1rkHv3Xukh4/wDH/ePfuvde8f8Aj/vHv3XuveP/AB/3j37r3XvH/j/vHv3XuveP/H/ePfuvde8f+P8AvHv3XulxGn/GNavn6b5x4+n/AGb9SffuvdIfx/4/7x7917r3j/x/3j37r3XvH/j/ALx7917r3j/x/wB49+6917x/4/7x7917r3j/AMf949+690uOyY/9/vn+f+Uin/H/AEwxe/de6Q/j/wAf949+6917x/4/7x7917r3j/x/3j37r3XvH/j/ALx7917r3j/x/wB49+690uNnR/7j9/8AP/MDzfj/ALOfF+/de6Q/j/x/3j37r3ThjMjX4eokqcfUeGSajrsfUJJDBVUtXQZKkehrqKtoqpXhnhlikZWjmjZb2a2pVI917qVHn85HipsIMrVyY6bKw5wRTv8AczU2aihNM+Wx1bUap6WpmiIiqpqaSN6iNY0nMixxhfde6l1G7Nx1bySVGUkkaWDNUzf5PSIq0+4a9stlYIURAsaNWO9bEsYAhqWaohEczFz7r3U2Hf8AveCtochFujLJWY7J0WapZvuCxGWoMTBgYchUI11mlejpoaad5gxnQETeTW+r3Xuk9/EsitLkaGKrkp6DLVVJWZDHUipR46ebHiYY5fsKUJCkdMs8qU0KIscSnTGqqqge69075Wozscez8jX5GOraLC082AZkjnnosbiM/WUVFRVnlj/cEU9PMYo5TIohKRghAI1917qNFuTMwT5OeOopVTL009JXUJxWKfDvTTVRrhDT4N4TRQCKcmem8ECeCT9yDxvz7917rHV5/NV9CuNrchJV0aUuHohHURQSuYNvvVtg9c7qZGekWvq4KeVnLpBJ9urCBVjX3XumTx/4/wC8e/de694/8f8AePfuvde8f+P+8e/de6mY+P8A3IUPP/KZTfj/AJvL7917pbUiCl3LvPPNLPAcBHuGsop4KeOVo81X1pwmEaOSUgRyw1FUtZFIl5EMBlQftkr7r3XtodkZ/Y+JyOKwFHt+N8rX09ZW5asxclZlpKekiWODDiWSYQikVg8ugQazI5cyXSHx+690P+3O89oZVIYdy09XtKvbxLNV01NV5vbJfTqqKm1OZcnT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x/3j37r3XvH/AI/7x7917r3j/wAf949+6917x/4/7x7917r3j/x/3j37r3TkU/3CU4v/AMvvJ82/6ttB7917pt8f+P8AvHv3XuveP/H/AHj37r3XvH/j/vHv3XuveP8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+690rN+x23vu4X+m5M1+P+rjJ7917pJ+P/H/ePfuvde8f+P8AvHv3XuveP/H/AHj37r3XvH/j/vHv3XuveP8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+6917x/4/7x7917r3j/x/3j37r3XvH/j/ALx7917r3j/x/wB49+6917x/4/7x7917pTZ6P/cXsrn/AJhmq/H/AGeOW9+690mfH/j/ALx7917r3j/x/wB49+6917x/4/7x7917r3j/AMf949+691khjh80X3LyLT+RPuGiW8qw6h5WjH5YLew/r7917qbkszvyTcu5sdQ1e5ZqrHz5KmqMRtoZKso8Xt6EiioFpsXg1eKnx0dI1MKeURIgQxyEiRtR917pANphlNNIPDPGzxNTSDxTRvCSkkTwPZlZCCGUgEEEEC3v3XuuXv3XulttmWWuwm4cAhTyU81Hu+kiSmlkqKuLHU0uNz8fmiRv+A8EtPVqjFVWKOslLDTZvde6i+P/AB/3j37r3XvH/j/vHv3XuveP/H/ePfuvdK6lT/fhZwX/AOYu2r+P+rNmffuvdJHx/wCP+8e/de694/8AH/ePfuvde8f+P+8e/de694/8f949+691Jo6CoyFVDRUiiSonL6FYiONEhiaoqKiomf0xwwxI808zkJFEjyOVRGYe690+7hqcKBT4bbElVLg6JaeWoyNVFNS1G5c2sLR1OdnoZbNDCnkkgxlNIoeGnLM6pU1NXr917r20tm5zeuXiw+CpjLJeOSvrpVkXG4WgaTxy5XMVaBhDAn9bF5H0wwpLO8cT+690f2ChpMdSUOKxpk/hmIoKHE441GsVD0eNpVpIZ6lWeS0soTzTAOQHZrG1vfuvdZNB/wAP959+6917Qf8AD/effuvdAp3tumo2/hINnUrQR5LdEH3Gb01bLksTgKeaCroKSeijs0RyklpAZHDGngYGNoatXPuvdBz1Z1DQ7wxFZuXcdZl6PFJkFxuIosdBBSzZqWKJ5MlXR5atSZEgpJFhgkRKVzK8rKssTQPf3XujTbI2ptTaVckeCwlNio6mHIxZHIx+TIZ+oo3xlT9xAuVyLPJHG6NZ6emMMMhVDJGzKrD3XuiwVdL/ABrviLFdpRUrwTZClwy0lLWPRYgwTYIRbFRKmgdTFSVLSY+WpkMsLASyzVLxyef37r3RiqzYO0xFS4yTatHt6fCVjVOMr9uwvtnd2BycU6zQ1kG4o1atmnp3RTCMo1UsbDUED+r37r3XDbu2a/b38R++7A3nvtq8xFH3STDDR6G8rvHS1NblZmn1F1E6V0aNGxWSnLLGye690oqqgiy9PHT5PG4jOUePQmKn3DiMLnsbj0qqmOnMiU24oZ6aHyTNDGGCgl2RQbkD37r3RNO56zDbJ35iI+vFwmJljwf8Q3bj8BXTVG263N5KurcdUYTObYpZf4dGjYtYUqaWmCq8dUQyxOFI917oNoXwGYjWogr6LbdWDUNXYnKT5CWjiBqwKeTC5NYH8sXie5gqH+4TQQGqSwY+691j3DNhXw9PQHJYjKZfEy0/8JyWGocus02LrnknyeEzNbkYKWN4qWY/cUbIkzrJJMiSCFyF917pC+/de697917r3v3Xuve/de697917rBVf8Bqj/lhL/wBaz7917pTbtFt574H9N972H/r1Vnv3XumD37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690q92iydff49VYA/wDr47h9+690lPfuvde9+691737r3Xvfuvde9+690cj4zy1Eu0d0U8lRUS01BuekShp5ZpZYKFKvDrNUx0cbkiJZHRXZEAUsNVrkk+690YvQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+691LijP2Fd9P+BeL/AK/8caz37r3UTQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+691340YPHPBTVdNNHLT1VHWQrU0dbSVMRgq6KsppAVkhmjZopY2FmViD9ffuvdBBufAQ7ZwO66DIdlbmwm2dx0mKw+wpKrI9i5b+7f2VFJQZXY242xEFRRHbtVQTPTfalmnl8FPUQ0zrSVdPUe690TUJcA3IuPoRyP8Dz7917pTbPT/AH8eN5v6qn8f9MUnv3XuhC2D1tjM1g6zM7kqKmiGWhr6DaJRpIaWOsgikp23JmWjhlkeghrAlMI6ZWd2SqJsadY6j3Xugpy2FyeCyNViczRzY7I0biOopZwhK6lEkUsU0LNHLDKhWSCeF3iljZZIneNlY+6907bQppZsvURwo8r/AN2d8PojRnbxw7JyM0r6VubKiszH8AEnge/de6z03X29qyjir6Ta2dqaaoglqqcwY2okmqaSEMZKumpFBmkiGhh5UjKkiwN+PfuvdJqDHV1VUz0VLRVtVW0z1EdTQ01FU1FbTyUhIq4pqOFWkVoiCJVZQVsdQFvfuvdPlDsneGTmmpqHau5aieniSaoiXBZRWp4pIjPE9R5IhoDorPHrtqAJW4Bt7r3ThjcfV7N3Vh4N6bbmFDNJj63IYHckWSxVDksVWK8dHkpvG0Xlip3Y1MDN5IDLDonini81O/uvdGcr4ahK6sWqmSoqVqZVnqEnjqUqHV7CeKpgLRyI4s0ckbFGUgqSpHv3Xuoug/4f7z7917qNkMjh8Bjps9uOtFDhaSUQPoJauyuQallrKXAYWEK3krKkRMqkjxwreadkiRm9+690Tnd+7czvrKPlM4YYokp3oMXgqJpRhcDiGl8y4nHwSklwW9dTUzapamS8krE6VT3Xuu9s0G355MrVZ6WiVYKfHrS0k+4KXbVXlKievipp1hy2RjNLGKeiWeQS1UyokiwKIakMYh7r3Qpjeuzto01ZRYyCj3vUQ1GIiwKSDOVWEhxm3xLkMH/eKv3DT481rQ19QszQwYiNGFJHFG1Okwli917oEshkMjmMjX5nM19TlcxlqqSuymTrZDLV11ZLYPNM/wCAAAkaKAsaBY0VUVVHuvdQybAm1/8Ab/8AEf8AED37r3Qz7c2xhsTu+gpto76kz+TXOYpkq8DisBNT7miesVDiX2Bk8g9TXJNCXhkNV5IgzaGhNyV917po3m9NPvPeD0hiSBt0Z94YIauWvSnhfLTNDAKyc+SUKtlEsnqe2puSffuvdJzx/wCP+8e/de694/8AH/ePfuvde8f+P+8e/de694/8f949+6917x/4/wC8e/de694/8f8AePfuvde8f+P+8e/de66ZLAm/0BP0/oPfuvdCVldw0mGyNZiqTaGz5aXHTvSU0lfiZq2ueGE6Y3rKxplMspHLvpFzewVbKPde6b/75p/zxuxP/PBL/wDVHv3Xuvf3zT/njdif+eCX/wCqPfuvde/vmn/PG7E/88Ev/wBUe/de6UWb3jEmM2bbZ+zXLbZqnb7jEzzxqW3pmLJSRtOBFGBb9tSQW1Pe7ED3Xuk7/fNP+eN2J/54Jf8A6o9+6917++af88bsT/zwS/8A1R7917r3980/543Yn/ngl/8Aqj37r3Xv75p/zxuxP/PBL/8AVHv3Xuvf3zT/AJ43Yn/ngl/+qPfuvdSaPsCoxtZSZLHbV2NRZHHVVPX46tj24k0tDkKOUVFDXQxVcskRkhlVJY/JGy6lBKkce/de6D3x/wCP+8e/de694/8AH/ePfuvde8f+P+8e/de6XmxtnLu07ip/Dk3qqTG4FMRUUcFfNQQZvcG/8LtCl/i8WKocjVzxLBkamoWjoaZqqdodMCuwMbe690KGS6Iy/wDAWnx2OkP8JxG+csNyUss2Xpt4S7d34+zocfFQ44zQ0EaNTskVas80M080UWsLqlj917rLluucliNs5vI733Flt37c2lsvIy9bpj5dxVGDijy268fgcdlcdLkUUY/G1ByeNzNKfthBkIJo9Lq7xufde6B/EYrI5HZ+5BjqCuyDQ7n2OkqUFFU1skbVWMz4pw8VKrsNfjfSSOdJ/offuvdQm2VvBXEbbU3OJDUPS+M7ey3k+4QBnjKeK9xfk2tfj6g+/de6TYQEXDXB+hA4Pv3XuveP/H/ePfuvdP8Atbcmf2TuPDbt2tlanDbh2/XJkMTk6QgTU1QqNDIjK90kimieSCogkVo5oXkhlV43dT7r3RjuxtjYvt7Z+U+QfVeOpqSbGFH7264xwc1GyM9VBp333t6jdneTb+RKzTSAEtRskjXeGOrND7r3RUvH/j/vHv3XulbvlL7jfn/mH9i/7zsLFn37r3SS8f8Aj/vHv3XuveP/AB/3j37r3XvH/j/vHv3XuhR7Mj/yXrHn/ml2C/H/AFecj7917oLSlgTf6f4e/de6/9TUB7uQ/wCmjt6w+naG/wAfUfjddWPfuvdBfob+n+8j37r3Sw6+Q/362fccf3lwwP0/NfGPfuvdI/Q39P8AeR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0t/T/eR7917r2hv6f7yPfuvdCHQwQSdaV81bUpj8dS74oZayvlEfPj29Un7DFwSMhra2S4WOkpyzKWV5zBAfMPde6TkGdwWegoMRSdfZmkq8cMxP97tfITZ7MZeheCOWCp3HRZMLAj0fiZ6iqpZaemCSORBCIwZPde6z5Da60OQ+xTcO251nqKGLGzz5nHY5slHWQoZZaeGpmKt9rUyJjqpoJZYjV60pZquGKSoX3Xuk9VUlRQ1NTR1cTU9TSVE1LUwyFQ8NRTyGGaJrG11ZSDY/j37r3WAjTa9hdQwuQLqSQGF/wAGx59+6913pb+n+8j37r3XtDf0/wB5Hv3Xul12Wjf353Bx/wApFN+R/wAqEXv3XukLob+n+8j37r3XtDf0/wB5Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+690udmof4d2Dcf8AMDTf0+v96MV7917pDaG/p/vI9+6917Q39P8AeR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917pVbhRv4PsXj/AJhet/P/AGeuX9+690ldDf0/3ke/de69ob+n+8j37r3XtDf0/wB5Hv3XuvaG/p/vI9+6917Q39P95Hv3XupmORv4hQ8f8plL+R/x3X37r3Sw3WIqWhanjFJJNn90Z/cc0iRSNUfw/F19TtrBj7kkxWWoGaGhAHAa7kq0dvde6Qehv6f7yPfuvde0N/T/AHke/de6MD012XjtuUmQ2nuytnpMJU1C5XBZRoaqup8HlvEYMjRT0tCskwpsighLSpHJ4Z6eI6I4p6qdPde6EHc/e218KGp9p0TbvyLU10ytaKvE7dx9XLG1rY+rhSsrzA2nUriliZwdLzw2Z/de6BWbu3tCaipqL+8NPAaaSST7+j27taiy05kdn01OVpKJJ2VdWlB5BpUACwHv3XumXDVFbkMF2XXV9VU11bVYfE1FVWVtTLV1lXUTbyx7zVFVVVDM8kjklnd2LE8kk+/de6QGg3vbkXAPF7H6i/v3Xujt7Yw3eEG2sVic1u3b20IMZicbQ4fD1mzNu57ctDj0jjFPBlkejVYJI6URqIp6tqpGBiqY4ZVb37r3Sui21W6nbMb/AN87gdXkamGNqabrXHRGWMFKiTGbIKzvPDJqaFzkfFpIVoCVB9+690rpK6ueV5/uplllhjp5ZVnm808UcYj/AMpnJ1yM1tUjOxLsSzEsSffuvdQtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3TjiIyclTfT6VX+8UMvv3XuitfId8vLJten/u+8W38bT1MsG6DQz/5dnM5pkrsKMokzweKngooGipnhhqBL9058sDQOPde6LVob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3U/F5Cvw2SoMvjZjT1+MrKaupJgEcLPSyiZBJG91dGI0yRuCrqSrAqSD7r3Qzyd/wC9BQJHQ0WGxWYRFjTP0EdclZTuq8ZLHwzVDxwVur1LOg0RGzU8MMixyJ7r3QECMqAqqAoAAAsAAOAAB7917ozHS2wNtZrbeVzm5dvQZmWsytRh6D+IVdX9jFQUlHBNUy0tPjpIHSoaaYo8zyllVE8PiJkMnuvdGMpoKmGlp6eqymXzU1OsqHJ5/J1eYzFUstVJVD73JVhaSTx+QxRaj6IljjHCD37r3WYxk8GxB4IP59+690Xj5A7fxr0eN3aqtFn5K+lw2QkSxXMUclFUTUlVVk8+ekFMtOJeS8TxxtYQJf3Xui54XL1+CrRW0RjbXFJS1dJUIJqHI0E4C1WOyFMSBJDKBZlJBBAZSrqrD3XunnNYOknom3LtpJGwjSxxZHGySGeu2vXT/wCbo62QgGSmlIb7OrtZwPHJpmVlPuvdD3NvrO7n33vfG0mycRlJcO+5qpIaDP8A92qyajweRGPWurKnNS1FNPMqtF5YaOnhaaxZI9etm917rNJl8vS0Etbkutd1RCFo1d8HncTuOlhMzmOE10lDS6qdXfQiySAAsQouxUH3XulNU0LxLJNHDkoYYp4qeamzOJr9v5igqZ6Za6KiyeIyao6TeF0dmgaaA3BjnkUqx917px/u/LTRJUZitosTHKEamiE9Pk8jURuhkSpix2PlZ1i40+SVksxAtzce690ld/zy0OzM/ufGxUi5fHZZcpT7sozPBuehyWPp5IdtbjzSrTQ0ktYJagUNG2QqMhoSeoalEFXDTt7917oiCRCNFjRAiIqoiLYKqqNKqoH0AHA9+691y0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de6FDK7hqKXo/auzaakpi+595b7ztVlapfupaKLbU+IhoqPGwOQIZZah45amqRhI8MMdKumJpvJ7r3Qz4TsTa2bzO3c7lJMXt2lx9dsDbmy9v0G4ExUnWezepoZNzbm7NzFLtqkpQ2cyFU9T/Blo3o5J56mrAWe0Bf3XugGzlfubunsHXj8Znctlcq842xtuuyK7hr9vbdxlL5fFJWxQ01PFHTU8RqsnWR01PC0xmncBnufde6WsO0svjcJmjnN0bP3jhI0p1weU27u6HcmN23lXkpZa/K125ZjD/CKYU2iklx1XGwrp5YfBB54oapPde6ReQxslA9OyVFLX0VdTLXYvKULTNQ5SgkleBKyk+6SKZV8kckbxzRRyxujxyRo6so917qBob+n+8j37r3Sj2cp/vftPj/AJifb/8AT85eEe/de6i7jRv7w53j/l85T8j/AJXn9+690zaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+690t8Srf3C3nx/y+9l/0/455T37r3SI0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917pU7c3nuzaMOUp9t5mpxMOaSjXJJAlLJ9wcfK8tDMrVCOYpYvJKiTRFZAkssYbRLIre690I0XfHYkxpKcZTD4ORxTU1ZuGh21jJclGBMhfKxxOjxw1CBdWrHxU7fXQVLE+/de6VkUXTfV2+8HlqXcM/ZOHGDrp5THFitx/wAN3xQZBRjN0VGDqBRUUlPUUpqEpsVWVM89G8xmmllaOLV7r3Q57H7gwW+avODD4/dWK3LTTUs9BNVYE7jxlZBLkBQxVVbl8WGbGSzaorU1bKIVmkEcNfK2iCX3XulNVCsqiclUw5GEV09WVGXo63HZLVTVT0soq8fko4amI6luvmhQspVgLEe/de6iaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XupuPjP3J+n/ALLf+6if37r3ULQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+691xZDpb6fpP+9e/de6SHe0s1D1z2dUxhdMuBx2Gma/qSHclfj8A0kY/LD7kAXuB9SLD37r3Rb+qtl43MbS2pkYdjbt32Mjl+5F7Dfa20DvmTZU22MdgIOr81k9uHxR5ehpXy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qii/vDmNzZCn2nDFkjXLBgDLW4ytzmQalralHlrqUUoipqzW0ZLzgBzC6+690sM1tikz38Gq5MpUJgqCt8m6NpVmXq/4RulaGjmqdu0c22qPHiOuWTIfbz5IV+XFKkNLHoo5Zp5Cfde6bd0bV2rvGBP704ClydVTKyU+UpnbEZiGjXFT42CgXI48Kzw05khqKOGYPFDJBGojNO08E3uvdBT2Z8e67PbpzOQ66qWyORyeTlmbaWWq4Y8nXZSsqWapjwGSaKClbW7L46WpeJr3WKSQtHCvuvdE+dGjZkdWR0Yo6MCrKymzKynkEHgj37r3XH37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdKfP8A/Fq2R/jter/97TLj37r3SY9+691737r3Xvfuvde9+691737r3XvfuvdOWJzGUwVamRw9fU42ujjliSqpJDFMsU66Joww/suvpYfQgkHgke/de6cMZktsx1hm3DsTb2cpHSfyUuN+42ZK00tLJBHMtRtU08YIeQSNqgYkqCCrgOPde6wUND15Ttj6evxm7cpRu8VXla6POUGL3DTvHWKXwuLmSlnx0lK9MjB6mfGLUGWUMjRR0/jqPde6EDADoAVW1o8vi+1MC2N3lXmt3XtLcFDT7si2TWU9VHSzVlTXtPQVWQhkelQ/w7EYsLTCpWR655I1HuvdInc2WxeUqaZcRQzwUdDDNTxV+SgxFPn8sk1ZJWpUZ2PbsFLQGeMS+EPBThmVQXkYaFj917qPT7dyNRS4+rY0dGubnqKTbsGRr6THVW5quinip6+m29BWOhqmhaVFfRwXvCheceL37r3TxFBNT7F3HBURS09RT722tTz088bxTQTw4fNxzQzRSAMrowKsrAEEEHn37r3SK9+691737r3XvfuvdKDaV/71bZtcH+8OFsQSCCMlEQQR9D/Q+/de6xbnAXcu41AChc/mlCgABQMlKAABwAPx7917pa9ebw3rTzYvr7A7lqcFh90buw3mekxOHr66hyGRqIcRNkMbVVtNLURGSIQrUwwyrHULDEk6uqAD3Xuj11SxtU1DQqscRnmMUaXKJEZD40Ukk2AsBc+/de6weP8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+690zbnrlw+0d5ZI1tDRNDtHclNTzZBoBBLWZPDT4ykokhnP70s7S+OGJFZixDaSqNb3Xuq+cDkczh81icnt2praTPUOQpKjD1GODPWpkY51+zFNEobyMz2URFWD30FWDEH3XurK8Stcz418tSw4/NSYN5c7j6bx/bY7OS7ckky9DTiJ5FCQzl49KyOqkFVd1AY+691CEfA5/A/H+Hv3Xuu/H/j/vHv3Xus0MlRTlmp6iaBnVkZoZJImZWGllYxkEgjgj+nv3XusRUklmck/UsxJP+xJPv3XukjvGp2jJRZjYu6NzbXwuR3Xs/cK0uFz+58LtvIVlLPhKmoxtSkuZcR0yy1EKGmqKjSpdQyCSwB917qsOB2kghkZWVpIo3ZWRo2VmQMVaNuVI/IPI9+691l9+691737r3Xvfuvde9+691737r3XvfuvdR6v8A4C1P/UPN/wBaz7917pUbw43tvwf03/vr/wB62s9+690n/fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3St3eLR9dX/wCfSbe/97Tcfv3Xukl7917r3v3Xuve/de6FvrHqPcG/MhtrLZDB5iPrLIZZocxuigr8LQPNjqGeWmrkxC19QlU6NUwmhmraWlmFOTK6CWWAwn3Xuj74bAbe240cm2Ntbd2yYVjFM2GwtBT1tIsVjEYsvIr1plBALVD1LTO13kkd2Zj7r3TmyFm1MxZufU12bk3PqJv9effuvddeP/H/AHj37r3XvH/j/vHv3XuveP8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+6917x/4/7x7917qbDH/uPr+f+UzE34/5s1nv3XuoXj/x/wB49+6917x/4/7x7917r3j/AMf949+6917x/wCP+8e/de694/8AH/ePfuvde8f+P+8e/de694/8f949+6917x/4/wC8e/de6zQST0sgmpqiWnmCsolgd4pArrpddcZBsQSCL8j37r3TfHi8XDnMxueHHUke5txQrBnc+fuZsjkkFvKzNUyvHA89h95JSxxPVEaqlpWJJ917pObkwuVyGQgkoaOpr448dSwoKULVOHDSTSwQU0LNLdWdi6iP9Zc2sbn3XukM8DxO8cqvFJGzJJHJG0ckbodLpJG9irA8EEXB+vv3XunDFx/vVvP/AC4d0fj/ALNqr9+6902+P/H/AHj37r3XvH/j/vHv3XuveP8A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j37r3XtA/wAf949+6917QP8AH/ePfuvde0D/AB/3j37r3Sx3mgMfW9yf+ZQbcP8At97bk9+690Zf44Y7q/cu0Nwbdye0tq5bfWOycuazku6dvYncNbl9qSVEEOGrtuT5uKoFJS0E7CkyVJSLEWkkhqJ2nSpWOn917o2vklWnjoojHSUEKrHT42gp4MdjKaGM/tU9LjKBYqeKOMHTHHHEqovpUBePfuvdYPEP8P8Akke/de694h/h/wAkj37r3XvEP8P+SR7917r3iH+H/JI9+6917xD/AA/5JHv3XuveIf4f8kj37r3XvEP8P+SR7917r3iH+H/JI9+6917xD/D/AJJHv3XuveIf4f8AJI9+691OhiH8NyH04rcR+B+Ya337r3UHxD/D/kke/de694h/h/ySPfuvde8Q/wAP+SR7917r3iH+H/JI9+6917xD/D/kke/de694h/h/ySPfuvde8Q/w/wCSR7917r3iH+H/ACSPfuvde8Q/w/5JHv3XuuaUskuoxQyzaLa/DBJLo1X06vGDa9ja/v3XusdXJT4enNdkrU4tKtFTVNNKZshVpEWjiipfSxjVtJlla0a3AZrsqt7r3QQ1NRWVspnrqyprZ2veaqleZgCb6IwxsiA/pjQBV+iqBx7917qTjI/3q3n/AJcG6vx/2a9Z7917pu8f+P8AvHv3XuveP/H/AHj37r3XvH/j/vHv3XuveP8Ax/3j37r3XvH/AI/7x7917qNlslgds4dNxbnzb4PEnMU2DjrIcLmc4yZSqpZa+kiqIMLFK8KyRwTmKRwA5jdVuVPv3Xui391722LvePbE23JqzObjx82Ypszuuq2/WbbmqdvokEeAwdTHXnzV7xzirqYauaMPDFIINTaikXuvdAToH+P+8e/de69oH+P+8e/de69oH+P+8e/de69oH+P+8e/de69oH+P+8e/de6cMOg/jeBtf/i/4L+n/ADt4ffuvdOW8kH9+ewfrx2L2CPx+N51w9+690ndA/wAf949+6917QP8AH/ePfuvde0D/AB/3j37r3XtA/wAf949+6917QP8AH/ePfuvde0D/AB/3j37r3XtA/wAf949+691xeGORGjkUSRupV0cKyOrCzKysLEH8g+/de6Xuz9xZ2PcmNiqMrNmKSskaKpwu7KwZ3bWYmpaNp8Jj8vidwvJTSwtWQ0cej9uRlVYoZomKOvuvdKnsPsneOP7EfNBanaeQ2TUYcLhHyOeTH1FTgKk5qGtz9G0sLsKuKWOCaOIR3okghu7K00nuvdDJuqlqqbNVNLWLk6GVDTZCTbuZy38Zyuz62vhXIT7XydVHaP7vHySGF2jRbgK5VHZkX3Xummiq67HVX31BW1NHWcaqmnleOZ7EMBKwPrAIB0vcXANrge/de6eq7LZSTHbVaSrDMMJlbFqShJBPYOdJK2j4ubsQONRZramYn3XukvVUeMrfKajBbfvOqpL9rikxYIVAl4Uw7U6wmyj/AIDrHzc/Um/uvdONVX11W9G7VCwDGKy4inoYKfHUOHVqp64riqCgWOGnvM7SsYkBZyXcsxJ9+691hq8dvGSrrq3Z28qWKjqa2lzFHtV80+FqIsnNE8+R+zxGT04xXppVkEPgqdUqNGIIxI5p4/de6BOf+M4rMSy1b5jGbhoK95aiSratos5RZaCfXLJUvUaamKqSUFmZyJA4JNm9+690MGHzNdu/DVmUyc9TX5/CVVNBnMpUNLUVOVx2WdxicpkaiRmZ6iGdJKOedra1ekDXl1vJ7r3WTx/4/wC8e/de694/8f8AePfuvde8f+P+8e/de694/wDH/ePfuvdZ6aaqopTPRVdRRzFSjS0s0tPI8Z+sbtEw1L/tLXH+Hv3Xus9dVLl0ijz2OxW4EhAWOXJ0kkWRiiWN444Y85iJKWu8UZdpI6eSpeAOS3iJZr+690x1+zdo5aiDUEjbTzv30cUcTnJ5Pas1BIh8k9XO/wB1kKSWOQqB41q1eO5KxMl5fde6TWR2zltt7W3FRZam8LS53rvI0lRBNDV0OQxuVwW4KnG5LH19MWimgnRX0PGxs6SRtplikRPde6DvQP8AH/ePfuvde0D/AB/3j37r3XtA/wAf949+690pWzFBPtNNv1mMmbIY7I5DIYHMUVZR0UcBy8VLDkqbPUL0csleg+ziakMdXTNEWlDtMjRrF7r3Stq+xIMhk1ydXgpY2iHYVJTU2Ny0NFTUWG3p1zB1zi8bSpNRT+rFUtLAI5pdYmi1xGON3E6e691C3Jvag3DSTY8bajw9FVUMMdSmMybvUxZGg2diNv4mpxmQykFTPBTQ1uNqa2Wjd5RNDVfbvJ56Wlrovde6zHf6QZfI5HE4uqxFNnN+7P39mqGiylLCZK3alZLlI8Zip6ahijpaYVVTUSUStBKadfArmoaAO3uvdJrN5Wq3XWbeiipa6Srotvbd2pBSiqnyktbV4xDjqZsdEYxJGs6mFY6NTJpk1eNtDpFH7r3SenpZaaeemqYpqeppppaepp50aKenqIJDFPBPFIAyOjgq6sAQQQRce/de6xaB/j/vHv3Xuha7UjAo+qL356l2+R9Pp/Hcp7917oJdA/x9+691/9DUa77U/wCnTunj/mrPY39PxvCsHv3Xukjt7HVNLSZfeFbt58rtjb2LzUdXWV0NamAjz9fhZsdtaiqq6DRE9R/EaijnioWnRpwhX1LqB917qZ1duuvruyuuaR8LtGmQbqw0DT0GEqoqqZTXeXzTPWVk8YlDEaJIo002WwuLn3Xugox+8NzVWLEhy70RzVDRPk1wdBidsJWKY0n8E67Zp6MPFqAPje6ki5BNyfde6a0RI0WONFjjRQiIihURFFlVVXgADgAe/de65e/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6gZX/i15L/qArP8A3Hb37r3QpdugDtTflv8AnbY//wB5qg9+690Hnv3Xuve/de697917r3v3Xuve/de697917pVbB57E60B+h7O63/8Ae4oPfuvdHn+RsY/2YLuIcgf3to7f+gljPfuvdA3oH+P+8e/de66aJGFmGoXBsQCLg3B5/p7917rNlcrXS4uqSteny8dPQ1HgiztHS5lIPHHJJEaeSvV5Yihd9DwyoyhnVWCuwPuvdHCl2ht/b+T3B/dWjm2PX1cdbhmzmynosRlEoElZYqb7argqscwDKrtK1B59Sho543s4917pfy5mOJMdH9qarCVlFVxVmKm8ELzRLlp/Gfu4lZzLA6K8FS5Z7gs3qdyfde6R0kOtKmGGtzOLFRFLTxZXA18GL3JjElOn7/CZZ4Z0pa6NbmnqhAxie0iAOqke69034fB4jbWJptvbfpJ6TAY1qhcNj6uskrziaSqr58pUUdLUS2cpJU1M876y3qeyaECovuvdT/Gf9SP949+6917xn/Uj/ePfuvde8Z/1I/3j37r3XvGf9SP949+6917xn/Uj/ePfuvde8Z/1I/3j37r3XvGf9SP949+6917xn/Uj/ePfuvde8Z/1I/3j37r3XvGf9SP949+6905Usf8AuNzV1t+zjbWt9f4rF9ffuvdNvjP+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YpYcrtjPY+kNL4GknkrshTJVJBKrhY0iUSIxJJmVQCfde6wz5bbW3qinFLDT73yVOz1Mss0uSoNlxSaJYabHz0Yipslkwp8NTK8VTQxggQBqlDIy+690ptp793nm9w5TDU1e52lm6askyHVyRCt29mtv0udj3FHsbbWIK6qecVAWppq2jaOth8MlYs01THom917p1MW28d1JU56pl3EYMj3Ph9uzYenx0E5pabEbPy+V+1TddUaWlnrHSYpU+GlZ6TxxyT0gWtpvfuvdAnlctPlZKYGM0lBQU60uNxq1DVKUqMA1XUzTlIxLVVUg8tVOIYwxCokccMUUUfuvdNXv3Xuve/de6X2xezt5dbDNrtKqxUUO4lxYy9JmMNTZikqZMKag4qpjDtHNFLAKyqVDHMqMJW8iOVjKe691YJ1P2BUdj7No93PgZds5SmzOSwtYaBcgu38hX4wpUjLbSrshNPUGFUmjgqopJnanqkkRZHUro917pQbj2btHeS1f96dt43I1dbT1EMmepoYsdueGomgEEGTXOUQSWpnpwqGBch9xD6QjxOl19+690TDsPpDdWxoajKQBd17RijjebcmLpJIxjkmqBRrHufDM80uOYyPEokeSWkdpY44auaXWie690arqSXfdZsaLK78y2QydRnZaCTbsGYWObLRbbxUM0VPl6yvlvUSDISTuITUnyvDTxzEvBJTMfde6ETxn/Uj/AHj37r3XvGf9SP8AePfuvdRq7GY3L46vw2axsGUxGVp1pq+imLRF0jnSqhmpqqArLBNFLGjxyxMCCNLao2dG917omHb3TEXXtDQbkwubGR2zlMmmGgosxLSU+6KHJmhlrjG8NOI46+m8cEhavpIo1jfTFUQU5lpjUe690MnRnUO0f7v7f3huGjrs5ldzYjd7jF1stRjcHQ4hqfI7d+1kpadI6mpepignlNVHWIgjmiESpLC0r+690MWKwG38GkS4LbG2cM0VNJRrV47AYmHKSUkx1SU1XnGiauqEP9Kmpk/3v37r3QXdsbQ3I38V7O2Nuuu2tnsXtmRd20WKrKrb02cweBpG/wAto6/A+M1E60l4qilq7eWOMFJZHfw+/de6XexdxRbz2Ttzcf31HX5aajbH7qWlpY6A0e5aCZopkmoUsqmppftq7yQIsDPNIkKoImij917pUeM/6kf7x7917r3jP+pH+8e/de694z/qR/vHv3XugZ76wXX9fsGTNb+O5KI7drRFtfL7OxtHks3DuDPQPBR4bI09e0VM+JrJIEas+4qoDEYlkppDUWgqPde6rjW9hqsGsNQUkgG3Nibcf7D37r3Xfv3Xuve/de697917r3v3Xuo1Z/wDq/8AqGn/AOtR9+690rN6cb67BH9Ow9/f+9jW+/de6Tnv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917pZb0AEfWtv+fPbc/wDe43KPfuvdc+s8hkMX2b1tXYqonpa7+/20cd5acnVLj87noMDmqGZBw8NVRVNRTTxuCrxuwI9+691ac8Wl3XTbS7rY2uNLEW59+691x8Z/1I/3j37r3XvGf9SP949+6917xn/Uj/ePfuvde8Z/1I/3j37r3XvGf9SP949+6917xn/Uj/ePfuvde8Z/1I/3j37r3XvGf9SP949+6917xn/Uj/ePfuvde8Z/1I/3j37r3U6GP/cbkPSP+BuH/p/xwrffuvdQfGf9SP8AePfuvde8Z/1I/wB49+6917xn/Uj/AHj37r3XvGf9SP8AePfuvde8Z/1I/wB49+691keMijnnpaSGsq6OOqrKqnrKxqKkOOp4PM0kcsCXDqFkZ/JPECAoQlzpPuvdIk7yT1MuDpVbSfGhr6x6dHt6C6H9x1BsdPmF/oT7917rkm8qcqPPgVaVV+tJlp6anlkJuWmhqoal9P8AtMU0dgLAg+oe691Gh3lVCRzWYrE1cJZmSCNK2g8JPARJ6WbWyAf2ZCx+h1e/de6Zq3PZivlMk1fUQoC3hpKGWShoqZGYsI4KanYDj6a5C0jWu7s1z7917pqleSd/JPLLPJpCeSeWSaTQpJVNchJsLmwv7917rHoX+n+8n37r3Tli0BmruP8AmH9135/ptas9+69026F/p/vJ9+6917Qv9P8AeT7917r2hf6f7yffuvde0L/T/eT7917r2lf6f7yffuvdM+/avAbX2VuhN8aP4fuDCT4Sk2vFV458/nsvXU5qNvT0uLkn81MMXWLS5SWvlgP2ojUqplliR/de6r/UMFUMQWCgMQLAtbkgH37r3XL37r3Xvfuvde9+691737r3XvfuvdOWF5zmAH/ZwYL/AN20Pv3XunHenG++wx/38fsL/wB7Su9+690nPfuv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XbNd152J2LhshuXb2UoarKY3rbcGQxm5PBhsMK7KJjqeCkpjFmarGwfdVFUkENEoiq3pfde6Ru9OsshtvH4/PYmn3Tk9uVOKwtTkMlm9n1215sRlsrRNXnF1NNNNUpIqweGoapgmeKP7iOnlZagMh917pMYDP09JTz4POwTZDbFfMJ6mmgKffYqu8YhXO4JpSqrUogCyxMwjqYwIpbFYpYfde6h5/AVGCngvNDX4zIQmrw2apBJ9hl6HWY/PTGUBldGBjngkAkhkDRyKrKR7917ph9+690v8MB/o432fyNwbDt/sYsxf37r3SA9+691737r3Xvfuvde9+691737r3R1/jd1vuGipMjujN4vdG16DdO3n/uLvLY2789t/sPJVMOWp2kpsZBtnNU7Q4T9maWtqK3FsZ54IoKWb9qp8XuvdD7v+FKzIpSYztAdX5PF4+hrc3TZLB4nP1uYE1R46PLtX72poPJVVLSpFNBRZeTxsYmqaZGeN5Pde6d9s7dpotrw4qtyVVkMth89uKDLbvrNvZGkymYzOVyMWbki31kK6V2qq+OCtgWnq4XeNcalFGqrHFf37r3UeroBSTvB54akISPPTrUiCQglW8RqUjYgEfqC2P4JHPv3Xuo3hX/fX/wCK+/de694V/wB9f/ivv3XuveFf99f/AIr7917qdjoR93/X/Isx/X/nS1HP19+691B8K/76/wDxX37r3XvCv++v/wAV9+6917wr/vr/APFffuvde8K/76//ABX37r3XvCv++v8A8V9+6917wr/vr/8AFffuvde8K/76/wDxX37r3XvCv++v/wAV9+6917wr/vr/APFffuvde8K/76//ABX37r3XCp+2oMfWZfIVdLjMTjhE1flsjUx0GNofPIIaZaiuqGVFeWQiOGPVrkchI1ZyAfde6LJuvvF9ndhbxp8FV4HsLZ+XfCZClpoZczS0O3c5/DKGLcUW28k4T0zSQVKzeOOajkkl+4iUvqZ/de6iV3yjYQrHhuvaCGQVlDUmfN5+TLxvTx0zR5GgkpqOhopCkjvqjdKlCrRxuwdPJBJ7r3SP7Y7P3wm6t14jGZuq21g85VUOer9v7brcrR4lclncDR1ua+zeuqamrip6ucvPPSLVeB5GZjF9Le690B2Vy+WzuQqcvnMpks3lq1kesymYr6vJ5KseOJYY3qq+ueSWQqiq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f6f7yffuvde0L/T/AHk+/de69oX+n+8n37r3XtC/0/3k+/de69oX+n+8n37r3Sy3oo8fWnH16c22fz+d87mHv3XusfXcersnrII5iP8ApM67PlFj41TedC7yHWdIAUEkkgAckgD37r3VsdRCPPPdtR883q/1X7h9XB/Pv3XusXhX/fX/AOK+/de694V/31/+K+/de694V/31/wDivv3XuveFf99f/ivv3XuveFf99f8A4r7917r3hX/fX/4r7917r3hX/fX/AOK+/de694V/31/+K+/de694V/31/wDivv3XuveFf99f/ivv3Xup0MK/w3If9RuH55+vgrvxf37r3UHwr/vr/wDFffuvde8K/wC+v/xX37r3XvCv++v/AMV9+6917wr/AL6//Fffuvde8K/76/8AxX37r3SS3qxioMLEs9TC1RPmlMCSutLW00X2hMk6CwMkcjFQpLekg2H5917oOvF/tP8AvP8Axv37r3XvF/tP+8/8b9+6917xf7T/ALz/AMb9+6917xf7T/vP/G/fuvde8X+0/wC8/wDG/fuvde8X+0/7z/xv37r3Tnio7TVxt/zD26/z/Ta1YffuvdNni/2n/ef+N+/de694v9p/3n/jfv3XuveL/af95/437917rtIGkdY443lldgiRRBpJZHP0SONLsxP4AF/fuvdd5OCkw81VQ53Mba2/X0o01eNz+6dvYfJUjudCRVmNr6pJ4ZCSB4pY1cH6qPfuvdFA79xFDQdx7zraCfblZS7gTbGegrNtZfDZulmau2jQR5I11Zg5Zo0rGr46uSrhlcS+RjI4PkDN7r3QRaF/p/vJ9+6917Qv9P8AeT7917r2hf6f7yffuvde0L/T/eT7917r2hf6f7yffuvde0L/AE/3k+/de6ccKq/xzb/H/MQ4H8n/AJ3EPv3XunLeqL/fzsTj/mpPYg+p/G9q8D37r3Sc0L/T/eT7917r2hf6f7yffuvde0L/AE/3k+/de69oX+n+8n37r3XtC/0/3k+/de64v40XU3AuoH1JLMwVEUDkliQFA5JIA59+690aSg6m2/s7C7SqN87Jk3Hnt0bXp91SLl9y7vwONxByORnhp8DDg9tTYisSqoI4Up8p99USj7zzxRKiRe/de6c6b+HY2OFMFtbY23ZYVZBXYzZmCq8pOrG+qsye4oq+aV7enyM2oj6nn37r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7yffuvde0L/T/eT7917r2hf6f7yffuvde0L/AE/3k+/de69oX+n+8n37r3XtC/0/3k+/de69oX+n+8n37r3U+FB/DMgbcCuw9+f+bFd7917qBoX+n+8n37r3XtC/0/3k+/de69oX+n+8n37r3XtC/wBP95Pv3XuvaF/p/vJ9+691wqTF/DslDUQiqo2oK+omo2RH8stPj5WgkiZwTG6NZvLGVYAXubW9+690CAQWHJ/2/v3Xuu9A/wAf949+6917QP8AH/ePfuvde0D/AB/3j37r3XtA/wAf949+6917QP8AH/ePfuvdOWLQeWv/AD/v3d2/W30/urW+/de6bdA/x/3j37r3XtA/x/3j37r3XRQWNrk/0uPfuvdAr35uXs/aeYr6Xb2SrcR1juPDbfwmK3Bt7HYSkhrqiTaFNBvDCwbrx6HL0z1dbBkZZaeulpaqaIzIsRpFI9+690T9KeCPV44Yk1MztojRdTubs7WHJJ5JP19+691kVVQaUVVW5NlAUXPJNh7917rl7917r3v3Xuve/de697917r3v3Xuve/de6csL/wAX3b3/AIcWA/8AdxB7917py3sLb+7GH9Oyuxh/tt71/v3Xuk37917r3v3Xuve/de697917r3v3Xulj13uWi2bv/Zm7MlBWVOO29uGhyWQix0NNU5JaNNUM9VjKeskhikqqdX+5pUaaK8saWmia0qe690ZEYqeXFjcGPy0e9dt+WOiG+8RLW1+Pq5o7U9Omd++H3uMrXGjVQZeOGoVjps/DH3XuoWgf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917pzrUH8M2n9f+LBlf6f8APxc/7917ps0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvdOugf3Xqvr/x+u1xf/D+624T7917pq0D/H/ePfuvde0D/H/ePfuvde0D/H/ePfuvdOuPioK2iy23MsMtUYzcC4yCHH4uSmjds5BmqeegyCSVjiGKYRiekSdo5AqVEmpGW49+690GOU6z3TJk699n7R33uvab7jzuA25unH7J3BWY3OvhZZGkjp67H08tO1QIE80kCya1U6mRQbe/de6SNdt3cGKgpKrL7cz+Ggr4aqpoZMzgspiBWU1ExSsqaUZKGIyRxEESOoKrbkj37r3TONDAFdLA/QixB/1iPfuvdd2H9B/th7917r1h/Qf7Ye/de6ON8yEAqvi1wLH4VdCH8fmTM+/de6BrttVFF1Dx9entun/1v5X37r3QPWH9B/tvfuvdf//T1MfkHH/xnvu/m3/GX+y+Lf8AZ6Vvv3Xugh8f+P8AvHv3XuhN6lwGbyG/tk1lBh8pXUcW8MBBPW01BUy4+llavSQCtyAXwQKFBZnmkVQBckD37r3SZwe3sNnNw4bbEe/Npw5TP1WLoMe8EO7M9io63Jqn7Vdm9q4uvpI0p2e1VOkzxoFdwzIhb37r3TTi8nlMLUJU4rI1uOmWogqy+OrqmjZ6imZXgm+4x8iMWQquiRHuLAqwsD7917oy+35q3f8ADWzdN/f7T7H8ecpoNs4cJJjsPhszBi8HT10eKpk0ZelKfd4ytydRRT5GFqymrK5MvUqtdD7r3QBVXTFXiJnosvubHw1NMIKeSbCYbI7q29UZSTxK+3sTuDDTNLLkIy76oavH0sbCJ2imkR4Gm917oLcri5MRlMjiamSmmnxlbU0Ms1HOtRSyvTymMyQyr+GtfSQGU3VwrqwHuvdQNC/0/wB5Pv3XuvaF/p/vJ9+6917Qv9P95Pv3XuvaF/p/vJ9+6917Qv8AT/eT7917pRbP2nld97u2tsbbzYxdxbzz+L2vt9MzkDisbUZzNVK0WKoqnIlJRF552SGNihu7Kv59+6906UnXmbrcn2Nh4spsuOt6qwO8dx7req3SlPQVeN2Fl4sFuSPZ9c0BXK1IqZkWjpolRqlSXj4B9+690mcVtPOb3q5dsbaooqzL12Iz9b/leRx2HxuOxODwdRm9wZ7N5rMSwUdDQY+ip56usq6qZI440PJcqre690Mnf2yMtg9+7q3Q9dtTPbaze6ocPj89s/dWN3NjzlaHZmMyE9DWR0vjqqV2gkWaA1dNGs66mhaRUYj3XugL0L/T/eT7917r2hf6f7yffuvde0L/AE/3k+/de69oX+n+8n37r3XtC/0/3k+/de69oX+n+8n37r3Ss69Vf9JPV3H/ADVTrH8n/nvMd7917o/HyXRR8jO6Rb6bwoh/652L9+690Cehf6f7yffuvde0L/T/AHk+/de69oX+n+8n37r3TvS5/cNBTx0dBuHO0NHCZGho6TK1tPSwmZ/JMYYI3Crrb1NpAueTz7917p9rNy7nTCbQmTc24UmqsZuJ6qZcxXLJUyQb+y1HA87B/WyQxxxKWuQiKo4FvfuvdDX1bm585tephr5shXZTDZurp6jIV7S1P3VBk4I8hjolrpT6ngkFWrxMSyo8X0TQB7r3QieM/wCpH+8e/de694z/AKkf7x7917r3jP8AqR/vHv3XuveM/wCpH+8e/de694z/AKkf7x7917r3jP8AqR/vHv3XuveM/wCpH+8e/de65LC7sFSMux+iqupj+eAPfuvdRsrUUGAp6ar3Fk8NtqjrZVgo6zc2YxW3KSrmZWZYqWqzc0EcjEI1lRieD7917oPc33F1Jg4UlXfFJuOSWlrKiOh2rhNy1NZ5KVA0VJK+4KLG00ck5OiMvUBL3LMoF/fuvdAPun5MZeoIpdkYGiwMCGoWTLZtafcGXrDeSKlngopYkoqNNDRyPTvHVsJUFqloi0be690pOuOv+4O2sJP2DuHtDc2D2pja18hi3xFbU19dPkZdwx4/InE7fwtVSUeFiimiCrLL4CjeA0tJNCWaP3XujQxQSCkxePRJ6uSgoqSg++qiavM5meGFIZcnmawAGorKlwZppAiqXdgiImlF917qIk9NNl81gYC8+U23TY2fcEcKwtTYibMU5rsZi6qfXqNZJTJNUSQRxt4EjYTtHIRGfde6z+M/6kf7x7917r3jP+pH+8e/de694z/qR/vHv3XuveM/6kf7x7917r3jP+pH+8e/de694z/qR/vHv3XuveM/6kf7x7917rJEZIZY5orpJE6yIynSVZDqBBUg+/de6jYLaeJx9PkZ8ckFVUruht9iiytDiXyEWfqsRVYLJZSkzlHDT1FfTx0094cZlmqxTytLWQN59DQ+691l8f8AtI/3j37r3Trg4z/FqTgD01v9P+ddNx7917ppEfA9IPH149+69134z/qR/vHv3XuveM/6kf7x7917r3jP+pH+8e/de694z/qR/vHv3XuveM/6kf7x7917r3jP+pH+8e/de6z08gppoZpIDPFFMkjxIzpNbS0LS07xMp8iK7PGr6o2YDyI4tb3XuuEl5GRQsCpF5VhgpKaGhpV80geV4qCmCojSFVZ7Le/+x9+690/bUyFLt/cWLz2TimG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GKrtxOKuORKhMZJNSyfw/VAakyAGpgVGLe690rsVsHFbXpUyu5MbT7qr5sxm8fiKKeryEWxsliaPE0U9LuJarA1NFk6wSvX/ALUC1VE1LLTvDWxPIz08XuvdKJdibBqNr5XPUmCrJIafclNS5WFcvlBmtrU+4MUHxNNiqx5TQ1VGKuhyDUj1tG1SUkFPNJK9OayT3XumUbe2LjI4sZFhYt0xQqWq9yVVVuLAZTI1TS+VXx1LTVZgpKaJbQLHLSySyfuSs6O0Ip/de6cZcpLUV2Urq2kxmQ/jctdJlqKvoIarH1oyEjyVKtC/rjYM7PDUwSJUQyBZoZo50WQe690oN/4nO7n6c2ZWUlRuNsft6p3ZWY/ZG3cPG2xMbFNvHNS5fK0uDwUMa46aCmhX7jIVAdJII44iySBnk917opvv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917pX0f/Hg7k/8PHY//uk3F7917pIe/de697917r3v3Xuve/de697917r3v3XunvcP/Fyj/wC1JtX/AN5Si9+690ye/de697917r3v3Xuhr6N2btfeu86nbO9YMgtDXbXqsrj2xxytJllqKN6XO0s1DkKanqqSkiqqJZofvslSVFOEmURwyVEtOy+691YljVodrYrB7X2vAYNt7Up8lBtuCeaorKiEZiqevq6/LVFSFatrBNI7RSVKFKckrSxQRWjHuvdGH6+j2hier6Xf+U68xG7dyRds1e0pa3ceQy8NNLRzbPO4qeqpqGNvtqkRyXp5oDE2pfIz/Qj37r3QL7x3tn9/5GkyueTF0yY/GU2GwuGwOMixGB2/hKR3ko8TiaGIsRHHrb1SyO54XUEVET3Xukno/wBp/wCTffuvde0f7T/yb7917r2j/af+Tffuvde0f7T/AMm+/de69o/2n/k337r3XB5aCElKrLYGgnJxqQUeSzeJx1dWzZjINi8XTUFDWTJLPLUTpIkUcSEtocjhT7917oQdqZrZVdV13RXYW5Nj4yLeNQkeIo8puXbNLuXbu9MjRodv5Ohpp6kToZhEnhbxEGURxk+KedX917oqU1FNShPNLTVMcktfBT5HHTR1uJybYvIS4muqMXXU7PHNGtRBLGdLEoylHCuCo917rDpH9T/ySffuvde0j+p/5JPv3XuvaR/U/wDJJ9+690uOuty1u1d1Uk9Pjp89jM9Tz7S3XteKgnyg3VtDcBWlz2EOKhVzUO0X7sUWhgzoEdWheVH917okfy82BUda/JLtTAuipjc3m17B2v44pYoF2pv5TncZRU4luxjoJmqsWrE3YUus2LWHuvdFw9+6912rMrKykqysGVh9VZTdWH+IPv3Xul6ez96VUa024MlBvSiWnoqD7fedBR5zIQYmgrGrabD4jd0yDN42mjd5Wigx+ShhUyOGikjZ42917pTbp2xLiaHZ+dSgq6TA7/2li937fjyMkNRUCCctQ5ekeREj8qUuRgqqenqfCgqIkjnVV1lE917qHFuzdEJcx7kzo10n2DK2Xr3T7PxiEUyxvIVCBAFAAFhwPfuvdcHy9HkQke5dv4bPxKUvVfb/AMDz4VHMmgbm2/8AbVkgZrXSrknjA1aUVmLe/de6aTjNliaGZcdvIhWkaelk3hgDQykEmCNUj28tQqfQSgVWpv7Dx39+69050+RxWM+0O3tr4PGVcMizHI10Mu6spJWy0/2zPSzbparjprOfLTfaQxywyHUkuoLp917qRmFo8W71u+ctnTuXJVSzNgqSihzW6JKeJ1iqcpuypzNdRjHLMAYqTztPVylGlNH9t4ppvde6Ruc3PJk6RsJjKP8Agm2VyMeTON+6/iGRytfTU/2lFkNyZfxQfcvToZTS08UENNTtNM8cPmlkmf3XumXBviMfuDA5bLY6tyFDiMrS19TSYfLvtvMVNIlUtRX0OL3JTxTTY+SqUNG9XBG0iBi6guB7917oSt070xG99qbhyNZjMZtnfVd2dQ7hr8TgHzke3M7t3IYfKNHVUFLkZazxVOLrp5YpoXnSN4quGSCMMkqD3XukJmP+LX1//wCGNk//AH8u8ffuvdMXv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917pZD/mVeR/8TFsn/wB9xuz37r3SN9+690JezOme0uw6WKv2ttSriwlShan3duNl27tNkITTUUmSyeh8gg8iO0eJhqpdF3EZUFh7r3Vnu1No4HYu3cXtTbVDSUmMxlNTCpqKamEU+fzQoIaTL7ozFQUWWprK2SEO003KxiOFFihjjiT3XulBo/2n/k337r3XtH+0/wDJvv3XuvaP9p/5N9+6917R/tP/ACb7917r2j/af+TffuvdSI6iqihenjmnSnkmiqHp1dxA9RT3FPUND+kyR6m0ORdbmxF/fuvdTKrM5jIUq0GTyNblsasbw/wvMTyZfEmnlXRNTPismZadonBIkjaIqwJDA+/de6YaLGYrFQNS4bB4XB0rymolpsHhsbh4KipZQhqaqPHRRiWXSFQSSamCKqAhVAHuvdStH+0/8m+/de6cMUn+Xx8W/wAkzH9n/qx1Pv3Xum4JwPT+B+Pfuvdd6P8Aaf8Ak337r3XtH+0/8m+/de69o/2n/k337r3XtH+0/wDJvv3XuvaP9p/5N9+6917R/tP+H6f6+/de6Jf8m+r+w91bxm3vtva1HuHb2L2Ji/4pXbeSgh3XTx4GWoXINuvGVVUtbmaunjYSQVWKo5RFikpoplX7OWT37r3RJUdJESSNleORVdHQhkdGGpWVhwQRyCPfuvdcvfuvde9+691737r3UWu/4BVn/ULUf9aj7917pY76/wCZgdkf+JL7G/8Ae2r/AH7r3SY9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdLbfItH1d/4hXbJ/wBvv7dPv3Xujl/E7e9fntn57YddjoTD1w+MrsRnojN9xV4ze2YyNTJg8rE7GItSVUMj0c0SqTDIYnVjErn3XujT6P8Aaf8Ak337r3XtH+0/8m+/de69o/2n/k337r3XtH+0/wDJvv3XuvaP9p/5N9+6917R/tP/ACb7917r2j/af+Tffuvde0f7T/yb7917r2j/AGn/AJN9+6917R/tP/Jvv3XuvaP9p/5N9+6904Qr/uLyXH/KfheNP1/yev8AfuvdN+j/AGn/AJN9+6917R/tP/Jvv3XuvaP9p/5N9+6917R/tP8Ayb7917r2j/af+Tffuvde0f7T/wAm+/de69o/2n/k337r3XtH+0/8m+/de6w1VFSV9LPQ18EktLOY3vA6w1NNURX8FXSSurqsiamBDKVdSUYEHj3Xug8y2z66gjesoZDlcdFG8tRLHB9vXUCR21SV+P1uRHzfzQvIgsdZTgH3XuknpH9T/wAkn37r3XtI/qf+ST7917pzxSgTZDk/8e3u/wDsn/nkq4+/de6bNI/qf+ST7917r2kf1P8AySffuvde0j+p/wCST7917rLAwgngn8cU/gnhn8FRCZaefwyiXw1ER/VG9tLr+VJHv3XuiffIHZ2S2/uql3Mctmc1trsWXKZ/E1OezdTl8lRblw609Ju7BVYnihW2P+9o1x0yIw+wnp4fI0kUwHuvdAR7917r3v3Xuve/de697917r3v3Xuve/de697917odejtybd29Sd00edzFPjK/fHV+A2PtCjlo8tVTZvctR3RtbdX2EMuNpp4qdVo8TVO01ZJDFqMaByzce691P763Ht7N4rp7BYjLw1uc65X5G7Z3tiVosrTT4DL535KZ7eOIgkqa2nip6lZ6CsikD0c0yoweOQo66ffuvdF79+691737r3Xvfuvde9+691737r3XvfuvdLnrer3gu8cDg9lbqrNpZLeGawm156+N1qMUYMrk46QVGbwVUGpcjFS+R50pqmJ9RBSPSz39+690Zrc9RBUbky7wYVttxPPEabBS4+HD1FJRwU6UMFVPiqenpYoZKrxGqnSCmjhE0kgiVYwqj3XumT37r3Xvfuvde9+691737r3TtXi2J2ef67ey/+8dk7h9+6900+/de697917r3v3Xuve/de6lVFDkKOkoshW47I0WPyYrDi8jW0FXR4/KrjmjTIviq2pRYqladpYknaB2EbMquQxA9+69065rae7ttUmEyG5do7r23j9zUrVu28juHbeawlBuCkSKOd6jCVuTgiiqlEcsUt4Wb0Oj/AKWUn3XumD37r3Xvfuvde9+691737r3Xvfuvde9+690s8Ljkr9pbi0UEmdylNuHbNTgtqwVNRRVW6sn/AATN0r4ujqaS0xlhpZanIJTwMstT9saeEmWVFb3XumLZ+/8AM71i3A8mRxVHk8ThnTau18Li6GjNVtesxc1HuODH5WvM9TUUeKp1bInFJM9TPLUS5FpGp6CpQ+6900CwAA+gHH+t7917rwIPIII/w59+69137917pzxWZymEqoq3F1ktJUwCv8DgJKkMmSxcuGq6iKCcNGJjTTSRpNp1pcMhVlUj3Xum+KGWeRIYIpqiaRgscUMclRPK7fRUjQM7sf6AEn37r3Xc0U1NJJDUwzU08LFZoKiKSCeJgLlZYZQGU/4MAffuvdKLHU+6Nsbkwc8ArNrZ9ZKfI4TI5KBsf9qlRR/dQZmmmrI2UxrTv9ws6K1ktIlzpPv3Xug035nutcvjZo8BgqqHdkGYohJuejpzhsNuDGJi2hy9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8FQylHdaafKVS0n30qx3bx0ys1RNpBIjRiBx7917o0naDbZ7H6eyW9ti4jb+Pp+se18jtTM1WAx+KpzubaFUBitr7yqqmhgieX7lpqGYWCpaWaTQoVQvuvdFJ8f+P+8e/de694/8f949+6917x/4/wC8e/de694/8f8AePfuvdOMEf8AuJyZv9MhhPx/Wnr/AH7r3XCjrarHrOaGRaWpqIpKY5CFAuSgpKiB6atpaKt/XAtRHI0c7QlWdCULaCyn3XuoCxBQFWyqoCqqqAFAFgAB9APfuvdd+P8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+6917x/4/7x7917r3j/x/3j37r3XvH/j/ALx7917r3j/x/wB49+6917x/4/7x7917pk3dVS4vbrLTiVpM+0mMkrILeDH0Ucmuto6qUNqWesVPGkRTS9P5m1XsB7r3QNeP/H/ePfuvdOuHT9/Ic/XbO8v/AHkK4+/de6avH/j/ALx7917r3j/x/wB49+6917x/4/7x7917r3j/AMf949+690i+2aTHV3T/AGDU5jCU+f8A7qYjE1WAqv4TT1eW2hl9xb1xmBgzVHnNP3GOomaoZK1Q/hqWdKd4y86yJ7r3Vemgf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917p0wKD+8O2+T/wAfNtz/AHnNwD37r3TpvxB/pE7OuTcdp9nD/bb9yI9+690l9A/x/wB49+6917QP8f8AePfuvde0D/H/AHj37r3XtA/x/wB49+6917QP8f8AePfuvde0D/H/AHj37r3XtA/x/wB49+6917QP8f8AePfuvde0D/H/AHj37r3XtA/x/wB49+690bfr2SqxPT+148bUYOCHdmQ35/eap29QUkOYyaUO4qWKg2zv3NlDVy1FHHBDVwUSvFTrRVVITHO7NL7917qZ7917p2rxbEbN/wAdu5k/7fs7cfv3Xumn37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3ThQ5fL4uOrhxeWymMiyEZhro8bkaygWsiK6ClSKR01jSSvq/skr9CQfde6QPbeMqRkcFuuqSphqt5YdKquhqsamNM+Swax4SrzlLoVfuosmscVfNXNdp62StLEldTe690lqD/AI8DdZ/7PHr/AP3nC7m9+690jvfuvde9+691737r3Xvfuvde9+690/YGDdGZlj2ZteDP5eo3TkcZTxbTwEeQrptx5enlcYaBMHQajV1EbyyfbDxMyl20W1H37r3VhGI2vtL4eQUFBSjZvY3zfrqPIZh6fMZvbs/U/wAU8XjsVLl56vPZnKVEOJrd4RQRO4eprBRUEhEhcQQQyZ73XuiNbjouzt6bmyO4d3027c5ujcM/8Vy+e3JDXmprPI8VGMnkcrkgscdMmuCFZpHWCJDGilECAe690jMnja7DZGsxOTpnpMhQSrDU08hVivkhWpp5opIyUlhnhkjqKaeJmjmheOaJ3ikR2917qD7917obO5Rah6W/x6T2yf8A148x7917oEiLi3v3Xuv/0NVP5Ix/85E99i/07p7TH0/pvmvHv3XugX8f+P8AvHv3Xul91Xpi7K2HIxOmPduBdrC50rkYyxAH14/Hv3Xuo9Xitp7bo9vQZ+pq87uPcgqBUYTa25tpY+p2DUvaDEY3fUOeJWGqqVqKTItHJUU0dPTl4Kqenq46mKl917ptyWP2hgKyrkq974TduJoc1V46KLYtZHVZncNLQ1ixLW49a1Gp6GnqotckVbVNIiBTpjqXCwye690wbl7P3ZufMV2VqaiCmpZq96zFYaeno9wx4CNf26VIczuCCatqqlYwPua+plMtRIXkYIrLFH7r3SQy2Zy2eqYqzM5CfI1FPSw0NKZVgihpKOCNYoqajpKRI4YUsql/HGpdhrcs5LH3Xum337r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdNuZ/4s+V/wC1bXf+4re/de6GHu5dPcnZC/W2bxn+87Sxp9+690GHv3Xuve/de697917r3v3Xuve/de697917pY9bf8zR6l/8S71T/wC/Dxvv3XurEPlSuj5Od7L/AE3tQf8AvE4j37r3QDe/de697917r3v3Xuve/de6fa9bbb2Gf64jdf8A783OD37r3TF7917r3v3Xuve/de6WXXmXwe398bczu4YqlsdjKivf7ikiq6ibHVtXhqnHYzKtR4//ACipipamaKeelhDPNGjxiOXV4ZPde6OtLSNSyzUrshamllp2aN1mjYwSGLXHKpIZTa6sPqOffuvdY/H/AI/7x7917r3j/wAf949+6917x/4/7x7917r3j/x/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Hi5M4cHTTYSHAZLdUmYx+7+v8xjP7u4fN0+2srlIazC5aoSb7fIVdLSSUsJepDTRt4DE4k9+691yy3Wm+cANvvnNuTYqHdu0clv7atVV5na4oNw7Mw2G/vHlc7jMlDXvTMafH2rZaF5VrVhZG+2/diD+690x5nbOZ25PjqbPUJxtRl9v4TdeLiNfiMgazbW5KX77AZhXxFRUJHHVw/uxxTMkyjiSNG49+691KyOy9zYfC7U3JlsNPj9vb7jykuzcxUV2G+03DFg65MbmJKdYqlpadaaeSOOQ10cAIYOuqM6/fuvdOW5es99bLyu4cFvDbdRtrM7Tx2Dy+4sdlcxthJMfidy5iHb2CycFRTV0kFbBUV9RDReTHS1AjmZo5vG0Uoj917qBu/rveu0aPcQ3Nt2bG/3frP4DuA0+X2xuNNv5mrhP2mM3E+066vXHyTNaOEVpiEsh8UZeS6j3XuhUyHadfQ1W6dg7+2zt/uXqirz1Ycj1vv6kgylPBAhkg/36eVrA742aNXYUxAZYAXWlNI8rz+/de6r/APll8bcN03VbY7L6pyFZuH469rVM1LsHK5PIDI5/am7MfQtWbj653PI/7pmpWiqjSSSNLIFhnpaqZ6qleSb3Xuif+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917p+zX/Fq66/8MHK/+/v3t7917ph9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Sh2fjcbmN57KxOZqMPS4TJbz2pRZufcWRo8Rt+PC1G4KePLfx3LZB46emojTmRaqeeRY44yzOyqCR7r3V5ORWd6XKtVRy09S26kaenmjMU1PM1HWmSnljIBVkJKkWFiPoPfuvdMPj/x/3j37r3XvH/j/ALx7917r3j/x/wB49+6917x/4/7x7917r3j/AMf949+6917x/wCP+8e/de694/8AH/ePfuvde8f+P+8e/de694/8f949+6917x/4/wC8e/de694/8f8AePfuvde8f+P+8e/de6ccRFfIRi//ACh5r/3Q1Xv3Xum0R8Dn8D8f4e/de678f+P+8e/de694/wDH/ePfuvde8f8Aj/vHv3XuveP/AB/3j37r3XvH/j/vHv3XuveP/H/ePfuvde8f+P8AvHv3XussICSD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mXDbpoqOWppYq1o4UrhHSVk6pT1MCTPHVLUU8HuvdJT37r3Xvfuvde9+690pIW3ZvjIbcwQqs5uevocbSbV2rj6uvrMl/CcHSVE9dSYHDJWyMlHj4JaiqqRTxGOCJpJ5iFLyOfde6dd8vi6eTbm38XkocyNp7efCZDL0Vzi6/KT7jyO4a04eVwGlpoTXilScqBMYmlQeN09+690hvfuvde9+690JuA/5lT2Qf+zn61/60Z337r3QZe/de697917r3v3Xuve/de697917r3v3XuhJ7VFty4j/AB626eP/ALCfC+/de6Db37r3XvfuvdCF192tu/qqsnye1v4bUq8OZNXhspSTPjM4+TwL4aKDPNiXpquup6RzDkKChqaiSkgroYqtaZpfJ5Pde6tQ7N311117jMVlt1b42XFnMhg9uVlTtHZOSg3jmKzJ5OiM+QqsRBtWStxNPjFKO9LNUZhYmj0JDUVzMlTUe691Gj3VtKqyu36HAbr2TuiPcO59obexNRRbuog+Uqt37hiwGHpIcLSJPX0rTySaDLlYqGKKYNTF3nSZYPde6GnL4ahwc6UM0M/8fNNuJ8i+QgXFV1LGu36pYohgqQGGlRgLhZn8wH9nSdXv3Xug0aBkcxukiyA2KMpVwf6FCL3/AMLe/de6c8tlsbs3rDsjeNbkarGz0OytzUmKrdsVGSffGB3NLh6kbczmKgpKOpjpDHViI/f1UsENOB5DPFII29+691SMzM7O7szvI7ySO7FnkkkYu8ju3JZiSSSbk8n37r3XXv3Xuve/de697917pS1X/Hn4I/8AZy7r/wDdXhvfuvdJr37r3Xvfuvde9+691737r3Xvfuvde9+690KXc4t2LmP+1btP/wB5Cg9+690Fvv3Xuve/de697917r3v3Xuve/de6FPrAXpO1z/TqLOf+9ZhPfuvdBZ7917r3v3Xuve/de697917r3v3Xuve/de6EjeX/AB53Uf8A4aO4P/fjZr37r3Qb+/de697917r3v3Xuve/de697917pcdci+9Nt/wDa9w//ALsI/YV51/5Va/8A+eeb/q23U9/dhFffvlIf9JjbP+0yHpu3its/kgeT95VC5HJH3Gsf7yAf9cA/j2/yka8u2Z/4TH/xwdFf3hEKe8vMik1puN7/ANpMnSY9iPqGOve/de697917r3v3XunDGYrIZmsF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917oulFQbk3XWV6Y6izm5MhHBnd05NKKmr8xWJTQx/xLc2469YFkcIiJ9xXVknAC65XsL+/de6VG+8rksthuq5cpkKzJzU3XlbSQVNfUy1lStKO09z1awGqqC0jIsk0rIGY6Q2lbKAB7r3SElra2eloaCeurqigxRrjiqCorKmegxRyk61WUOLopXMVN91KiS1PhRfK6q8mpgD7917qN7917r3v3XuumVWUqwDKwKsrAFWUixBB+oPv3Xuu/fuvde9+691737r3Xvfuvde9+691737r3XvfuvdTcbjclmsljcLhsdX5jM5nIUWIw+HxNFU5LLZfLZOpWixuKxWNoleapqaiZ0hp6eFGkkkZURWZgD7r3VomJ2ttf4B7ByG5ewcLsftX5ZDdfWee2/wBaVtRPmdtfGXM1O2dxZDaO5exXxVUKPK52aknmrqLDEMKKWOiyMUqH7Orf3Xuq198b33d2VvDcXYG/dwZHdW8925FsruLcOVkSSuyVYYUpYdQiVI4oYIIoaWjpYI0gpqeKKmp44oIo41917pLe/de697917r3v3Xuve/de697917r3v3Xuve/de6GXF917kxP8Fy0dPDXb12/idtbTxm6ctV1+QjpdjbOz1Lubbe26fAyv9vEaeqpY4zLEVjMFyKda55q+b3XukVurdg3DTbfw9BiocHtva1DV0eExCVVRkpkkyle+Wy9fkMpWfuVE008mhWIUJTxQRWZ0kmm917oRu7o0jx/RgRVXV0RtZ20qF1M2580Sxt9T/j7917oCTzx7917r/9bV4+UCAfJb5Di3/Nc+2/z/ANn9kP6e/de6AzQv9P8AeT7917oR+nkU9rdcC3/Ma7b/ACf+dtF7917oONC/0/3k+/de69oX+n+8n37r3QnbSrcditjdjRU/YSbV3JvzDJ1vJhm25mq+Cr2fW5rG7qzGUym4sZBUPS033GMp6dqOkheerXXFI0NO7M/uvdd02P6r2rs6fL7fq3y/Yku5Hx+BlyFDV19bhcJjgs1ZufJDKxR4ulmq2eOPDxYylnqYU871FbHPFEJPde6TLR9f7hjko8ttqk2hlctVSTV2+cDU7iqqfFVSQQw42vTZAnlpzTs/3c2apqVNVT5UeijpJaZUn917oRNoy57pLbG69pS12D2lvHtHbNJVZndb4/A9n4St23idxzTbf2dNgJlrKWTb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de6zPTOiyMyraGpkop/HNDMaatijWWSjqxAzeGYKysYZdL2N9NvfuvdYtC/0/wB5Pv3XuvaF/p/vJ9+69074SJPvjUSutPR0lDl5K+tlEhpqCllw1TBJV1Rju2hAS5VAXIU6VJHHuvdF1z+WOdyC1qUz01NBB9nj4pxD94lF53qV++kgJVpWd2dwpKJfQhIXU3uvdM2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69pb+n+8j37r3RLPlhuI1m/NvbGp5G/hvXm1MZWVUK1EU1PLvbs3EUO9Nx16CB2tJHim27iKhJkSaGooKiFlKJG7e690WD37r3UPIf8AK7/qDqf+tLe/de6XfYot2d2sP6dtdqW/1v9IOSt7917pIe/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XuhG2f1FvjfmPXNY+np9tbNNVPSVPYu5augxW3qNqKo+3yT4Gmr5Y6vP1lLIDH/DcHT1UxnAhlEI1yR+690cLO5xMjvXN70w0dTjazMZiqzhqauCgfIVGTylMFz2SyFKRNTg5Cd6qeWjJlijSY0xaWNNTe690F27Or9h7ux9RUYKjxXU+8qeNjSthaPMVXVm4xNmfuKj+Mbcknra7B1kNJNKtK+D1Y+TwQ05x1M0hql917oZt5Q4fE47rjaG1Hnj2XhOstq1OIp5qd6eor8m1dk8Xnty5E1clRVmSvrqetraWmqqycUUNSaeHwhpo/fuvdIfQP8f949+6917QP8f949+6917QP8f949+690sdr793hsumrKLbWZSioK+rTIVePrcJtzcFA9ckK05rIaTclHWJBLJGkcc0lOI2lWOJZC4ijC+690l8xU1e4cpU5vP1c+azNY8clVk8iyVFXKYYlp6dA5ACRxRokUMUYWONFVI1VFVR7r3TjtfOZHZ248DuvAvTQZnbeXos3ipKqkgraRa+glE0BqaKcGOVCeHjcWYXB9+691GzOVy24q98nn8rkczXPPU1EcuSrKirSjarmeeaHGU87NHSQBpH0U9MqRoDpVQOPfuvdN2gf4/7x7917r2gf4/7x7917r2gf4/7x7917pyoMDm8tG02JwWey8Mc/wBq8+Kw+RyMCVWhZPtT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HLZTIQq6w12RrayJZLCRYqmpaaNZAP7QDC/+Pv3Xum737r3XvfuvdPFRn8vU4TG7blrXGCxNXW5CjxcMUFNSfxLIN/leUq0plT7mrZAsIqqkvKsKRwK4hjRF917pn9+691737r3Xvfuvde9+691737r3TthM/nts5GLM7Zzua23mIIK2mgy+38rX4TKw02SopMZkqeHI4ySKZY6immmpp0VwJIpHjcMjsp917qNuPF0m6KDO7soqXDYjcGHj/jW5sfQ+HE0W5cQ7LHltx4vDrpp4a+hcisyUNEEjnpXnrBBG9JUST+690GGhf6f7yffuvdCJudB/os6J4/5e3yI/J/G4tq/8b9+690Hehf6f7yffuvde0L/T/eT7917r2hf6f7yffuvde0L/AE/3k+/de6V+KxOyIcTFmd27ozD1FXWz0dDsfYuIiqtzmkp4iZc7n907l8WHxVM0vjhp4Yo8lVyqzTfaokVpPde6E7ZvedVtCtkoqHAY+HYlPtCr2xR7Rrsft/dNVnI8TgsnW7Nx+/c3kqKmXJ46TeFZBu7O0Qo46eqrIYC9NMtFRRxe690BuUr8lnsnLnNw5Kuz2cnj8dRmcrMaqvljMrVBhSQgLFD5JJHWngVIULNojUG3v3XusMskk5iaeWWcwU8VHAZpZJTDSQFmgpYS5OmJC7lI1soLEgXJ9+690I/Tu8cF1/2Nt/dO4MbHU0NKKyip88IJK7Jdc5bJw/aYvtXb+J8FXHW5Db8h+9gpZaScsA70qLkI6OaL3XujVY+nx2HyGFrcvi8HvnDzUtNuihhizecbbG7qPNUjzUWepM3jnoq+aCeRnM0oaGoaRJYJ9EglUe691O7Bx9P3ZLR1UFHtTbfZdDjqqhxOA27jtxY3E5/ZOytsxSYbbWGxflyURr6KgpKlaRw0ctV4/HUMzeKUe690UGaPwzTQ645fBNNCZYX8kMphkMZlgkH6ka10YcEEEfX37r3QnbeH/GI+zT/TdPWNv+pOf9+690Fvv3Xuve/de697917r3v3Xuve/de697917oTu2hbc+G/x6x6YP+36hwfv3Xugx9+691737r3Xvfuvde9+691737r3S36/F85kh/wBmJ2h/77TL29+690iPfuvde9+691737r3Xvfuvde9+691737r3Snqx/vy8Afyd0buH+2xWEt7917pMe/de697917r3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9P8AeT7917r2hf6f7yffuvde0L/T/eT7917r2hf6f7yffuvdSKQ00VRHJVU6VEAEivE4qGUGSJo45tFPJG7GJisoQONWnT+ffuvdA5v9siNzTUmVx0OKqsTj8Ziko6atqchSikipBV0tXTVFYTLoqlm+7KyWfXKxkVZC6j3XukZ7917p5wYvUZL+n91N83/9AnIe/de6Zvfuvde9+691737r3XvfuvdJLsne9N1rtrMmHNUlJ2JkKGnxu2sPRViy7g28c1Ek9buvJxUfrxjwYyRnxbyz09X91VUVbSJLDBMye691X2AFAVQAAAAALAAcAAD37r3Xfv3Xuve/de697917r3v3Xun/ADVG9FQ7TSRlYzbblqwUDBQlZuzK1Ma+r8hWAa3F729+690we/de6eNvf8X/AAf/AGuMZ/7mp7917pS9qi3aHZA/pv3eA/224aj37r3SC9+691737r3Xvfuvde9+6917/bf7FkQf7F5CFA/xYgD8n37r3RmMV1PBs6r3hg+ws3jKukmweKhhpthZyky1dk8vU18GXoaaiyctPJSLSQRRrV1GRUS09TGYVx8lVFUiqh917pzwUWM2dQmm2bTV+OydbTGHObrrKyGXcdfHNRmjq8Vh5qSOJcVjZA8plp6dnqJ9ZWprJ4Vhhi917qKsZUBVUAAWAFrAe/de670N/T/eR7917rJVY98ztzc23ocvS4SszVNixBPkIpTi8mmKy8WWfA5Guplkko1mkiiqYKjwvEainhinMMUjVMPuvdIbdPUNFjsTn81tLd67mo9n4vG5HdUWXwibWqYYq3LUe25sjtyWGuyVLkKBclXU1LDJNU0lZMJY5FoAPMIfde6BL37r3S43aP8AcF1gf67Drv8A35m4/fuvdIf37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690Pw2jtGt6ZnzeH29XVu7qLYtFviuqhnK+XcMc69w5jYeer6XAvSU+OqNrUOKw6mphpXnzMeUyNDPqkw8GQeD3XupOO6vpdq5ncWRXubF7X3L09gm3nuCp2/Fk33BiN3bd7bwWxaPE9cZbFVMUORrZ1y6ZfCVcVfSTI9HPHkocOkYq/fuvdM1D1fR5LE4qWqz+M26cNguvnyGOg2/Ufxiupuwt9VENCaCnarEVflIcPV0uVjp/LSxzUcfiR0+3M83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2pvv0jVvLAQsU4AMIikHil917oHwqnkDg/4n37r3XtC/0/3k+/de6fNsoP49SWHP8M3h/X/nhsp7917piCiwuObf4+/de670L/T/AHk+/de69oX+n+8n37r3XtC/0/3k+/de69oX+n+8n37r3XtC/wBP95Pv3XuvaF/p/vJ9+6917Qv9P95Pv3XuvaF/p/vJ9+6914qo5PAHJJJ49+691j3VST4TrXs3cucpp8Jtms6e7u27S7hzME2MwWSzu6On89tjb238Zkq1UirK2uyFVT0VPR0rSytJIAUCB2X3XuqjffuvdQ8j/wAW+u/6g6n/AK0t7917pedj/wDM0O2f/Eudrf8Avw8l7917pH+/de697917r3v3Xuve/de697917oynxu249bUdm73xUdVkt19cbTxU+ExOPxWayVdh8LvnKS7K3j2esmMjKRJhIailxWuWS0T5pKtk8dI0i+690KSqioqIqhFUKqgDSEAsqgf0t7917rl7917p0hzeUgoJ8ZHUQGknxr4YtNjcZU5CDCTZeDcFRg6HMVELVdPRS11NTVj0kMyxeaMOFBeTX7r3TX7917r3v3Xuve/de6VG7BY7BH/fpttn/wBfDcVvfuvdTetdkVHZfYO0+vqTNYvb9VuutyFHTZTLMhgE+OwNXnosXQU0kkIqcjkTSDG4mjM0YqK2enhMiByw917qf2hsii6+3BgMNS1+4jU5zr3aG+8rtTfW2odm9l9Z5Ldf3TN172XtWGqqxRZemhp4a7SzxtJSVdLKYItYB917oO/fuvde9+691737r3Xvfuvde9+691737r3Si2vtHcm9MhU4ra+LOVrqPF1uaq42rcdjYKfHUGhZpZa/LzU9OrvJJFBTwmUSTzOkUKvIwU+691DyO2Ny4+rx+HzG0t1Y7JZ4GLDYbK7XztDk8+JHNOY8LjKunWat1NdAKZJLngc+/de6O9sWu3lk9sRnf2CqMRuPE5Obb7VlbBX0uS3Lj8XhseaTcGSirZ5BJUPJJPDUVUEccc8kbSHXMZiPde6VfjH+pP8AvPv3XunWnjH8Ey3p/wCXngOOb/8AAXJe/de6avGP9Sf959+6917xj/Un/effuvde8Y/1J/3n37r3XvGP9Sf959+6917xj/Un/effuvde8Y/1J/3n37r3XvGP9Sf959+6917xj/Un/effuvde8Y/1J/3n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fYtYirND5cViXFTgsDHKsqlkSLJVo8aGPJQK88D+690VnN5XMbny9TuHdWbzm69w1ksNRW7i3XmsrufcFbPTUC4qmmrM5npqirmeKlRKWNpJmKwqsSkIoUe691A9+691DyP/ABb67/qDqf8ArS3v3Xul72T/AMzR7a/8S72t/wC/DyXv3Xukd7917r3v3Xuve/de697917r3v3XujFdHdb7xg3DtHuHKUWb2n17tXJxbood1a8VRV28cjhKl5sPs/aOGy0nnyMGYrqb+H11WaOTHrRiuaSSVoDTv7r3Q0SmGSaeSCip8dTy1FRNT42leealxtPNM0sGOpZqtnleKnQiGN5XZ2VQXYsST7r3XCw/oP9sPfuvdesP6D/bD37r3XrD+g/2w9+6916w/oP8AbD37r3XrD+g/2w9+690qN2rzsC4+vUm2f6fjeG4wffuvdKPqTfeG653bkc5n9qVG68Rm9hb86+q1w+Yp9t7z2mu/ML/BW7B603LWUtbBjtyYpC/8Nq5qSRVWadP22kWWP3XuvdidlZHf+K6w25VvmchiuoNpZrZO2Nx7yy394uxdw4TMbpn3PTx703FYCWHFpJHjsHjoi8NBSo6xyOaiQj3Xug0sP6D/AGw9+6916w/oP9sPfuvdesP6D/bD37r3XrD+g/2w9+6916w/oP8AbD37r3XrD+g/2w9+690O/wAfMxJTbuzG1xT0csG7tvVM8TtSPJkky+zYZs7SR0tWh/bpmonyctbGylZDFA5IaFD7917o28eQycMUkEOQyMME2kTQQ1tXDBOFBVRPDE4WQAEgBwQL8e/de6h2P9DwABwfoOQP95Pv3XuvWP8AQ/7Y+/de6dadT/BMsbH/AIueA/H/AEy5K3v3Xumqx/of9sffuvdesf6H/bH37r3XrH+h/wBsffuvdesf6H/bH37r3XrH+h/2x9+6916x/of9sffuvdesf6H/AGx9+6916x/of9sffuvde0n+h/23v3XumHPbti2rLSwU+PTIZieiTJw1MmQkhpcN52P8Mlajp49ctUNP3cd6lEjBi1xyamVfde6AoKAALXsALnkm35JPv3Xuu7D+g/2w9+69084Nf8oydh/zCW+/p/4ZGR9+690zWH9B/th7917rNT001XPDS0tPLVVVTKkFPTU8Lz1E80raI4YYYgWdmJAVVBJP09+690B3dnZmHwGHznW+Bq6rIboyiQUu6s3g8xFTYfblJHIy5HZEk1LHIcpPVK2jLJDURU9NoSlZquV6uGl917omfv3Xuve/de697917r3v3Xuve/de697917r3v3XuhU7VqKeebrxYJ4pmpuo+u6eoWJ1f7eo/ggqJIJAvCv+4JGH1u1zyT7917oK/fuvdPG3v+Pgwf/a4xn/uanv3XulN2t/zNHsn/AMP7eP8A70VT7917pA+/de697917r3v3XuuLMqKzsbKoLMT9Aqi5J9+690byromwOJ23stS8UG1sTTtkKNoKGD/f5Z6BMvvGsrHoFVaqpjqJExMdZKWlaioaOFm0QIq+6902WH9B/th7917r1h/Qf7Ye/de69Yf0H+2Hv3XuvWH9B/th7917pxxmLfKVDp9xRY6hpUiqsvmMnVU1Bi8JjHrIqGTI5Ctq2SNF8k0UUKFtU0zxwxhpJFU+690tNwDalX0vkhT1tfR7GyWGzNdWbyr8rRZ/GV++Y5qbNbA2JtTbdVS00lFm5Kqihjzawwmtp6OqrqvUuJgeeX3XuiJ+/de6XO7v+LF1f/4YVd/787cnv3XukN7917r3v3Xuve/de697917r3v3Xuve/de697917ow3x1+Nu9fkZubJUWHrsZsrrzZlD/eLt3uTda+LYvU+zYVeaqzmcleWnFXWypDMmKw0M6TVsynVJS0UNbX0fuvdC38g/knsxdpn40fFDH5XZPxowdbFNndyZETUPZXyT3TRKYp+wO0qsJTypjC/rwm3ZIYkhQR1VVTwTfaY3D+690R737r3Xvfuvde9+690u8a7jrLeiBmEbb76xdkBOhnTb+7gjFfoSAzAH8XP9ffuvdIT37r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdKLD7gTE4rdGJkwG3cwu5sXR4+LIZihqJsrtmoos1TZiPM7XrqSaFqeqdIJKKYSiWCSmnmV4TJ4ZYfde6Tvv3XujAd78Y7oP8A8V/2l/71Oc9+690X4/Q/6x/3r37r3X//0tYn5Vf9lQfJD/xPXcH/AL8LI+/de6AX37r3QmdLi/bnWg/rvjbP/u2i9+690Gfv3Xun/a21dyb43Di9p7QwtfuLcmaqVpMXhsZEJqyrmYFjYMVRI0UM8s0rLHGitJI6IrMPde6fcflWx+6MrhNtwrQbf2C2rfnYmMoKfK7qrc3i4XxmTw20spmqaekwzT5Gplw+OWGmFQypJkqqWeGFaWm917oxWydrb0ar3vhdt9qntjY3V28pt64PLbkj2Hv3cNHtALNh94viq7uPc1HhMZQ7qoKX/clLJDVf5LQ0dTXUeMqJ/wCGye690X/A1OycfhMmMF09T1m5NpvgsxtPdkmdzm4qbaGKo5KjGblyu9MJkIp6HNyT19ZiWxNbVx00WNqIYxHHKZkRfde6SWe3Dm9z5KfL5/J1WUyFS2qSoqpNWkC+iKCJbJFGtyEiiVUUGyqB7917pm9+690o8RtHc2epKjIYvDVM2Ko4quWszlW9LiNt0X2URklir9z5mSnx1PIxtHDFPVI0srJFEHldUPuvdKytxGzcbV08m795DcdXSRYrES4brOghmjbG4LatPjKEV29MzFS4+GY6KaIVWOocwszxVLzlHKPL7r3UaHf9Pg3hk2RtDb+2qmKDHK2aysMO+dyyVlEVqWr4chueF6Ghl+41vDNh8XRTLEUillnKeRvde6Q+TymUzVYclmspks1kmpqSjfJZivq8pkHpKCEU9DSyV1e8krRwxgRwozkIo0qAOPfuvdQffuvde9+690Lfewt2zvIf9NtD/wC6int7917oJPfuvde9+691737r3Xvfuvde9+690LXWAvhe5v8ADqWqP/r/AG3/AH7r3QS+/de697917r3v3Xuve/de697917r3v3XuhF3kSu2uoW0q1tg5QhXVZEbT2ruXh0e4I/qCLH37r3T1sDP5mHN5TfOSrP4hg9uZnZ27tz7Xp944zZtVunI47cUeL2qdu7eZXgyNdjJq6Wrp6eLF1KUtKtVI8S0wmB917oQ9pbW2v1rvrtPpKv3DvevxMFRtbL9IbWYY3dUHaWHxxn3XmxBJT0tHRV9PlK2kxtPXbXpYor5gxfcQmsw+QKe690Jv919+4yfq3LZDsCkw+0asbUym5Ok5qw5LM9k9f9vyVFN2pXbw2A8dPS5XMtgKaqrshQRwVVbRVNdFHHBSrDHO3uvdRfhD1zkMJ2R8jNgSYHMbP39ujqSuw/Wu5qzBVm5zT4OLsh9n1tJHm2XwmKaaemkp8o8wWrloJIoyzGWM+690lczi4MNm85haLJUObosLnMxhqPN4wucbmqTE5KXH02Yxxls3gqkjWeHVzoYfX6n3Xum7Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P8AeR7917o1vTO99oU+A2rsOasq6HdGRzOWp/HXUsoxOQzWZy8zYWGhykGuOLz0y0NGqVPj1VfpUkSqffuvdGB8R5BQggkEG4ZSDYqwP0IPBHv3XunajjIw+5OOPBhb8j/nfQD37r3XdftjceKoYMplts7jxOLqY6aWlymWwOYxmNqoq2A1VDLS5CuhjhkWeIGaBkciSP1pqTn37r3UDJY+ow6YaTKRxUUe48FjNz4GSSsopY8vt7NeT+FZeikp5XVop/FKE5DXVgyggj37r3UEvAPFeWEec2gvMn7x06rRc+rjnj8e/de67VoHExSSJxTo0lQUlVxBGg1PJNpJ0KByS1gB9ffuvddeSnBkUzQgwlRMPMl4i/6BIL+m/wCL/X37r3WURhgGUBlYAqwYEEEXBBB9+69134v9p/3n/jfv3XuveL/af95/437917oPuxI/9x2JFuP4jXW5/wCmOH37r3QUeL/af95/437917r3i/2n/ef+N+/de694v9p/3n/jfv3XulXsWO27sN6fqmcH1/7Nmt9+690kIov2o/T/ALrT8/7SPfuvdZPF/tP+8/8AG/fuvde8X+0/7z/xv37r3XvF/tP+8/8AG/fuvde8X+0/7z/xv37r3XvF/tP+8/8AG/fuvde8X+0/7z/xv37r3XvF/tP+8/8AG/fuvde8X+0/7z/xv37r3XvF/tP+8/8AG/fuvde8X+0/7z/xv37r3XvF/tP+8/8AG/fuvdY5Yv2pLLz43tz/ALT/AK/v3Xuq2/kEjf6du3RY8b4yI+v4+3ht7917oIdDf0/3ke/de6UOH3bvDbyGHBboz2LpWBBx0OSmqMLqYaWlO368zUDSEenyNTFrcXtx7917pUQ7+xtXIjbo2RTVZb7aCpyOxq6i2ZXR0dNDBTLPBtqSmqMRNUiKAqI4Fx8UrO8kz+Zmn9+690qsvs7JUlPjsxgYshvDaW4KU5Hau6cFgc1JTZ/HLWy4yq043xPUU9ZRVUE1FlaGRS9JUIUZnieCeb3XunGk6t7CyUUcuJ2ll83JLU1VKKHAwLncshpKZKuWpnwuIaarjpijkRVckCwSvHPHHI8lPOsfuvdIirpqmgnnpa+nnoqmlkWKpp6uKSmnppXXUsU8UwVkYgghWAJHv3XusHv3XupuNyVfh8jQZfFVlTjspiq2lyWNyFHM9PWUGQoZ1qqOspZ4yGSSKRFeN1IKsARyPfuvdLnKdwdr5vE12Cy3ZW+shh8rJPLlsdU7qzclLmGqatq6ZcxGZv8AK1MrMQlRrVR6VAUBffuvdI7CYLMblydNhsDjqnKZOq1GGkpVUsIoxqnqqiWQrHDBCvrnqZnSKJAZJXRFLD3XunHsfNbP27TPsTq3dVXu8VVC1B2Z2Xj6dsbtXd8jFJJtn9YJXxRZSTbccgK1uWr4qWTMmOPx0kGOutZ7r3QJ6G/p/vI9+690JG6lP+ifoSw/5e/yNv8A7Dce1B7917oN9Df0/wB5Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+690qdu7E3pvDH7wym0tsZbc1H19tuTeW9f4HFDX123dn09UlFW7pq8RE/3ktBSSSR/fVNLTypSIwmqTDAGlHuvdJRCJUSSNlkjkVXjkRldHRxqV0ZTYgjkEe/de65aG/p/vI9+690a/ojcuT3NtaTqOTD5cUWx5N2b+2zuPEU1c+0sRFnKYZHdWG7K/fSgx710tChwOcaIzy1BbGSh4pKd6f3XuhACsQDa1/wAG1/8AY+/de6mx1MX2VTicvi8ZuLb1Z909Xgc7TJXUVPVVmKnwku4cD5r/AMOzVPS1M4x+WpgJYJCjESopib3XulRvLquf/Rn2PlusNj1o2RTYbpDPZZsTUbu3NJt6qxW0cvkd0f3+3PuCmpqB8+YJIs5lKHAAUdJT1amKmp0pqyOl917okZRlCMysqyKXjYggOocxlkJ+oDKy3H5BH1Hv3XuuPv3Xuve/de697917pU7IpcLWbu29DuXF7nzW2Rk6ep3Pjtlx0026pts0J++3FNgoa20L1EFFHPOqTSRRkIRJPTpqnj917oas51zsqgi3hvDcG66rcG14hSYHZ79ebWxuHzD1OQ6yfc2z85uXbYvQY14HioI9x4yqrkmkVspU0FbkJaUSTb691L+QWwW27tnp3d9ZR5qi3DuXauL2xumjro1hx2OrtidWbMbEUkFIyeWlq3osoktVDNO/kiNNUhIHnlgj117osPv3Xuve/de697917r3v3Xuve/de6XPXgvnskB/zwXan/vscx7917pDe/de697917r3v3Xuve/de697917r3v3XulTV/8eTt/wD8OneP/upwXv3Xukt7917r3v3Xuve/de697917r3v3Xuve/de6FvvMW7NzYP8AzrNn/wDvFY737r3QSe/de697917r3v3Xuve/de697917oXupxeh7i/w6Zzp/228cD7917oIffuvde9+691737r3Xvfuvde9+691737r3Qob4Ftk9MH+uy9x/7x2fnR7917oL/fuvde9+691737r3Xvfuvde9+690uet2I3ptqyM+vcODpxpVmAmqMjGkMZI/tMTZR9T+PYY5ytbi95ZvrW1UvJJBMqqOLMY2AA+ZOB1On3a9/wBp5Y98uVd936dLWztd226aaaQ0SKKO7ieSRz5KiAsx8gCeldBjcpR9tYk1fWtZ2C4zcGRg2FU0Wamg3hAah5qWh8eDHnqaeZo2DrTllkCPE2oCRfanli2ns9htLa5Uo6RRhgeIIQAg/YcdEvvnve2cxe7O/wC9bNMs9rc395JFItdMkb3EjI61ANGUgioBoeHRiarsLZudzHZFT2Jjcl1dsDa7YHqjaXUNDWbVoOwsNgN15TPZjfviwFLiKBxW1dbPXZjcOa/hKUlPPVNSCmkJw1Ah91EvQsbW7uy+6e4uguy+x99Zikw+A7fwdfPn6j7jCbfy+ztudkLU0nds20qFmGEq8pFLU0mZhSHS0WOWRVEAWJfde6XnVnaHYvS+y+xf4f2fi9s9xYnHdzb2wJxXZG1d742oi3B2L1PU4+oWeir6vB5ifODC7jrI8Ok0+Qmxq1U0lPTNPb37r3Qhbm7fhpuiu28rtvLba2tNmPjT8JYNo9R7a7bhyQ2RnsJ2hka/cuJ6vo8hl6zLY/M7XeV81jmjhkr8A4oWnUx08Jf3Xukzku7cqPkN3zRZPuer3rjdvfA/ZmA6rg7Y74nxGK3Bnt1dXdS5He+Cg3hQ7mw0bZTOz0VRksxTYLNxTZGsp5ZGFVpmR/de6adv53e9P8XMtgsT2/1dtrsiP+YZg90b0qcr37s7ce0aLYu7/jdiloYt/Z6XLV77qwyQ0tXisxFKMtNkWx+TpJkyFTHVRv7r3VWfa1Tses7T7NrOsKZqLrSr7E3vVdc0bxV0D0mwajc9VLs2laDKM1ShjxppkKVLGVbWkJcE+/de6QPv3Xuljtfb1BnqDcrjII+fxGHrsridsu8ePbOY7HYatyW4MnR5mpJh8+Jip4qwYtkWSvi8qU8yzxxwVPuvdK6PqunO6INnT7ux0e4aGj7Ej3pQxY+tql2XuDYOJr8q2Kra6M/a1MNWaJ6fy085qYZY6pHoi0dKK73Xugg+vI9+691737r3Rp+kO7W6F7el3ZUrLV7cz3UqbG3dh4dq7S3fNnMJuPrKgNHQxY7elqOIxZSnxtY04dXKQPAS0M8yP7r3VqsHZddvPEUGSx2fwe7tvZrzZrbubm2lhTJSRZjEUu3Kj+CLk8fHWYsR0lBTUMlBCkaQNTkLGJNUj+690it8Sbp7Xwm46eg3+euNkbi3fvWLcOLpOttt7nyWd3vWyzdb95VO98xka2SBKylo5svHt2iw0UUdEstPUCWOerNXB7r3Ub49bo3/ALUpM6iHHY3tLpvd2I6d3tlNs5PGVFZnsV0lg6fbXV2e3BtagZmioBjjNjqCXJQTwVctLXTRTNUzZOJfde6Snf3fO/8Aovq7Hv13gMTiP710eB2BtzIQQbXOC2PQdVbFpNh4XH0+zs/jK81pyG16quwn3UFRTrTqDIbzR0Ph917qduP5C9M5WGk3NXdqbPWlnxe3cdi6Sixu4Jc3DjaDH0+HxOKyeGxeOmr1lxdIsFFNV5YGWWKnDfc1enyN7r3RPs7uDC9i/K+HdOyctl96bZxO3KKmOVOEyVLjNvUOO2JLDlqTFRVYE0GIir2qpxPUU1KHmlnmeNi5qZ/de6I/7917r3v3Xuve/de697917rxNuTwBySfx7917q5jIfGLvDrXqzY25dz9VbtxuHxOxNkUG7sitJR5M7fzM+C++jTLU2DlqJoqKGj+3gkyMkf20VQrwTzRymMSe690E+HloMlk8TTU8lNklq8ljYzSwVJk+7ppq+KGeNTSSLJpZX0lonVhe6spsffuvdHDh6YxOCz/yFO4Oq2bHbU7U2Ht7rPE7lyfYuKhpNqZ35A1PXGTqfFjcxj8lX00uKAjpKytqpDJPEtRFM6pUCX3XulptjprqncW/P4Jkus0xdDRfLH5AdLfwXGV/Z2Sx2c2f1l1fDm9uQZfO5nd0VTj5RWTGqqKyijqZJpI3DBKQGl9+690BPxv7M3Z17W4TqfduFo91dTdzR7VwvYfU+7nyZ2nTUG+JKGsquw8NT4eOqqMTW4+mkOSmnpIlUxoz1IinhhraP3XujIdz9wzfGjtbMdK9YfHvo3bexeu62gqqKn7A29Vdp7j3vX11PT7lwm/stuyoykdfFLC8inHw1FVNVQ+MNJPbxQU/uvdEjyfYnYGX3/mu06zduaj7B3Bn6Xc2T3Jj66egnfKY0GLCRw08TmMUuOhP2mPpHDxw048IBUvq917oQYe/8pPtPN4XtbY22/kBLHvJe0dp1vblWdw0e1d+UOMNDRZJ9v5Klq6WspKfVJUUtBGKVInlqFR1SpPi917oR8xtTrX5kb23R0n3J03tEV0NTu7N7E7Z6gwtNsztrZNXSMjT+SsX7ubcj1MjQxmiqUnWo5WWimcpWUXuvda3MayadLiXXG8kMn3FNJQ1IkhkMTipoZvXBKCpEkD+qNro3Kn37r3XPQ39P95Hv3XuvaG/p/vI9+6917Q39P8AeR7917r2hv6f7yPfuvdHJ+F3yh2D8Vt0dn7g7B+OGzvkbR9gbDpdoYzF7qqsPSnbctNV1NTkKZXz+OytM2NzSVEUGXRKQzaaaAqJV1RH3Xuin0W6N7UkmHrV3pvJMrgk2x/B8nT7v3NHXYSTZUUkWy2wNcas1FGMIs864QwSq1AssgpDF5H1e691Lp9476pKTb+PpN+b9pcbtLclTvPaGMpt8bqp8Zs/elZKKis3ptHHQ1iwYvMyyqJZcrQRw1byXdpi5JPuvdRq7cu7smu7lye795ZJewstR7g7DTI7u3HXJ2HuDHVcuQxm4OwFqqpxnK+lqJ56mlrcr55oZpHlidZHZj7r3WXPbs3purNZzcu696b13VubdGMiwe6dzbo3juTcW5N1YGCKmp4cBujP5mqnq8lj1jo6NFoa2aWALTwKI7QxBPde6aa+tyWVrqzKZfI5LM5XI1D1eRy2ZyNZl8tkquQAPV5HKZKSWoqJWAAMk0jMQACeB7917qLob+n+8j37r3Slz6n+C9W8f802zH9P+8gd/j37r3Sa0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvddqJEkilQtHLTzwVMEqNolgqaWZaimqIZFN1kjkVZI3UgqwDAggH37r3S53L2f2nvTGV+E3j2Z2HuvCZadKrMYXcW9tyZnD5mphrP4hS1GZxdfUyQVj08x8lK1TG5gNvDoAA9+691P6x3b3HtWTP4DpWs3rS127KXCU2bxOwsEmar66PF5Nodt1Lxikqvs3pqqukipa4GDwvUMBMmq4917q6/ZWK7Bxe0NuUPbG68fvfsuHGxneWfxlNSR0rZWRi38LmyuPc0+XqqOPRBWZunhgirZleWON1tU1HuvdKbxf7T/vP/G/fuvde8X+0/wC8/wDG/fuvde8X+0/7z/xv37r3XvF/tP8AvP8Axv37r3TqI/8AfvzDT9Nw4+3P/VprffuvdNXi/wBp/wB5/wCN+/de694v9p/3n/jfv3XuveL/AGn/AHn/AI37917r3i/2n/ef+N+/de694v8Aaf8Aef8Ajfv3XuveL/af95/437917qbjsPk8xWR47D4vIZfISxzyxUGLo6nIVssVLC1TVSx0tIruVjjVpJGC2VQWYgAn37r3QyD4+7oocXQ5feG6utuuKTKw07Yr+/8Aux9vtkKuWNpp8VTzvTvTvVwqv7kEU7vquoU+OUp7r3Uam6C7Vh3Fi8auzHzkVR9hXRVmKyOPqcNkaOonjWKmgr6iWC08+sLBTyBHkuZEDQpJIvuvdE237tPffW+/8tt7euO3LtLfmAr6DKumSy1G+5KCSYLkcBm6Xce2JjTSShVjeCuxk/jSWNliaN4Sie690w/3g3R/EK/MHdG6nzWVlpqjLZyTc+dkzuYqaGshyNFU5fNSVBqqqWGppqaqhlqJXZJoYZlIkijZfde6HveuL6ooPjx1vmtqd5b53B25u9xg+0+rpdzVowFBtuZMjnczg8ttmnSNloaLKyQGlNdUzQV0k89XHAzymSD3Xugbw2YzuSzlNHlM5ncrFJDvbJvFlc1k8nE2Un62rcZPlDFXTSL91JTUlJSyVNvI0MEETMY4YlT3XukcIuB6fwPz7917oyUfWW2qvGbKyVNt+CnzeJ+PmS7a7F2xX57L0GN3VtKpwOeqNv8Acu3KzI5RKqI46qpaOLcGLpZEowVpqyCFaOWviHuvdT/9l1oJKjP7YXIb3w/YeD3Llto0OE3Zj8PjMfvqfa32e5Nzb42ZB4Yqr+AHbYzFfSEtUuZqWItUNFOYk917pqp+ldn1MlH59xb6xGMy9Fs3eOB3c+Bpdx7Tz2xt95/+D4vbeKTAUxqp90UInpHyr0b1UMKrWSPjo1pgsnuvdLrG9Nba2zjt/R5/amezNMmB7Ymw9VFV7Z3buv8AutRdP7Y7C2luDaGbx4hwcmVd8o82MqZcXTkLIPuYYldqZPde6b8r0Ls3D7VyeZyeW3Lk6DZ2A7vzk+X2JjMZJkd+N112bt/aWIpqSbcVc+Mp43psy0NTLHpWkqIZBI9WoA9+690/4P48bebFb5w1NSbp3KG2TsrdlHuKbD4eh3nmK3bu/q6Ld23OnttZWGmqsNmszS0c2DptubnD1LVysvlqI/t2f3XuiRJUUksiRRyxCWaL7mGmapSSo+3Y+l9NkZgPoX8agn8D6e/de6Ln8u9mw5HZ3Xva1P5Tl9v5IdLbjgiqqWam/u7UfxjsbYebrKbxJPBUtVVGexwczSxTQQ06gQNBab3XuiHaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+691DyKt/D67j/lDqvyP+ODe/de6X3ZSt/pS7b4/5q92v+R/z8TJ+/de6Ruhv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de6wVQIp5f2aioLLoWmo3aOsqnkOiOko3jBYTSsRHFpBOsiwJ49+691ZN2FBSxb63JR4+CkpcTgK07W21i6JYxS7X2pt5RjtvbLpCjyDRh6dEx7lXIeWKSW5MhJ917pIaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XulXvBDfr6w/5pJtr8j/nstx39+690lNDf0/3ke/de69ob+n+8j37r3WampnqqqlpQwiNXVU1IspXyCNqmdYFkMYK6tJa+nUL/AEuPr7917pwGWxeXi3xjcXt7G43H7L3VisJjMvXT18u+M5JXRVsFTU5aaGuOM8DHF1FS1HR49vtTPDD97KI/LWe69006G/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3Xulj13X47D9g7HyuaqBRYig3Zgp8nkCjyjF0H8QSOqyrRRK7OtKjNOyKjFghAVr2PuvdH0oZaOvoIMjja3HZXGyyz0cWSw+Qpsni5KuislXSQ11GzRmSIldaXDAFSQAwJ917qT4v8Aaf8Aef8Ajfv3XuveL/af95/437917pzp4/8AcNlhb/l57fvz/wBMuTt7917ps8X+0/7z/wAb9+6917xf7T/vP/G/fuvde8X+0/7z/wAb9+6917xf7T/vP/G/fuvde8X+0/7z/wAb9+6917xf7T/vP/G/fuvde8X+0/7z/wAb9+6917xf7T/vP/G/fuvde8X+0/7z/wAb9+690zZPaG283WTZbJfx+PJTrTRSQY+txcOIdKWmSjSZIJ6V5onKIGKJJo1i9vU1/de6b6rrrbtXiq2PHN/A63HwNUpuHcO4YIsPM/mWKmo868sEUFKKgsIopYmFpjGNLKxHv3XugQ8X1Gn6Ejhrjg24N+R/Q+/de6ecJHaoydh/zCW+/wA/02PkSffuvdNopqeCgrc5lq6jwO2cRpfObny0jw4fExsjyJHLKgZ5qqYRslFj6ZJKurm009LDNO6Rt7r3RSd9/IrKZiiyW3tgYufZeAyMb0dXm56ySbsLM4uUeOsx9flaCRaTH0lYqr9xQY2LX43mo6ivr6SR1k917otxGlmjI0vGdLoeGQ2vZlPIP+v7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XulHueqSorsdGqOpotrbMpXLEEO390qKpDpYnjTIo55uD+Le/de6Tnv3Xunnbn/AB8OB/7XOL/9zk9+690pu2P+Zp9lf+H/ALy/96Kp9+690gPfuvde9+691737r3T3trES7g3Ht/AwNAk+bzeKxEL1UjxUyS5Kvjoo2qJYvUsYLguy8gXI59+690aPO1jZXP7gywj8S5XcGcyiQ6i328WQyktXDTa3OpvEjrHqY6jpuxJJPv3XumvQ39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+690kuzclW4/Z+Bw9NTyQUW5MvlMpl8jpiIr5duiOhxODSYRiRI6QVM1ZNEJikz1MDyR6qaBh7r3QBe/de697917pdbvFsB1afwdg15/23Z+5ffuvdYt69db067rKah3ng2wtTWrUSUS/wASw+Uiq4aaURSTw1OFqKmPSSVZLuCyMsigo6sfde6RXv3Xuve/de697917r3v3Xuve/de6NZ8avi/kO7I9zdj743BF1T8Z+qHgrO5+7czC5x+Fg/Zlj2XsujCSyZjdGRE9NT0GLooJ5EkqqUyQyS1VBSV3uvdTPkH8nabsLAYrpfpbbdb1L8X9nVUNVtXrmV6I7l3hnIYxHUdldxZfGtIuT3BWkK7RColpKFFip6UyGI1M3uvdFH9+691737r3Xvfuvde9+690u8aP+MZbzP8A2ffWQ/8AXf3bb37r3SE9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690YLvoWx3QP+Px92if/AF6c57917ovvv3Xuv//T1t/l3uzK5T5DfInAVNJtWGgp/kB2ZNHNi9h7FwWXLYfeeWxtIsm4cJjaeveNo5napiepKVEojnqFlmiikT3XuiuaB/j/ALx7917oWehce+T7v6hxcNRR0k2V7L2RioazJ1C0eLopsnuOmoIq3K1jcQ0sLSCSpmIIjiVnsdNvfuvdNFXjsjt+Gq8GC2zttaOT+ApursDG5zcNVuqselq6bO5TZWxa3HyUxxaSHx0+TyeMlVo1ppoRFVySxU3uvdDHQdhVlZ1jsfpHamO232XU5rf8u/t47KpdgbhxmE3N2Odr0ez9lZ3aqYisx1XT1FHQ0ELZDHY6gx8FTlNVXMcrSzQ0eM917oFN3773luuKix+6MlkZJsbT0dJloZanK04zmZxFRXCn3FuPDVEzUv8AFo466opXngpoAELDxq8k7Se690hDEhIJFyPoSASOb8H/AGA9+690LhzXa3aL0f8AC6fJ1FBhNi7Y6kqDtaglwm1cZsradLDX0eK3ZkKYrSQ07T0hzmTqcvUiN6vy10zrpBT3XumddpbSw6Rzbr31QzT6MXUNt7YVK278oRVM8tXRVmflejwUHjSPxyVVFksgY2ljdKaoCyovuvdLuGr2jjuo6zc22NgYWj3DT9g0u213JvGqHYuXbC5HBzZd6BsLmKWn2z6TTBDVNt16khyYZaYreT3Xuge3DuTcO7a5MlufOZbPVsK1MdNPla6orTRQ1dR91U0uPSclaeF5PWYYFSPVzpv7917pi0D/AB/3j37r3XtA/wAf949+6917QP8AH/ePfuvde0D/AB/3j37r3XtA/wAf949+690LnfEYHbW8xc8VtD/T/nT0/v3Xugj0D/H/AHj37r3XtA/x/wB49+6917QP8f8AePfuvde0D/H/AHj37r3XtA/x/wB49+690LfV6D+C9z8n/mUlV/vO/wDbw9+690Emgf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917r2gf4/7x7917oRN6IP7s9RDnjYGV/3ntTcvv3XumnaG3N45StizO0IMjTPgK6GrfdsVXFg8NtOux4XJQZPL7xyD09BiRT6UnFVW1cKR2Vi44Pv3Xujhbo3LR7uXqFNzbH7gjx2Iabdmc/ge09t9k9VYvPbXyibn2jvPpnb7V32uXFXlqjOruuoy2atUxViUxdxjo1k917oKKE5KjwOf2v2LX/3D2hkuz8N2diesa6CnyfZlfufIVlXiI6iPH7grcDRmijofPST5ffFXBSQxTT1eLgmnq8ik2+vdHkxM+L231p27vPpnN5Pc2Xyu8qibubtPI7qzG6Fz+8dq0YMuzNr5iJIWrth4vHZZqfA1k6Q0tWlSuOeCSGSpmq9de6JhIyPI7x01HRxs5ZKTH0sNDQUqE+mnoqKnCxwxIPSkaKFUAAC3v3XuuHv3Xuve/de697917r3v3Xuve/de64SRrKjxuLo6lGFyOGFjYj6f6/v3Xujide924rcFJT4rf2Wgw27IRHTLubKzeLCbvGsJHW5jKOBHjsmVP8Alc1Yy0tQyGfzwyy/bj3XujGxUtRS4zc8NVDLTzJT4MtFMjRtpbOQOjgN9VYcqw4I+hPv3XuhIfNde/xDaOS/iWJhqaDbWxtuZWvwuxt1ybpo6/C9Tx7Hj3Nmp9xTjFZBMFloYcnSU+OjRqhIkXQ7ev37r3QkUvbm1YpKCTJ7vym4qufE7Uwe68xW7L/f3LT4LrnO7eytRV0tekzCKrys2HqvCrhyEWR7mKQH3XuknkN+bMqFzOWgzNVHkMjDVLvHa/8AcxUoO40zfWuOwSrUZmnCpi5sRuKGuzEhmiiWdpPuKZ3qHKe/de6Vld29tSNMxDh8/XQTVG2t87SxWUj2jT0NVQYnc3V2HoVgp54YDPDDVbkoayWoKP5g0vnZvC7j37r3SeqOytn00ySYPIOMd9luPI7Ow9TtO1V01U5PrLJ7afZdLka6GWPLLWZmfG1/3MRakX7dJ5Qs4ce/de6CTsPI4TMb43XnNtJIu3M1uCuq8RK2OkxkUpljjqq5FpmAVJBJI0ksS8jWGsAw9+690jffuvde9+690H/Ya3x+I5/5eNcf/VOIe/de6Cvx/wCP+8e/de694/8AH/ePfuvde8f+P+8e/de6VWx0/wB/fhOfquc/H/Zr1x9+690kIUvDEb/WKP8AH+0j37r3WXx/4/7x7917r3j/AMf949+6917x/wCP+8e/de694/8AH/ePfuvde8f+P+2F/fuvdcmheNmSQPG6Eq6OjI6MOCro1iCP6Ee/de64+P8Ax/3j37r3XvH/AI/7x7917r3j/wAf949+6917x/4/7x7917r3j/x/3j37r3WOaP8Aal5/3W/04/sn8+/de6rX+Qhv3z2/wi/7/iuWyIsa+ijp0B0rYXNrsfybk8kn37r3QP8Av3Xuve/de697917p23LncrvCtx+Q3LUrlanEbX2nsrEmampIoMZtTY+34Ns7YwdBSUyJFDDT0tOhfQgaad56ucyVVTUTSe690n3oaKRXSSkpnSQIsiPBEyOI5VnjDqRY6XVXW/0YAjkA+/de6F3rrdW8p977Ax77vzrYbG5qjfJUuWz1ZPhItk4yobPbyoa2DJTClaF8XDWwxR1TCO7JCHjUrb3XuoCp6VvwbC4BuAbc2J9+6913oH+P+8e/de6E6vynWGydi7QOT2DmN7703pjNw5ds22/n29tvb64rdcmFjw9Jh6LHPVT1kVNBTz1QnfxItajxy1BlSOh917oGM9vfcW4cYcDNLQ4bbDCnEu1dr0QwuDyH2cs01FJuNw8tdmpIXqJnikzdbWGItaDxRrHGnuvdJP37r3XvfuvdCPun/mVHQh/6vHyP/wB43JtP37r3Qce/de697917r3v3Xuve/de697917p429tjcW9c7iNobQo1yG6dyV8OI2/RPUYyjjqMpVXFMs1Xm5qajjjBBaR6mojjCgl3Uc+/de6s3es6k2Xlz2B1fgcTsHsDcnXG3se2N6SzM67B2TuSHO47dQr6bK5GM+SuoanHIlLXYNhFX0c5TJKMgktVP7r3ReNy9cdbbzrI8lUUFR1fmZa+umylV1ftKjzG1c9Dk5paw1lZsLO7hxdLiKqmncEfwCWKkmhLR/YQyRxyN7r3ScToLr/QkE3bW81q2gMb10fSmHkwkVaymRKg/7/j75qRCBHJoozObmRIWsI2917pc7Q2xHsHYNRsyXcVBumtzXYD7/razBPm4du4+ko9sx7a25QRUOdpKSU18kbVFXXuYrRFqemBZqdnb3XunL37r3XhpuuuKGdAyl4KmJKimnVWu0NRTyArJGw9Lowsykg8H37r3Q+7c7Z3lLhuwt15zM5XcOa27uzrTeW1aeWvmw2Hxu+chk81TLuCqh28aOUQU1MhjjoqSSENGkdGrQ0sk4b3XugmzOYot90ODwXZ8eTz2B2xFDR7VO2229tnMbOwkLTSttPasgx81HTYWSSZpv4YKTxQzDzU/iaSpFR7r3TPkehNs7p2NSZbrEbvxtfsDYu5d3dt7m7Kx38L2dmRQ5gfaz7Oze3f4jSUkccMkOMpKTKSwT19daKmaSpqYqSP3XuikaB/j/vHv3XuvaB/j/vHv3Xup+MyOSwlfT5TDZLIYjJ0jO1JkcZWT0FfStJE0EjU9XSskiFkZkJVhdSQeCffuvdYoausp6eupKetq4KXJxwQ5KmhqJYqfIRUtUtbTRV0KELKscyJNGsgIV1DizAH37r3Ql9ul03Jh6ZZJRTt1j0bM0IkfxNLF0pgaeGRoybFkjtGht6UAUWUAe/de6CrQP8f949+6917QP8f949+6917QP8f949+6917QP8f949+6917QP8f949+690uuu0Az2SPP/Hg9qf8AvsMx7917pC6B/j/vHv3XuvaB/j/vHv3XuvaB/j/vHv3XuvaB/j/vHv3XuvaB/j/vHv3XuvaB/j/vHv3XulTVoP7k7eHP/H07x/8AdTgvfuvdJbQP8f8AePfuvde0D/H/AHj37r3XtA/x/wB49+6917QP8f8AePfuvde0D/H/AHj37r3XtA/x/wB49+690LneiA9nZs8/8WvZ3/vFY737r3QR6B/j/vHv3XuvaB/j/vHv3XuvaB/j/vHv3XuvaB/j/vHv3XuvaB/j/vHv3Xuhf6mQfZdx8n/mS+fP/r44Ef8AE+/de6CDQP8AH/ePfuvde0D/AB/3j37r3XtA/wAf949+6917QP8AH/ePfuvde0D/AB/3j37r3XtA/wAf949+690KO+UH9yOlxc/8eVuP/wB+hnffuvdBdoH+P+8e/de69oH+P+8e/de69oH+P+8e/de69oH+P+8e/de6mYylx9ZksbS5LKRYXGVeRoqXI5ueCrrKfDUE9WsFdlp6THJJUSpSxl5nip42lcKVjVnIB917q6zqLpCZcDD8iO9N5ZXr74g9d4wQNg8picVsHM95b26/qaXGYnr7b/Qu546fGQLumtp6vIRouuX7xvFQyiedsjR+62CRkdFn7r3J3Jvyum7i3ltHsPYHV3am48rH1lia7G5zA9bjCwrLXYLbmGaGKlxWUrY8dG001ekbtWtHVT07tTRaYfdeJJ49BFvPY9H2H1dld50VfR1nYfUuOhrtzYr+E5SgFb0zTZjFbQwuUzm5IoIqWryNFk8tS4+ijNaKlsYiwBx9lRwv7rXWTePbfU+4cnm91YPZu9agVG0NrVy7Joq+lxG1tg5AS0+3cptjHZVaaqno9v7fjjpMbtyWUV5roammar/h1RG1E3uvdZ9v5nDVW3aneuP2jRybYnzOW692viN1GszlXVbjx+Kxe4twbw3XubAjDpHVwU1ZDHhcLQrHCY6mokqxUNj0qK33Xuk0FAA/JH9ogaibWLEj8n8+/de6jbt2b/pAwuBkxdftvHbo2rTVO3/sc1k8Xtlt04Wuyj5Xb4ospWpT0LVNFUVNfBVVOWrYylK1DEs321KEg917oLp8Jk9v7C39hc1RVWNymN7H66pK6hqk8c0E8W3t1/UfRlIsyOpKupDISrAn3Xugw0D/AB/3j37r3XtA/wAf949+6905QZXJ02LyOEp8hVw4jL1GPq8njY5mWjrqrFJOmNnqYB6WaFamoCEjgSN/X37r3SjTsXsGKuXJw753bBklpMFQ/wAQg3DlIa5qXa7atuxyVcUokf7K7CmZmLIGZQQrsD7r3SHjgjiRIo1EccaLHGiAKqIg0qiqPoAOAPfuvdc9A/x/3j37r3St3PUlNwUFX9tQSNSbe6/K009FBNQVP2myMZpWvoyAs6yaf31f/OAsG+vv3Xur8en/AJF9L96dbUO+OxvjhXbT3LNWZbCVu4+p905XbmPj3BgfG2HbZm08pUQ498LHRyUdI0T1bTUTwSQaZV8E0nuvdFN+U2Qw2wRgdy/HXrrsDZuLyfXm+z2LLsyqqMJtnC5/FbmxMGE7F3LtzbMNXhWfw1Zp66tysLzztUwLHVUj0OOeP3XugkoOzOnt2YjB93ds7U7S6z7Jk3VS5LbfZvWUmbbGbsl6gwuFpdt7H2PkN1T5Wk8tBi12/LXz5yCprZ8jJ/FavPSJV/w+L3Xukl3juzKfIjdG/KPo3pxuw9rYil2RuGq3/s/p7dlVv7bWGx+19FbjdzVuKWpWgx8eQnrqaSWqQpOaWIwVH2sUMae690Xqq6I7EpOocd3jJjsfJ1/kqtqWOqp85iKjN0qjOzbajyGS21FKa6mo5K2EwQ1k0CwyM8ao7M1h7r3Sp+Mu9d27S7GfEbcztXjcVvzb25Np7wxYjpazGbgwFZt+raeir8dkI5YS4GtIalUE8KySiGRBLIH917ouxVFBJayqLksRYADkkn/e/fuvdG+2P8Muw87HBXb8yeP6uxlRSPOlLkII9y731z0S1GOB2RjqmnFOxeSMVVPl8jj54VEg8bTx+A+690OWM+EnVlTPQ0ddv/sSOaenSjqMpS4/aMdDDkpleJcmmCryhaFHaJzSSZuEEKwariDeRPde6ROwqCir+q6j4v7Xpqup7o3dv35IYk0GT2rurHV9JBujqDZ+M64qt3bbOByNPPFNXYvcmAaefKRx7Zr5X3BFNJT0cde3uvdWp5Lpz+5u9N47j2Z0517n5c9v75Kbvotw/wAN7XxGWxGL72l29WwV+zuztt/xL+5G5MLFiJMXR5HHYKQ0EMcsmP8AE9RUS1vuvdAdjY+3+h94VFR8dqjufbu3qTJZo42AbQ3LV5TJR1+am3Bma7svb9XjHxGQqshk6/IVtLO9ED9pLA8dPjvTSU/uvdGY2xuvuPvrpv5N0XefXsO5sJszYWGrurds4Pp2XbPYND27naisodq1nXsOOSmmloaHxGXOrKk8oglC62pmq6eX3Xuqw4MZjoS8MdDSU8tJLPSVFOKGKnmo6lYxTVdLPTsqtFIFURyRuoYABWHFvfuvdcaqnxNJTSTVkdBBSxU8NPI88NOkK00L6qenOsW0Kx/bT6An0i59+690fXObkqviX1f1htzrzbW2ttd/90dR5HdnanaFdfKdode4Hd+Xhm2ztraSSDw4gVNNHMW4I89Is8tO9UizD3Xuib7l3FuLeefym6t3Z3Jbl3Nm5oajL53MTmqyOQlpqSPH0xnl4AWKCGKCKNFVEjRURVVQPfuvdMnj/wAf949+691DyCWoK43+lHU/j/my3v3XujSdS752d1f8oaHfe+YK18Hgtzbhhhr6OYQjb2TzkT7fG4ciPHMZKOGiqq6GpVIXeMTCpjBenVW917qkz5MdLbt+PPffZnUu9srT7hzOIzr7jpN1UeMyOGo937f3uW3Ph9yU+MyhaSB3+4lpa2FZpo4q2nqoYaioijSZ/de6A737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdKPPf8Wbq3/HrbMf8AwQfYA9+690nPfuvde9+691737r3XCWWOGOSaaRIoYkaSWWV1jjjjRdTySO9gFABJJNgPfuvdDPt3oXszK5fMUO5tuZrq3EbXjrpd2bn7O2vu/bOOxDY7LU+CqcLjqCagNXlMzJV1MUNLiKKFpXOuSRoKeKWdPde6can42dwTZCmpdnbcj7Tx+RrJKPG57rap/jNEZft6Wqp6bcGNyS0eQwlVKKyCGOny9JAJajyU9LJUyRt7917oUPhRvTtHB9zP1rthpxtHdaz1Xdmzdw01Rj6fGYDY9BUyDdU9PVrFVY7PYiavWmxYshqKmtjx1WhpqxynuvdWsrcKoa2rSurT+nVb1af8L/T37r3XL37r3Xvfuvde9+691737r3TsB/v3pz/2cGO/3nFVo9+6900+/de697917rFLPBTrqnmihWzHVLIka2QanN3I+g5P9PfuvdLGi2DvzJU09ZjtkbwrqSmIE9TSbZzU8EbFDLpMqQFbhBrPPC+o2Xn37r3S3yHVm3NpNSUPaXcmwuuNwZOigrMZtuoVtxZlEnhEwfO0lPVUj0FOT5IY65lkpZpopYoZpGQn37r3Scn3L8WNs1E4qt4dldqVFDPHH9ntTa8m2sHmIgrO1VT1md+weOJmCKyLlTIFJ06j6h7r3TM/yhwW20iPVfRmzNrZHTWyy57d2Vr995SGsqqdIIv4dNPHTVUVMgEiy0TZB4JQQSilpfJ7r3RS8lUV2bytXns9ka3PZ6vAFfnMzO+QytYquzpFLWTksIkLN4oE0xRg6Y0RQFHuvdOMGf3HSbcq9n0u5dwUu0q5DFV7Xp8zkodvzQtN9y8BxCSiARtJeR41QKzEswJJJ917oz3yAik3f8f/AIn971hyOLkh2W/xv3DS7hgqkq8tkeqEyE+I37QZatVGq6PJQ0uRmnnkYgO8KxtJ+6/v3Xuioy4+vp6LDZOqx2Uo8XuSlra7beUrcZXUeM3JQ42s/h2SrdvZGpRYa6GnqP2KiWld1jksjkMQPfuvdR/H/j/vHv3XunvbUf8AuepOfpi95H6f02HlT7917psoMfXZXIY7D4igyOYzGWqVosThsPj6zLZjKVjRtKKTG4vHJJPUS6FZykUbEKrMRpUke690r9y7C7O21hdv7p3ttHf+28HmDUba2vl944jPYWOriixUvlwOJXOCOZKdqGSpEdOqLDJAZxGHjEwHuvdJWTI5ec45qnOZ2rbDY8YfCNW5rK1jYPDBXRcJg2qpnNFQgSygUdLohAkkAT1vf3XuvR5DLw02PoYM7noKDD5GXM4THQZzLw43BZuoN6jOYHHxTiGhrpCAZKykSOZyFLOSot7r3UyLcO6aetmylPu/eFPlqnIVuYqszT7s3HBmqvMZSnFJlsxV5iKqFTLV1kKiGsqpJTLPGPHM7p6ffuvdQo67JxUwoosrlIqEU1XRChiyVdHQiiyFQlXkKIUaSCLw1E0cc1RFp0SSIjuGZFI917qVLndyT1ZyFRujdFVkbYRf4lVblztVkgm2JRPteNcjUVDTBMW6q+LQPajKqaYRFVt7r3Q6UHeG3qX4y53oKp6m27Xbny+849zr2xNVRnMAjcEed/iVZTyUzVL5KCBGwtPLFWpH9kw8gIWWGo917oo3Zu0qre/UnZm2cTg8pufctRiNuZjaOAwInfP5LcmB3xjZUXEUkLWq3ix02TllofHJJUQiWOmQ1RgI917qp2GaKohiqIJElhmjSWKWNgySRyLqR0YfUEG4Pv3Xusvv3Xuve/de6hZL/i3V/wD1BVX/AFob37r3S/7K47S7cH9O3+2f/fi5P37r3SN9+691737r3XvfuvddEhQWYgAAkkmwAHJJJ9+690aHonqnemM7A6m7Kz64XZe18Hu7Hb9Wfd+WxOIz+SxOxK059Hwu08o615OUqaMY7E1wgU+aRaykMvgRj7r3QmREmNGKPGXGto5JnqZEZ/Wyy1MoDSMCfVIwuxux5J9+691k9+691737r3Xvfuvde9+6911cXtcXte35t/W3v3Xuu/fuvdPWeylNkxtcwJPF/AtkYrbFX9wIlWWsx+eyuWlqaYxu14Wjr41UuFbUr3W2kn3XumS4te4ta978W+t7+/de679+691lr81JszblfvGKqkoc4Jo8PsV42iWqO45WWbI56kRnWQJiKLXIKuNH8FbPjx6WfXH7r3TRtHDS7f652nHP9mTvGbNb5x4pX8jw7dpstUdd46nq9DaI5f4jg8y3g0hli8LtdZY7e6905e/de697917r3v3Xuve/de6dcJgs5uXI/wAJ25hspnsn9vJWSUWIoamvnp6KEhZq+sFOrCCnQlVaeYrGCQCwJAPuvdGS6Y2F2Vs/c9dU5ykbbu0q3blXJl6GTcG38rSZ/IVUHh2vBDicDX1XiydJUFat56iBZaaliqaWVoGrEV/de6MT7917r3v3XunSnX/cLlm/P8T28P8A1Vyf/FffuvdNfv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917qBk8vicLQQ1+TmrHWsqp6Oho8ZBFNV1r0sSy1koqKl0ghih1xxySsXdXkXTDIA1vde6B/P7oy24tUFTLHTYlMhJkKPDUkFLBSUk5gFJFLK9NHG9TMsICGoqNTm7EaQxX37r3Sa8f8Aj/vHv3XulFtYUMeVnkycNRVY5Nu70evpqSVaeqqKJNmZBquCmne4SR4wyo5FlYg/j37r3RYOyepe19/5M5bIdi7R3DRpDkJ8Vg3yWc2xitrxU0iQUmCw21clTtS0f3MQSRFx09SrMHarqWqC0knuvdJXMYqq6N29sLG702d0b2hhspvOv7FUeHOPu6OtwOCbbNRsncu4fFj5ZdvPLUU2SbGSQVdDU1NPdX0Gthm917p8+V3YtbvPI7exGd2t2BQbmxldufPZXdnacWNO7s5BuSpg+3xdFksVU1seRxtNUU1ZVJlGqyaiermRaekWntL7r3RQ9A/x/wB49+6917QP8f8AePfuvde0D/H/AHj37r3XEhAwQsA7AsqlhqKrYMQv1sLi/wDr+/de65aB/j/vHv3XuvaB/j/vHv3XuvaB/j/vHv3Xulv2Jho8NueKkjSWOGXZXVGSiErBnYZfqTBZSZtQAuPLNJp/wta62Pv3XukRoH+P+8e/de6dIoa3DZGKoEcf3mJkpMhNDrhqvsZYaqJRT5WKBmMEsU7x09TTT6JYZiYJUSUFB7r3WXcWVrdx57M7jyiRR5DcWVyGfrBTw/bUpqcxVvkZ2pYOdMRaQmNQSAtgCffuvdM2gf4/7x7917r2gf4/7x7917r2gf4/7x7917qdi8jU4LJ47N0DyJXYeupMrRvGT5EqsfULV07R6bHUHQEWI59+690bnc9BHjNy7goIUmSnpszkRSJURtFULQS1TVGPE8bKpD+B49XpHP4H09+690x+/de697917r3v3XupNdTJicdjcrnMhi8BQ5lBNhZMzUzRVOapTLLB/EMXi6GKorJaPyQSxfxD7cUnkUxefyen37r3Tb2BLt3D7Kze39wZfaW4clkWxuS2VQbN3NtrelVh82a+nFfuep3btCor8dR0UuLhnoazEyVUlVUzPSNNR070UVXT+690V3QP8f8AePfuvde0D/H/AHj37r3S73eg/gHVguf+PAr/AP36G5ffuvdLSn7G2tnupsl17v8AwOQq9x7ZpKWq6e39hZElyeHrBm6b+L7N3pR5Cojiq8HVYs1SU9RTj7yiqafHRx+Whjkpx7r3SY2ZguvdyYvJYTO7hyWzt8y18dRtTcGTNPU9cV9EmJqWn2xulKWnNfjKuqrUo48fmkknoozJImQgpqe+Rpvde6DVQrqrAOAyhrMNLC4vZlIuD/UH37r3XLQP8f8AePfuvde0D/H/AHj37r3RuPjX8YqTtTHbj7g7f3LXdUfFrrKeAdj9piiWpyebyzTwij6u6sx06OMluTJCURoyQzwY5WWoq45Gamo6z3Xuu/k98pqrvKm2h1lsHasPT/xk6lD03T/SOHqjUUeMmaKSGs3xvbJXaTMbkyBnq5qjIVcszwmqqgkstRWZKuyPuvdFG0D/AB/3j37r3XtA/wAf949+6917QP8AH/ePfuvde0D/AB/3j37r3XtA/wAf949+690u8ag/0Y70HP8Ax/fWP/vP7u9+690hNA/x/wB49+6917QP8f8AePfuvde0D/H/AHj37r3XtA/x/wB49+6917QP8f8AePfuvde0D/H/AHj37r3XtA/x/wB49+6917QP8f8AePfuvde0D/H/AHj37r3Trha2jxWSp6+twmL3HTQpUrJh81LmYcbVGelenieok2/V0FWDC7rPH46pAXRRIHjLxt7r3RgvklW0uUj6DqqTAYHbVOfj1tJIsZt3+8JolX++GfkWWaXdGRylVJNZgjv9yFIVbRq2pm917os5QAE8/T37r3X/1NZT5YpJB8nPkbMyMIqjvPuWqpJCpEdXTR9mZaiaoppPpJH5oJoS6EjXG631KwHuvdPtR09s/D0+/clW7glpKvq/c+2MEuD3/DjcbtjtaPKx1W55K3GZ7ZedOQopGwtDUHIbZx4qsjj5zHSVORpclUQUnv3Xuu+v+xKDdHbvTdHH1p1tt3DYTf3npaLbeAlxeSyFRunJ0xnrdy7lSZq/KNQzxipxdLWTNRUpLU8NKlFI9M3uvdFjCqpYhQCx1MQACxChQWt9TYAf6w9+690oNu7O3Nveqlxe1ts5ndNTG1DFV0mGxNXlvtf4pUmixxrxSo6wpPMDFE8xVWcaQSePfuvdKL+5eBxEDPuvfmCx9QiOEwWzIouxM6rRZFaK7VGJqabb4UxeSoWP+8QmATxyRROyg+691kXd+1sPFUQbX6/xL1Ei5aCHP78q33xl4IauphahqKfDGKhwAaGOF1WKsw1Xbzyq8kxWKRfde6YNx7z3Vu51O48/k8rBDLDNR46epaPDYs01EMbSQ4XB0+ijoYYKYLS08FHBFHFCFhjVY1Cj3Xukz7917oXoB/xgPJG//NYMMCP6W2VXWP8Asef9t/j7917oIffuvde9+691737r3Xvfuvde9+691737r3Qu98cdtbzH/TbQ/wDunp/fuvdBF7917r3v3Xuve/de697917r3v3Xuhc6vF8L3P/h1HVH/ANiBt4e/de6CP37r3Xvfuvde9+691737r3Xvfuvde9+690Im9P8Aj2eov/Ef5X/36u5ffuvdKjceX3H23szE1lFSV09X03szD4rP4OlyQOCh2dg4abauC33t3a/7cFC8SNR47cUVDFqlnaLMSGZ63KSUfuvdGWwXV3XFRuX+K47F0eytibRw2JqY+69sbw3Nt/d9dtWfGfxXCbxioMjUZE1e68vFT1QGMpKOjpIqiV8a8NJURQP7917opHbeK2ngd6VmC2nT5en/AILTU+N3R/Fc5R7gEm9oHkbc4x+Ro6WlDQwTsKORyJFmqIJ6mGT7eeGOP3Xujs/FmgxFB1GNy0NNmP8AIt3Z49jYHt/DYub4+9p5DM4KrwXWWL2oYGkr5qrCRxZOfcdUtJNDTrPTffwz0I0e/de6Tm3ev87uTcOVn3vQVm3cLs3P7dwnZU+IwGy9sVOBXJ5GOhgoqagxy4zBwVNYjKtBUgeOskmp3pUr5aiCKf3XugwrP4Q2QyMeCyi5fDxV9XHi8l9vPSS12NWdhQVc9FVqk0LyRaGeKWNXUkhlU8D3XusPj/x/3j37r3XvH/j/ALx7917r3j/x/wB49+6917x/4/7x7917r3j/AMf949+6917x/wCP+8e/de6Nx8atz5CowW+uvp6mWso8VjMHurb1PUyl0wGDo879juugxbSA+KnmrazC1CU3lWKN1qGhi8tVOze690Pnv3Xuve/de697917r3v3Xuve/de6GfNd47kznSe1ujajB7agwG1sumUhzlPSyjM1a09XU11HEIifDTzeSpkFVVxXkqFLKwXySmT3XugY9+691737r3Qe9iqDjsR9f+LjXf+4kI9+690E2gf4/7x7917r2gf4/7x7917r2gf4/7x7917pWbEQf3wwoueUzo/8AXYrvfuvdI+FB4ouT/m0/6FHv3Xusmgf4/wC8e/de69oH+P8AvHv3XuvaB/j/ALx7917roooBJJsBc/T8e/de6aYez+ptnb2bB723BlcXkcDlqGjydPX7LztZgYZavHRVZrquswlT/E/BQTTa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fuvde9+691737r3Xvfuvde9+690I2yc7mtsbc7Lz23cjLicxQ43YC01dDDSVNoqjs7GRVVLUUmQjmp6iCVDpmp6iJ4pBw6Hi3uvdGf637Fy2+YKKPL9fZjEtUwZgf32xEdcdg1tdg6JslNAIa+JnpZZo45acxx19Qi1fhjAQVSRQ+690KOhf6f7yffuvde0L/T/eT7917r2hf6f7yffuvde0L/T/AHk+/de69oX+n+8n37r3XtC/0/3k+/de69oX+n+8n37r3UDJYSgz1MKCuURrreSnrQxEmPlZQr1SlmClQqjyK/pKg8qfUPde6LooBVSVsSoJFzwSL29+691y0L/T/eT7917r2hf6f7yffuvdKzYiL/fHCcf2c7+T/wA8vXe/de6R0KjwxXHPij/r/qB7917rLoX+n+8n37r3XtC/0/3k+/de69oX+n+8n37r3UqiakgraOatpnrKOGrppayjjmFPJV0kc6vU0qVDLII2kQMgkMbaSdWlrWPuvdEn7y6+oNnVVLmsp2n/AH733viuyW6Mlixsur29URYmvydXE25stVipmoYJaythqI4MXQmYRLHIWeKH7U1HuvdC58b9x1ed2RuPaddNQ1B2HVUeZ28jV9Uc7T7e3NXyxbgo4cYUeJsTSZNqepM6vCaesyTh1qTkFak917octC/0/wB5Pv3XuvaF/p/vJ9+6917Qv9P95Pv3XuvaF/p/vJ9+6917Qv8AT/eT7917r2hf6f7yffuvdS6aXb1HHV1u8p8NSbBggt2BLuWSNdtTbNdr5/H5yCY2qYqilE0S0UavNUMRHTxvMUU+691S6vjsfCHWEsxgWTzaxAWPhD/c3kvptfyHV/qub+/de679+691737r3Xvfuvde9+69077ebHruLbr5ar+wxMe4cHLla3zT0v2uLiysMmQn+7pVaWHTCHPmiVnj/WoLKB7917oze+tv0WR3FFV7exDbuzeXmpqrdeKxm+dqdd1Uu6d10v8AeqrxuydgZfCVLrj6WGYxYrJY3I5airacQVoSm+5XHQ+690id07TzWx8ht2bNba3FhKbcuCx29tu4jfe38ltnOVm2qzKVWKhbNbfyAgqYR95j66jdrCOfwtNSyS0ssE8nuvdddayeDfG0qaRJ6ylyWXo9uZWkEscTZfBblP8AdvcOIqpWsvhrqGqqKSpF1DRSuupb6h7r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3n37r3XtB/w/3n37r3XtB/w/3n37r3XtB/w/3n37r3Qw9VIRg+7b2/5k9VgfX6nsTbnv3Xuge0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvdCRvdD/dfp0cf8y7yv/v290e/de6DfQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+69064JCM3hzx/xdcf8A+5ae/de6dN8ITvXeB4/4+ncH/u2m9+69077O33JtDFbhxC7Z25mYtwVWHyLV2QObo8tj8jgaatpcZNS1uEq6VZohHkKpJKeviqIwHZoVhmPl9+690eheqewd/bOxHd/SfVG68j1NhoBgot1bIxubrtxYPdm3sZS5LelZuyh+/wAjmKaqSor1dchSvLjkppKangqmminjT3Xuh6+BHVHx87o+QmQynaW16vK7q2ptzeG+t1UtLnM3SS42r23iKOowu99ldabIws2Sym8DlEetajq6k0ylMhWvS1tbLQxUnuvdJvFfI747zbI2bumm/lw9GPjtxHclFRVG4dy9h4j+JptrL/ZDJ7brRBURZTHrHLFQ1FVHLrgyFPWUsykpHLL7r3Xf+zM/Hn/vXB8bf/Q/7A/+offuvdKrDfJHoFto9mVcf8vD47UlPR4vYZq8dDv3fz0+eWq7KxtJTU2QdqMGNKOV1roSgYtLGqsFUlvfuvdJX/Zmfjz/AN64Pjb/AOh/2B/9Q+/de69/szPx5/71wfG3/wBD/sD/AOoffuvdTMf8tOmduVLZna38v74/7ZzcFHkKSDM4jsDegroaPJUbUOUo1+/xk8Riqqd5KedWiN0c2s2lh7r3R+Ie5usIYKaOp+JPT1fUrTU33Fcdyboovu52gVpJhRw0zpFcn9KsR+eL2HuvdZP9NfVP/eH3Tv8A6F27P/qX37r3Xv8ATX1T/wB4fdO/+hduz/6l9+6917/TX1T/AN4fdO/+hduz/wCpffuvde/019U/94fdO/8AoXbs/wDqX37r3SfzPY/UWekher+KvWdNDTKfDQ0+6cxVUKTMCslZHFX452SZ10xuyvZlVQRxc+690zf3p6U/7xY60/8AP5V//Wz37r3Xv709Kf8AeLHWn/n8q/8A62e/de69/enpT/vFjrT/AM/lX/8AWz37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uvdB525sjrXbPXHVW4er90Um9Nvb73d25UUGay2LGJ7RwOF2/QbX/h/XPbdFTTtSJm8JWV+TjkqKCnWkr6aSlyFI709RH7917oGdqpbcNHe3/Fp3t/X/AJ99lvfuvdC98XdvbX3J3htbH7u27j960dHg98bj2517lauKjx3Zu/8AbW0qrL7F68q56lXitX10azLFURyQTtTrTTw1EU7QS+691G7pp8ZXYzqnetRBuvbfZ++sDvWo7g643puTMbnz208/tfdaYDC7pqJdxQ0+Qxq7pUV9euDqqeJaIU+mlhipHhB917oDNB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+690I20Oj+6Oz8bHV9bdebh3BS5KvlwOL3AKVKTbf8AHDItIsUmVrmjR0hmdROYBIQVdAGkRkHuvdDT338xt/fHbsLM9CfHLJ9eJ1Z1/tzaGCqaKPb75FaXs2hRchvOskq6Krgoq7JwzCFaypyFFNOuU+5krkNfDIqe690Tn+aXsjtL5IL1V8pNl4ncPafxho+pIp4MTAdu7hqOgd0TV/j7CG9NpYaaorIJq5aTEtls3JFJHFUQihd6WGnpY3917qmKtWJcVWiFY1i+wqTGIgoj0mnYqUCcWt9Le/de6Ebs/wD5mx3H/wCJn7g/9+XlffuvdIr37r3Tvt7b+a3buHAbT23S09duLdWcxG2sDSVdfS4qjqMxnchHi8dHW5StIipofLKhmnkNkTU1mtY+690bfa3XXUeJwtNS1mzoOzJsjTQfx7du5dwbwwZy8AdK6H/R/h9p1OJl23RmaOFkmnmrcpPB5o6irhp6xsdS+690tMFt7p7audwW6ts9LYnFbn2rm8RufbGXftHvPKjD7l27kY8zt/MDGZjck9JUGkrIIahYamF43KBXUqSPfuvddMzOzyOVMkkjyyFUSJTJK5kcrHEAqgkmyqAB9ALe/de669+691737r3Xvfuvde9+691737r3Xvfuvde9+690rt5jSeuf8em9rn/199zD37r3SR9+691737r3ThR5jO42hkxWL3FuTFYmaskyM2IxO485i8TLkZhabISYvH1EdO07jh5jHrawuxsPfuvdDftT5X/JrZOPo8Pt7u/egwtBAKWlxW4Y9vb2hip4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8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8AeffuvdGM+QaH+GfHf6f9k57Ov9f+etz/AL917ouLIQrHj6H37r3X/9PWx+WnHyq+TQ/8CE7o/wDfkZL37r3RfffuvdCl0hz3H1cP+z+2r/7uoffuvdBb7917r3v3Xuve/de697917r3v3Xuve/de6GSD/snzKH/v82D/APeHyHv3Xugb9+691737r3Xvfuvde9+691737r3XvfuvdDF3/wD8zg3t/wBR1D/7pqb37r3QO+/de697917r3v3Xuve/de697917oYOq/wDix92/+Ifqv/fibc9+690D/v3Xuve/de697917r3v3Xuve/de697917oSN8f8AHr9OH/v3WV/3jtvdHv3Xug39+691737r3Xvfuvde9+691737r3Trguc3hx/1dcf/AO5ae/de6c98f8fpu/8A8OjcH/u2m9+690l/fuvdGt+Mvbm+euDumj657L3l1vvN5aHdmCfbWayFBQbko9t4fIx7uwldQQO8E1SmOnORh+4pWhNNR1qyusv2tvde6OXuD56fKPem3N07LzO4tuZb/SVg32FurJYDrnD4XsPd+Czkn2FRtenzm0EpalZcisxoy+OhjrJTIBHKJ/G6+690gOw6Kj2/1LtfZVTg9q0lRtHceMpMLV7S3vuDdE+1chWYSuqux+sc1R5uKaiFNQ5w1phrsNlqvzzRB8g33Th5fde6Lt7917paYP8A48Ptr/tV9cf7x2tij7917pF+/de697917rhKpeORAQC6OoJFwCy2BIFv979+691ZZtXdmF3vt7F7jwkreKppYKXJ4+TmqwWfoqaOLMYWs/1XjkIlp5gAJqaSGYBS5Rfde6UHH9T/ALYf8V9+6917j+p/2w/4r7917r3H9T/th/xX37r3XuP6n/bD/ivv3Xuvcf1P+2H/ABX37r3XuP6n/bD/AIr7917r3H9T/th/xX37r3XuP6n/AGw/4r7917p+2vb+P47k/pyX4/6s9R/j7917pL1lA2VxuRxUVRT00+Rx1RSU01Yzx0i1Uig06VM0auY0dgEMpUql9TWUEj3XugOOyt4rqDbXzYlTXqpRRO9cdDFT48fHed72LIUjIdbOmpCGPuvdYBtPdhFKy7U3O4rjpohHt/LytVPcARwJFCWZjcaUAuwIIBBB9+690wkE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tdEb7roMri960GNzdBV4vK0PWvS9NV4+vh+3q6Xx9PYIU6ywnldcPjkW/wBVYN9CPfut9BJ7917r3v3Xuve/de697917r3v3Xul71xzn8rf/AJ9523/vHVWZPv3XukF7917r3v3Xuve/de697917r3v3Xuve/de6VlZ/x4u3P/Ds3p/7p8B7917pJ+/de697917r3v3Xuve/de697917r3v3Xuhj7847Tzo/6tWyv/eGxvv3Xugc9+691737r3Xvfuvde9+691737r3QydQ/8Ae6f8Oj9w/+9vt337r3QN+/de697917r3v3Xuve/de697917r3v3XuhX35/x4vSH+Oxty/+/V3APfuvdBR7917r3v3Xuve/de697917r3v3Xulz1yL7wwH/AGuMV/vFfGfYO5//AOVP3H/nmn/6tN1kl90T/wASP5L/AOl1tX/adB037y/4+DJf9RlV/wBbz7f5K/5Vex/5oRf8cXop+87/ANP25p/6Wl//ANpUvSW9irqA+jr/ABM+QW0+qqPd+yt+5LflFt/eJFbTZGi3FW5PYu3MjjKZJaWSbq+jpleStyDo1NVZqOvkMcQp4vsJAjTp7r3R5tgdq9Ydp5KDAdf70ps9umbCnOttObC7jwudSmpqCXKZimpv4xSQ0ddUY2mgmqchHjKypEUEctSGamikmX3XuhHrKCsx8nhrqSro5bXEdVTyQORe2pRLa4/xHv3XuonH9T/th/xX37r3TtBb+A5Xk/8AF625+P8Aq35b/H37r3TTx/U/7Yf8V9+691Lo6+ux0rz43IZDG1ElPU0ck+OrKmgnko62BqWuopJqR0ZoZ4neGeFiUkjZkdWRiD7r3Uum3BuCixk2DotybjosFUSyT1OBo87l6TBVM8slPNLPU4WnnWlkd3pKN2d4iS1PAxJMMRX3XupUG7t3Us09RSbx3hR1NXk63N1dVR7pz9JVVeayUQgyeZq6mmqVklrKqNVjqqqRjLMg0yMy8e/de6TwCgWF7f63+3JN/fuvdOuIwWe3FWHG7a2/uHc+UFNUVn8K2zgsruHKfaUoBqar+HYaKebxR6lDyaNKllBILC/uvdHh7N6M7n3n118VNo9adc57NbbxnS+K3Lkmo2weE25B2Bv1hl9w1uXqtxVFLVx17hPLVCoTREZykKhpJUHuvdI7d3wX7025lJsXhBszfk0G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jDYqnesymXyddlYqWgxmNo4/VLUVErpFDEvLOyqOT7917oZu68Tvjpj5CZbdFPPRU2Ui33F2p17u7FwUu5NrZSOq3NUbh21mcPU5mkegyP2ddRVePyNHUU0iQZLH5LF1kP3FDWQR+6904b6+SG55TkMH1Rurs/ZOwsiYMjR7SqN75aLD7F/vPshYOwuuOtNtYaojxWH2zHm8tuykxppKWOsqsHU0tJXuC1fHVe690WJVVFVVUKqgKqqAFVQLBVA+gH4Hv3XuhF2FtDB5s124N856r2l17gXjTLZigxZy2fz+SkXzQbN2FiJnhhrctNHaSV6ioho6CFkqK+eLzUcNX7r3TZnd65TK4mn2nQNPhNhYzL1uaw2zYK1qmigydZEKSTPZyqWOH+J5iSnWOCfKTwodCiClio6JIKOH3Xukd7917pZ7f/49bsP/ALU2A/8Aezx/v3XukZ7917r3v3Xuve/de697917r3v3Xuve/de6X28v+LB1P/j13XX/9Gtuge/de6QPv3Xuve/de697917r3v3Xuve/de6WXWn/M1Oof/ExdR/8Avx8X7917pG+/de697917r3v3Xuve/de697917pW7D37vbq7d+C3/ANc7qzuyN7bZqzW4Lc+2sjPi8vjppImp6mOOppyNcFRC8lNV0soaGogeSCeOSGR42917qyf5Abyw/wAivgZRfKTcnX+0No9+VPyz2z0x2rvLYND/AHcw/c8GF6g3DvrF9g7s2bSn7Cl3G8uTmXJ1+PjiFbIzu6LAtFSY/wB17qqv37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3RjfkH/wAWz47/AOPxy2d/71ufHv3Xui3yfob/AFvfuvdf/9TWz+W4C/K35OAfQfIXun/35GS9+690Xv37r3Qp9H/8zk6t/wDD92r/ALxmYT7917oLPfuvde9+691737r3Xvfuvde9+691737r3Qywf9k95T/xM+D/APeHyHv3Xuga9+691737r3Xvfuvde9+691737r3XvfuvdDJ8gRbuHe4H/K9Qf+6am9+690Dfv3Xuve/de697917r3v3Xuve/de6GLqkA4Pu+/wCOnasj/X/0i7cHv3Xugd9+691737r3Xvfuvde9+691737r3XvfuvdCTvj/AI9bpv8Ax66y3/v290D37r3Qbe/d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KTKYKrpKiVYKfyyOaanMXuvdN1JTY9uo9y1NQV/izdn9etjnaNpJ5aGj2huuLNK1TY6VElZQsVdgXJBUNocr7r3Qd+/de6VextpT783VitqUmb2xt6bJVmNpZszu/OU2AwGHhymWgwtPkctXTB5FgFRURK3ghllNzojcgj37r3R6Nubc6i676moMdvXG9n4/Edr1tBtLetAcLt7bPZku+Nkbn2/tn5E9LIm5Y8tDFlNo1zbd35siXIYfB08tDlc3hsnmjmKOKAe690Xz5L9u767E7C3lgty1WKp8Vguyt75f+Cbbop8Xt+q3pk677LeO9Bj6iWVo6jM10NXmJ6WJo6GlrMhkXxtHQR11RC/uvdBT1xiNh5ndVPD2bvGt2RsiioMll81ksPgK/c+58suNp/NTbS2bh6VRTNl8pIVpqOfL1dHjae7z1lZGsaxze6909YTa2L2fJtjdnbODy5wGax53LtfYkNTJis52Fi430Y2urMkEEuL23VTK0b5dYhUVyRyw4lL+fI433Xukju7dmW3rnJ85lhRU58MNBisPiKOPGbf21g6O64zbm28TD6KWiplZtKXaSWVpaqqlnrKioqJvde6TPv3Xuve/de6Wm3h/v1exD/TDbf8A953nj/fuvdIv37r3Xvfuvde9+691737r3Xvfuvde9+690v8AeY/37/Ux/r13X/7x2vuj37r3SA9+691737r3Xvfuvde9+691737r3Sz6zF+1eoAfoe4+oh/t+yMX7917pGe/de697917r3v3Xuve/de697917r3v3XurGVA/4aOqW/P/AA4/jB/sP9lhrj7917qub37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3RjvkKLYz46/4/HHZp/8AXuz/AL917ot7C6sP8D7917r/1dbX5dWHyv8Ak8B9P9mG7pt/rf6Scl7917ovPv3XuhU6MAPc3VgP0/v9tW//AJ+YffuvdBX7917r3v3Xuve/de697917r3v3Xuve/de6GaC3+y85T+v+mjBf7b+42Q9+690DPv3Xuve/de697917r3v3Xuve/de697917oZfkHb/AEx74t9PvqD/AN0tN7917oGvfuvde9+691737r3Xvfuvde9+690MfVH/ABYu8P8AxDlXb/0Y22/fuvdA57917r3v3Xuve/de6979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a9/dWrvKo3HLh6Gj2LD1/Pmf7x7NpOuspkqfsvKblw22MjsbA9nYXDVe6KCWfamUf+J7YjyFIYDHULM0aVZpfde6fOiIvkT2FtDeOX2h3Lj+sNi7V371xt3c1fXpn8JtnH7i7YxWcTFbu3TNsTCVtNjMTR0u1poszn8qYYqZWoow0uoLH7r3Wavpvm7k9yZyjjy+/t2Z2LfFLtHMVdLO1TW1+9M5vWj69mCx5mKnramIboyVJt+pywgNGMpPHStU+aaMP7r3USpxfzWo4MRV1NXuiKgzkuSjx+TbcW0v4SVwu402Vnaqtyy1JpqSnx+empdvZCqq5Y4aXL1VFiah48jW0lNN7r3QHZntju3BZ3KYrcO4ty4bc2DylZi81jc1josfnMPmsVUtRZDHZSirqdJ6eqppo3hmhlVZI3UqwDKQPde6i925TIZve1Bl8tWTZDJ1/W3TEtdXVBBqKmWLp/BUySTMoAZhHGiarXNrsSxJPuvdBH7917r3v3Xuve/de697917r3v3XuhA60/4+HK/+I77d/wDfUZr37r3Qf+/de697917r3v3Xuve/de697917r3v3XulbW/8AHibb/r/e7ev/ALptv29+690kvfuvde9+691737r3Xvfuvde9+691737r3Qyd/wD/ADNXPW+n8J2Tb/0BcZ7917oG/fuvde9+691737r3Xvfuvde9+690M/TwBoe7L/UdG7iI/wDQ3277917oGPfuvde9+691737r3Xvfuvde9+691737r3Qs7+t/cPo231OxdzX/APRr7gA9+690E3v3Xuve/de697917r3v3Xuve/de6XXW/wDx+OA/7W+M/wDc1PYO5/8A+VP3H/nmn/6tN1kl90T/AMSP5L/6Xe1f9p0HTdvL/j4Ml/1GVX/W8+3+Sv8AlV7H/mhF/wAcXop+89/0/bmn/paX/wD2lS9Jb2KuoD697917r3v3XussE89LPBVUs89LVUs0VTS1VNNJT1NNUwSCWCopqiEq8ckbgOjoQysAQQR7917q3b4z9p9o9w7Xz24t9ou5qTB1UeDym/WyGzYMxFvCWf7/ABOMz21tuUlFWRwZXEO81DmsmtRLka7GZotVu8TRx+690cTZGdj2rlMFu2Sklr12j2V1huz+Hw1K0UmQbbGQr88tAla8cwh8xpxF5TE+jVq0sRb37r3TxiezMhty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V3Zkd5Q9jZDdH82bP7hrew6fb9RtOn35V5roLL5Kp3nTbVq6PHS4yPKPI1dHjpaCmamWUQtTwlDGvuvdVQ6G/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P8AeR7917oX9v8AfXcu2dnV3XuM7B3JJsOuocRjW2ZlshJntp0tDg98p2Rj6Og21mzUUMMP8aEldNTpTiKZ5qjzJIJ5Q3uvdIvdO78xuw4uGsixuNxOCpJqLA7dwNBT4jb+FhrKt8jknoMbTekS1VTJJPPM5Zz6IVZaaCmhh917oaPkSpOM+ONh9PjZssH6fX+9+4PfuvdFrKNY8fg/kf09+691/9DW/wDl7/2Vl8oP/FiO6/8A35WT9+690Xf37r3Qq9F/8zn6r/8AD/2p/wC7qH37r3QVe/de697917r3v3Xuve/de697917r3v3Xuhng/wCyd8p/4mnBf+8LkPfuvdAx7917r3v3Xuve/de697917r3v3Xuve/de6Gb5Cf8AM5N8f9R1B/7pab37r3QM+/de697917r3v3Xuve/de697917oZOp/+LF3j/4hur/9+Ptv37r3QN+/de697917r3v3Xuve/de697917r3v3XuhL31/x6vTH/iOMv8A+/e3T7917oNPfuvde9+691737r3Xvfuvde9+6907YD/i+4X/ALW2O/8AcxPfuvdOm+v+P33l/wCHVuH/AN283v3Xukr7917oU+msBDmt942vr4oqjBbLWPfe5aWQTN/EMJtzJUzHDKlLU0k4OSq5aTFCaGdWhNSJj6Y29+690NMs1VVSzVVY4lrKqaWqq5VjEay1VTIZqiUIgAGp2Y2A9+691wsf6H/bH37r3XrH+h/2x9+690tMGD/cDt3g/wDFs60/9+1iffuvdIpgbHg/Q/j/AA9+691ZfsYEbG2MCCD/AHI2dweP+YZpffuvdKn37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3T7tj/j4Mb/AK2S/wDdNU+/de6YE/Sv/BR/vXv3XuuXv3Xuve/de6kU8NdKKk0WPqsirU/21bDBhTnKeSlmmSp+2raRoKiPTI8CsodLkpdeVuPde6L5v3ER4Deefw8VE2OipZcbOlC0M1P9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OPx4cSVcxqHp6Ss917pObk3vXZmgO18RHVbZ66o8/X7hwOwYMvVZPHY/I1lOuP8A4zmK6VIf4rmGpI46eoy89PGzKPDTQ0dEsFFB7r3TLtj/AI+Xb3/a8xP/ALnx+/de6Vfcf/M3e1P/ABI++P8A3p6r37r3Qce/de697917r3v3Xuve/de697917pbbd/49Tsb/ALUu3/8A3tcd7917pE+/de697917r3v3Xuve/de697917r3v3XuhB3p/x7vUf/iOsh/79ndPv3Xug+9+691737r3Xvfuvde9+691737r3S06x/5mv07/AOJm6g/9+Vi/fuvdIv37r3Xvfuvde9+691737r3XvfuvdWB9b919QbP2XL1XjO2eyv7lpvePeGC25ub+XZ8J++pK7c+U2VjMFltw1Ff29u2erpq77tMjjqOOCaYfw4Ux8iSTT08fuvdDV3Pgsptf+XT3TtnN0ktDmtu/ze94YLL0VRt3ZW0Z6PKYjo3N4+vpJ9p9bVVbtzFvHLG6Pjtv1tRjaYgw0E0tKkTt7r3VSXv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XujJfIj/i2fHL/wAVt2Z/71+4PfuvdFsP0P8ArH/evfuvdf/R1wfl/wD9lafKL/xYruz/AN+Xk/fuvdF19+690K3RX/M6Oqv/ABIG1P8A3dQ+/de6Cn37r3Xvfuvde9+691737r3Xvfuvde9+690NMH/ZOuU/8TXgv/eEyHv3XugW9+691737r3Xvfuvde9+691737r3XvfuvdDP8hf8Amcu+f+o+g/8AdLTe/de6Bj37r3Xvfuvde9+691737r3XvfuvdDL1N/xYu8vr/wAyZq//AH4+2/fuvdA17917r3v3Xuve/de697917r3v3Xuve/de6Ezff/HqdL8f804zH+x/4y/un37r3QZ+/de697917r3v3Xuve/de697917p2wH/F9wv/AGtsd/7mJ7917p133/x/G8v/AA69xf8Au3m9+690lPfuvdDb0XUyybg3Nt2FY55tz7HztNSUUkTtJVV23ZYN7xmimRlEdSkWLnMKuxE12p0SSomgX37r3QoBwQCASCLggXBB+hB9+6913q/2lv8Abe/de69q/wBpb/be/de6WeEN9hduGx/4tfWnBHPHbWJ9+690jNX+0t/tvfuvdGq2p8iNt4Tae18DktnbomyOAwdHhKurxeawn8PyH8N1QUtfBBkaczQs8AiEsTSOodWKMEYIvuvdGX21l4t07cwW5qHGZWhos/jYsjTUuSWnmq4VeR4JY3qKECGQLIjhXjAuBYgMCB7r3T34Zf8AlWm/6kt/xT37r3XFo3RSzwSKqi7M0RVQB+ST7917rhx/qD/yT7917r1x/qD/AMkj37r3Xrj/AFB/5JHv3XuvXH+oP/JI9+69164/1B/5JHv3XuvXH+oP/JI9+69164/1B/5JHv3Xun3bFjn8d6benJ/UW/5c1T7917pgUjSvpP6R/Z/w9+691yuP9Qf+SR7917r1x/qD/wAkj37r3SS7Bhjqdk1iuFj/AIfuDA5GK6EtUSzU1bizCDey6EmaTVa/1UcM1/de6L8FCgKoAA+gAsB/sPfuvdd+/de697917r3v3Xuve/de697917pU7XwNDl03Tls1VV9LtrYm1v757o/g/wBmM9V4j+9WK2fFjcDLklekhq6iszFJGlVWo1PAuqWVJAvjf3XuhPm6x2RuDYNXurrrd1YKw737Nx+38b2XMuLzec231x0The4cxt0Y/ZuNr6M52jNTmYZslLX0eLqhTQRwiGepiR/de6Y+1+n5Nj5TeWGO4sLSx0dVuPHbKoM3Nnpc32HDt2ux+Bzs22psVh/s3kpqzKUyGnrXo5pVWdqaGb7d7+690K+9vjLvZ+19x4ebcmyMbjM5n6Kp21u3LnfdLgcvJvUZvNYXF11PTYGfI4iqSDA5dKs5qgpKeKWnCLUSLNC7+690A1VsbJ4nGZDMVORxL1W1MpsCi3ztqFc/DuLZQ7N2zJvTYdZlZa6ghxs8WQx8LyA43I1MkMhRJ40JJHuvdVQd20McHd/ar0xyYo4+yux5KT+NhhlZaLJ7tnrsdPUkqobXAUkSRRpdGR0LIwY+695dB1v1P4Rhdn7eepEtdkYq/sHI0QhmjbD0W5qSixm1IKmSVAGmraLHtlURGKijqqGcFhUjT7r3QY+/de6jVlVFQ0lVWzkiCjpp6qYgXIip4jLIQP8AWB9+691b5svZ7/BfbHb+J2vuTGdj/JD5DfCDsDrvclZicZv6gxHx9l7Pekrs5tvC7spqQbSmmw8WHqRns3mNxUssNXSeSCnpaalMWW917qvLG7P2NseixkGYgw3ZeeSSRazBUWV3Pi+t9v4qilSmx+MjzW1arEZbMVtTGss01RR1lHR0imGOI5B2lkh917pfbR/u9Vf3vm2V0zhKTd0tFj6jD7ig3LuLJbY6wxtBlqevy2WlpO063MUkJq4YjRHKZTJRmnMoEE0Ykkin917rtfkZnurc7Xbq2J2TWZXtNUjWk3ttzM12J2L1vmcqkgnyeFoKJqSlzW4qaKpiGLqWpjjMbUSGog/iFVFTml917orI1cl5JZXZmeSaollqKiaV2LyzVFRMWeSR2JZ3dizMSWJJJ9+691jnngpopKipmip4Il1SzTyJFFGt7apJJCAB/iT7917ryTwySTQxzRPLTmMTxJIjSQGVPJEJkU3XUvqXUBccjj37r3QqbvZf9Dvx1Fxdc18nSw+pUS7p2gsRe30DFWCk/Uggc+/de6DD37r3XvfuvdOGIpcdXZbGUeYzq7XxFTXU8WU3I2OqMucHj9eqryUWKpopmqZY0B8MJjKPJpEhWMuw917oeN4UmSzO4t57mpNvzU+Leui3Rkp8XXf3pw2Not6Vcddh8nNunHxR0stPkZK2B6WrVIYp2mQRRpqWMe690h/fuvdL3qr/AJmn1j/4kXY3/vUUnv3Xum/f3/H971/8O3cf/u4m9+690kvfuvde9+691737r3Xvfuvde9+690MW1/8AmSPbnH/MY9Rc/wBP8n3L7917oHffuvde9+691737r3Xvfuvde9+691737r3Qn9uf8fNhOLf8Yv6Z/wDfSYXn37r3QYe/de697917r3v3Xuve/de697917p4wWfym262fIYiWnhqqnC7j2/M9Vjsdk42xW7NvVW1s5CtNlIpolkkoqyojhqEQTU8hWenkiqI4pU917pn9+691737r3Xvfuvde9+691737r3XvfuvdK6t/48Pbf/h3b2/9023/AH7r3SR9+691737r3Xvfuvde9+691737r3XvfuvdDR8gv+Zr5/i3+4nZH/vB4z37r3QL+/de697917r3v3Xuve/de697917oaum/+AHd/F/+MF7i/wDe327z7917oFffuvde9+691737r3Xvfuvde9+691737r3Qt7//AOPC6L/8MTc//v2dw+/de6CT37r3Xvfuvde9+691737r3R6f5e24ty/7MDh+pqCriG1e6cburFbmxVbFW1NHU5jZPWm5N3bE3BTUtLU0ynI4usSdKSWQ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s7WwGMSKjxuNpA7/AG9DRwxxIWd9PkkkZvde6SHv3XunzbH/AB8u3v8AteYn/wBz4/fuvdKzuT/mb3av/iSN8/8AvT1Xv3Xug39+691737r3Xvfuvde9+691737r3S227/x6nY3/AGpdv/8Ava4737r3SJ9+691737r3XQIJIBBINiAeQbXsf9h7917ru/4/P1t7917r39P8SAP8STYAf659+6910CDyCCLkXBvyDYjj37r3TnX5nKZOkwtJkK+pq6Pb2PmwWChnkLw4vHS5er3HNjKIHhENZkKyrZB/bmdv7Xv3Xum337r3WWGGao1mCKWfxJE8nhjaTxpMQIXfQDYOSApP1uLe/de6xMQt9XpsdJ1cWN9Njf8AN+PfuvddMyqLswUE2BYgAk/Qc+/de679+690tusP+Zs9O/8AiZuoP/flYv37r3SJ9+691737r3Xvfuvde9+691737r3R9cX8mfhdi8VhqSu/lu7TyeYoMTiqWv3DJ8vPkXiarLZqix8UOTz0dHjJI46Q1NUslVHTwNanDrEsj6PI3uvdDr3D2LN3B/Lg7h7bqMRHt+ftP+bpujsmbAw1zZSHBy766HzO6JMNFlHhp2qVpTVmBZzTxGQLr8aatI917qpX37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Rk/kV/wAWz448W/5xs2X/ALH/AH9+4OffuvdFrP0P+sf969+691//0tcH5gf9la/KP/xYru3/AN+Xk/fuvdF19+690K3RIv3R1UB/z8Daf/u6h9+690FPv3Xuve/de697917r3v3Xuve/de697917oaoB/wA465Q/9/rwX/vC5D37r3QK+/de697917r3v3Xuve/de697917r3v3Xul52du6k33vvcO7aGiqcdSZmoppoaKrniqKiAQUEVIyyzQqisS0ZYWUcED37r3SD9+691737r3Xvfuvde9+691737r3QzdS/8WLvP/xDNZ/78fbXv3XugZ9+691737r3Xvfuvde9+691737r3XvfuvdCbvv/AI9Ppb/xHGY/9+/ur37r3QZe/de697917r3v3Xuve/de697917p2wH/F9wv/AGtsd/7mJ7917p135/x/O8//AA69xf8Au3m9+690lPfuvdKHaFXmqDdu1a/bdIlfuOg3NgK7b1DIdMdZnqPL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baHv3XugY0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvdCdvxD/dPpUcf8y3zH/v4d1e/de6DHQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6907YCMnO4UXH/F2xv9f+VxPfuvdO2/UJ3zvM8f8fZuL/3cTe/de6Seg/4f7z7917rpotSlWCsrAhlYXVgeCCCOffuvdHRlyWX3PgNk7zzrS1GZ3Ztmaqy+WmlrKmXcOUwW5sjtKp3BWV1cvkqK6qSgjfJzlnMtX5pneSWWRj7r3TfoP+H+8+/de69oP+H+8+/de6W2CQ/6P+3/AKf8WvrT+v8Az9vEe/de6M38WOheuO18FSZnetDkdxZTJfIvanT1RtWXf0/U4puss511U7lznYfTOaljSPe3YWNygp4odgwvWgUIjmq8bL/E6OeD3XuiaVOPyOMrK/FZbG5rCZbD5LI4fLYTc2NfC7mwuUxNdJjsjh9y4WQBqPI0s0T09fSMLwzpJEeV9+691h0H/D/effuvde0H/D/effuvdCT075I+1dgujBWXcVOAbA21U8qNwwI+hI9+691YksDsVAKXYqBdtIuxsLs1gP8AXJt7917pVbr6+3xsSup8Xvfamc2hk6umFbS4/cVDLjKyoomqJKVa2KCezGJpIpEWT9JKtYmx9+691D3Js/dGzcpJg924LI7bzUMMFRNicxTtSV8UFVH5qWaWna5VZUIeMn9SkMOCD7917p32p1d2RvyGtqNjbF3TvKDGSRQ5KTbOGrMwMfLUI0tOlYtGrMhkVHMYI9Wk2uR7917pkwe1dx7mxWZzm3cPXZvC7doYcnuDK42E1FBhMbUa/t6/J1C+mKJyjqjngkWHPHv3XummKknnljhiUSSzSJFFGDy8sjBI0W9hckgC59+690ot1bE3psTIQYne+183tDLVNGmRp8ZuGgmxlfNj5J5KWOuSmnAYxNJFKivaxKMByD7917o1PU+/O6Nz9EzdDbO6gg3TsiHdWUmyO/sVga2ryOPra1pt4jCTTjTStlZKqWnip6nWZlo5IqZacu8VQPde6LXuTqTtPZWLXNby673htTEfdUuPfJZ7CVdBRw5GsiM1JjqmaQWinkUakil0sRbjkX917pg25tHc+8MrDgtpYHKbmzlRFPNTYbB0ktfk6mKliM9S9PRwgu4jjDO+kGygn6A+/de6V2c6L7jxGCyeVzOzOydl4rCyw12d3DQ7Xo8nBiqCnilp6hc/HNURPTJG8qSFWZTdGDAEXX3XuiU7sgzEG5s/T7grv4jmaHKVGMyOQeVpBUy4gjFRSLLKFPjWKGNIwwGlFVbALb37r3Ql1Hxo+RtJSQ11T0T2lHSVbRrj5F2pWzz5bztGtOcJjqbXVVwkM0Wj7OCS+oe/de6BTS2uaJ1kimpp56SqpqiKWmqqOspZTBVUVbSzqskM0UitHLDKqujAqyhgR7917rvQf8P959+6917Qf8P959+690u9r9Udqb3w9TuHZnWm+91bfpauTHvnMFtbL1+KqcjFOlLNjMVWRRaa+qjlljilpqAzSxu6q6KSB7917pJZTD5fBZTIYPP4nK7fzuIqBR5fA5/GV2FzmHrDClT9llsPk44qmlm8ckbmGeJXCspKi49+690IG0eju6uwcNHuLYXUvYG9MBNV1mPp8ztzbtXkMdWZHHEjIY+gqVsKieDS/lig1sml9QGhre691B3r1F2v1rS4+u7G633lsWhy9dUYvFV25sNNjqLIZSkhaorMZS1ZLRtUwokjSwag66HuoKPp917oM8ih/h9d9P8AgHU/1/44t7917obO2esOydqZPLb03TsPdO3dm7p3jlqfa27MvipqXbu5Zq6Wqy1EmCypvFUmalgmqY/GTqjR2HCtb3XughSCWWSKGGN5p55oaenghR5ZqioqJBDT08ESAs8kjsqIiglmIABJ9+690CPzA+FPzR3V2XsvJbY+KvfO6sfTdQbQwFRU4jYdU9NhczDu7PV7bcytRUvEkFcyV9LPHSzMJXFTCEVjIgPuvdVmbx2XvLrndWc2J2JtLcew987Yqaei3Ls3d2KqsHuXb9bVY+HLUtLlsTWBZIWlpamnqYiRpkhljlQtG6sfde6GHZfxE+WnZW1MTv7rf40dx772Bno6qTCb829tiKTZ2WNDlZcFXQ0G4q+ogpZJYa2CakkhWTWJY3TTdWt7r3Qc9l9S9sdKblh2V3R1jvnqTedRhaPclPtTsLAVW3M5U7dyNbVY3H56kpaq4mo56iirKeOphZozLBNHq1xuq+690ndrbV3ZvvcuI2XsLaW6d+bz3BJVR4LaGydu5jdm6Mw1BRSZPINjsDgYaiqlSmpoZamqlWLRDCjyyskaMw917pedi9A999PUpyHbfSHbHWmJGei2oNwby2LnsVtObds2NmzMe06PeZhfEVGU+zp6irOPpq6SoEMUkpjCRuR7r3QTe/de697917r3v3XuumbSrNpd9ILaYo3lkawvpjiiBZmP4VQSTwBf37r3Rkds9N7Iw++OoNv9v77oqWTe+8qnC7t2ZgJpacbcoVozRbfi3F2LRtULQ09VuRodubhrabHsMaseTnoaiukx07w+690s9/dYdg732X0Ltzd+P2p1lSbNx3ygrNz1W0J9qR7N2H1tid5bYppsxsKpgybQ7kasrxXQ4SeDKVtZm8tOsZqZZJCYvde6RvaO7KPfe/NwbkxOLpMJgJGxmD2liKXCYTbzYvY2zsLTbM2Dja/GbcAoxWU2Ex+PgrZomczzpJM8kjyNI3uvdIHQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+690IHUwdO1urnRtLJ2RsRlYfVWXdVIQRf+h9+69029gRn+/m9vp/x925P/dzN7917pI6D/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3XuvaD/h/vPv3Xuhk2uh/0H9vfT/j8uoP6/wDKvuX37r3QN6D/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3XuvaD/AIf7z7917r2g/wCH+8+/de69oP8Ah/vPv3Xuhc7ri07uwIUKo/0R9Ck2Frs/SG3nZjYckknk+/de6CPQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+690ta6Wc9c7YpTJ/k6b133ULFZbCaTBbcjeTVbVcqii17cfT37r3SK0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3WfP1FU1B11QLW0tElVi8jSCsrGVIKGBuzs0JZ5mZWCwo0xkqJCCUjDaRcgr7r3TJRyyHIZjHtW0eRTG1ssEGQo2PgroFqpqeOrphpW8Evi8kEhALI1mF1Jb3Xuh8+QcZ/0sZ/kf8WnY/wDX87Cxh9+690C+g/4f7z7917r2g/4f7z7917o9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bKb13hQbm3EKfGY3D7SjeF6mo3VVPJ/C8Zi4MJNLOK/U3hh8ki+691TNRbi7S3nvva24O4dxdgbr3amx+3cfS5XsWu3HXV1LS03WW6qTO4zbqbhstHQwZenraWWix8cVPT1UE1N4o5Kd4o/de6CxaWPWk5ih86xCITaF8ojPJQSWvpvza9vfuvdZtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8Aeffuvde0H/D/AHn37r3XtB/w/wB59+6917Qf8P8AeffuvdRq1CKOrPH/AAGn/wCtR9+690sN9If9IXZX047O7JH5/G+cgPfuvdJjQf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+690tN8oSetPp/wAyW2r/AO91uge/de6Reg/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917r2g/4f7z7917rrx2JI0gn6n8mwsL+/de6jVWOpK0QrW0lJVinnjqoBVQRVAgqYv8ANVEIlU6XW50utiPwffuvdGJh+UXe0HxxrPiZHu3HnoytzseekwcuAoptxQaN1Jvl9vUW55CZIsZJmo1ykkKxecyloxUild6dvde6BDG4XMZmaSmw2KyeYqIYjPNBisfWZGaKEHSJJIqNHZQW9K3HqYhVuxA9+69094baeSmjk3Dn8JuLHbAwkDZrde7JcXX4vB0eAoapKatipdyZGFaI1tTM8eMx9Okkk01dNDTQwzTusLe690C24uy92b36l3vR5CTGYjbsnafVdXSbN23QLitrYp6fbu+KmkWjo3aaonkiM7p97kauqrZUWFaiqmEEPj917pH9OYjY+X33jaXsCumhxSoZsViUw+TytDu7cy1UMWD2bnKnC11DWY6gyEjtHU5OlaWSBRxCQ5ki917o1O9sbPiayqz/AGLuvaGFxYrZsFTZLbNDQ1WIrK/EUC11ZtHrXaO0oKSkkixYmgp54qJKXF0LzwRz1cDVMHm917oB9wdw4KnApNj7MimQRTJNuLsGrqsplqmV5meCoxm3Nuz0eOxyJEywyU1VJlWeRGmFUiSLTw+690cfPfNbcWxcf1TsfN9d7RynXtH1T1HuXG7c2hNV7FqMTks1sxKndlbRVhTI07S5KpqJax/uKKVIZpJ3hVTU1Jl917o1uzdz4jsDYm1uxNuJW02E3hSZ2txuPzBohmcemC3XkNozwZZMZLUU6yvNjpJkWOZv2njLaXLIvuvdHRqestt5CMVmDx+45sntfb2zN5bpwNbktxUeUm3puHozH782Bt/alVPNUmaLc+WhzEH3zJHWwVFN/D6JYw9PN7917opPbCVk+9KTb228t2ZtvdmT3f05sms6h2vv3tbrHOydq9wYDtjDRdc1O/KGrsKreVds/b39zNwb5iyGPxdPkqisqKGrxlQaqf3Xuq+N+9Gbd25mul9qY3rjdFFQS9adPdldn76r8f3hiMUmypvirtr5A95Y/clTQ43cEbw1FdNujKLUbdxkcuLipqiNsdk5PG0HuvdFw+T3XlP1x3hvbD4aCWHZefkwvY3WDTV2RyxfqTtLb9L2H1bA2dyV3yE1JgslQUFbWK7o9VBOEdgt/fuvdAHoP+H+8+/de69oP+H+8+/de6HDrWq6kfBHb3ZLy4r+P7y2/TVe5dt485LcuN2vDncRVZ1s02fxdfDj6BaFMl/DsltaU5VKppYsli8zj5aaOj917pUbnpegqnBZORM1gqHO1fc+3oHg60xHZle2H6ixtBldv7rze06rshMfSZGTLzwY3P09Hk6fHTUzTx08cdNA9TR0XutdR9yZ/qfC7O3ntrauO2vmN2rSbH2xS78w1R2bjaLPwUu4915HdW5do0eYhx0rQVGIm2pichT5+hohLNBJURY6aUNWv7rfRb9B/wAP959+6917Qf8AD/effuvdcWiLKy6iupSupSQy3FrqbcEfj37r3V+3X+Sz+4+r+qtw7pocRidz5zYGKyeVxGAxGL29t7GYyeuqh19S4DAYNFo6GlO1FwEqUdOAkTOyaIGBpoPde6ELblTiMTnMbltzR00+1MRUjLbwgqkrpqKfZuLQ1+74cjDjo5ah6ZsZHVLUpDE7tEXCo5IU+691QvlK7JDo/rLFfe1kWMq+yu38vWYhayc4ybL0G1NkUVHkpqNG8MlTBDVVMEVQVLrHLIisFdgfde6DHQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+690+7XQ/wB5tu/T/i+4j+v/ADsI/fuvdKzuVD/pf7W+n/Myd8/1/wCeoqvfuvdBtoP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de69oP+H+8+/de6XG3EI2j2T9OcLtwf+vvjvfuvdIfQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+690uuqvJH27006MFYd0dQAH/g3ZWLU/Uf0NvfuvdIXQf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+691fjkeit67Jpdq9c9S/D/4Kd3/AB3ruveqMlnd5dj9n9L4PvPsyt3f1bgc92fXVPaOf7Eody7arFzc+VgxTYOloKSkjERio6mn5n917oD+/Nj7c62/l699ddbMyFRldnbA/nHb52NtPKVtbSZKsyW2dpdIZ3AYGvq8jj44oKiWakp4pJJ4IkjkYl0RVIA917qn7Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6917Qf8P959+6907YTLVm38lDlaGDD1NTBFWRJDndv4LdGLZK6ikoJjPhNzU1XRSsqSs0Ly07NFIEmiKTRxuvuvdGX+VGZyW4k+OeTyaYWKok+NGzFEOA2rtLZuNhiO9tx1CxQ4bZVBjqMaWkYCVoDKV0q0jKiBfde6KiyEKx4+h/3r37r3X//V1yvmD/2Vt8o//Fi+7f8A35eT9+690XT37r3Qr9E/8zp6p/8AEg7T/wDd3D7917oKPfuvde9+691737r3Xvfuvde9+691737r3Q1U/wD2Tplf/E2YH/3hMj7917oFffuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Q0dSf8WHvb/xC9X/78nbPv3XugX9+691737r3Xvfuvde9+691737r3XvfuvdCbvv/AI9TpX/xG2X/APfw7r9+690GXv3Xuve/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jSLUxmKVpnSlakqvde6MfuP4t9Abw+MPfW4v5c/zC3n2nsHrbbuI737x+FXyE2cNi9t7S2psWqZq7uHZMuPpsVhMnkcDTy1NLX12GxLQzUNVNQPlHqZ6Skn917qp4EEAg3BFwR+Qfoffuvdd+/de697917o4PUHx0fsvqza27trzybwzVd2tU0/ZybFq8FkN8fHnYuH17c2dV5vrzIVcGUy53Zl6lK9KzFUdXFSUlNSQRxz5CtNOnuvdN/y123S4TcW3npIKumy+2Z+z+tewK/Cx46n2ZjN7bR7p3LkKWgwGRopY8lBkY6SsYVqZWigkkWCmyFLVZFKuWoj917pddkZXPx9DdI09a9Rjm37X7u7P3jhZaeKKofe+VxuGoXymRlkQ1CDI0iQ7hpMcJ2pqOHKhUjhq3rV9+690Wz37r3Xvfuvde9+691737r3XvfuvdL7qj/manWH/AIkbY3/vU0nv3Xum/sD/AI/ze3/h3bk/93M3v3Xukj7917r3v3Xuve/de697917r3v3Xuhk2v/zI/t7/AMPLqD/3H3L7917oG/fuvde9+691737r3Xvfuvde9+691737r3Qu92f8ffgv/ERdB/8Avjdu+/de6CL37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690r63/jwttf+Hfvf/wB023vfuvdJD37r3Xvfuvde9+691737r3UvMUdNW4faMVVEJVTCZSRDdkeNx2FnhqjkjIZSQSp0kXUlTcEg+6902U1JTUaMlNEsQdtbkXZ5HsF1SSOSzEABQWJsAAOAB7917ocfkJ/zNjP/APao2N/7wWL9+690h9i7I6q3G258/vXvmDaeK2zhcFX1eKbHS7a7MqqjNq1PXt1rsndMw2/vCp29kEjhyO1xubF12Topo6zG1BlE1PF7r3QL1IoPHuGCsocrJl5MnRTYSsgkWwihq51liqoGUmTzRPBJRSQOGp3jCswBkt7r3Ruegex+ueqvvd4bw2ngd17tw1FvEYLH7x2PtXsva1ZNmujN37W2z/E9o73V8M647eVdtXN1FRVIzR09HK8MVUyGhq/de6F3C9//ABwo5tqZKDprB5igxGw92wRYaq2HtLI487hzPQD9fTbVyGdGSSuyFFkt6CPd9LuszR5TbhVmxVNNJWVVOvuvdJzevbfUG8clssT7foqjD7I2R3Rt3JNSdKdSdNZTsTcG8N49gVnXe9czB0+hoo6/F4Wr68pfs/CtNBJS1kFLJGlHHV5X3Xuih+/de697917r3v3Xuve/de697917r3v3Xuve/de6FzsD/jweif8Aww90f+/b3F7917oK6ammq5khhQu7kABRc8+6SSLEpdzQDpVaWk97OtvbqWZjSg6GKkjx/W2IjzeSWOXPVUaS4egc+uMEnRkqhP8AUAj9lT+ojVbSOYV3i/vvcXcpOW9kkMe2QnRd3C8ZD+K2hbhwxK4qFB0jJ66ce2/KXK/3MeSbP3p90LRLvnncoxccu7POKrZJgxb1uUWGADd232raWmdRM4Eag9ArXZLI7hr5splZXmkmkaQCRi36je5v7lnZ9osdlsY9v2+MRRRqFVVFAAP9X2k5OeufPuN7ic0+53NV5zfzdeSXt9eytLLNKxZ3djUkngPIAABVUBVAUAde9mnQD6PD1Ju7YW+et6rZGV+z292XtXbtLittVGWn3HkMZmtqYHM5jsLNVmzKLCY2qjps2UmmpsjTZaspaOaARz01T9y0tL7917pJV80sOPrJ4E1zxUlRLEmgyapUhLouheW5twPr7917q+jt7C0exNl9L9V7JMub6c2TsmgbrrsWfPVG6pOwosjQxSVGVTNVZeSGAR6JqSgEhijp54VpglDFRwU/uvdALHJJDIs0MssEyBgk0EskMqhxpdVkiIYBhwRfkfX37r3XGO8SokTPEkV/EkbuixXFj4lUgLcfUrb37r3XYLAWDyAE3KrI6qSL8lQbfk/j37r3XZdze8kh1CzXkc6gBYK9zyB9ADx7917rj7917opny/371jJ1B2N1tW0lVuPsnbfYfTlN91iposNF1/m5MRvHJT4vNZqqo6psuaWkatpsjt6nWnjpavIRynJR19BkMb7917qtLrDs3dXUG8aTfeynw0O5KDFbmxNBVZrb2F3JDQDdO2ava9VkqClzcE6Q1lPFWPNSVMYDJKqhvJA00MvuvdB/7917r3v3Xuve/de697917r3v3Xus1PUVFHUQVdJPNS1VLNFUU1TTyPDUU9RA4khngmjIZHRgGVlIIIBBv7917oYu1PkH2x3Thdv4Dsfcsefx+3aqXJxk4jD0Vdm87LSfw9tybsylFBHU5XIinLRJVV0sjL5J3W0tVVST+690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58Hvkv8AGf5ebeXZ3yG7B7xx/bmxN39U7awm5uxanG1WFzu2tjT762/ksPm8PQ4XcFM1RUY3KVbieemq1qBS1EMB917opPbPYHTud2p17190L1LvTrXaO06rde4967l7Y3pt/sHt/t/fm4qqOmxGZ3ZnNo0WLwtFitu4mE43b2GxGLp44TV5GoqDUVVXLUSe691i6U7O6+6+pu0dudtdMSd59f8AaG0MZhpNt0HZM3Um5tlb521mGyOyu19lb+pMLn5KbI4mCrzFJ9hLQSUddHWmOvjngjELe690IGF79616k667j2l8cesez9vb6+QHWsnSfY/cfdXbW3955fb/AEtuCupsz2b1t1b1113t/AYelfctXQY2Gr3Jmp6+tgoacwUlPSTzvUr7r3RTghHAFgOABbj37r3XtDf0/wB5Hv3XuvaG/p/vI9+690Zr46bb+QE+bp8n1Rsjdm+NrV2TpJd0Ynbm7G2tSU9VtDKUVfht3Pu7HzO+z8xg8hV4+XB7wraeOGjnqDC8r0VTXRP7r3RqN3bL29gofkZuLd2zjP1VR1vVWz12bu3ZVHQZ7dHY2Q2zHvDBQ7wqaObxbU31FBT1398cXhZIY6Goqs81Akv8Np6er91roH+3915rfnXnXm9dx1T1ea3NvvuHIVbGaqlp6OFV27S47DYqOrklaCgoKaOGjx9IrlIKeKOJLKo9+630XP37r3Xvfuvde9+691737r3XvfuvdL7qjntXrAf9/G2L/wC9TSe/de6b+wP+P83t/wCHduT/AN3M3v3Xukj7917r3v3Xuve/de697917r3v3Xuhk2v8A8yP7e/8ADy6g/wDcfcvv3Xugb9+691737r3Xvfuvde9+691737r3XvfuvdC73b/x9+C/8RF0F/vPRu3T7917oIvfuvde9+6917/ifp/vfv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XulfW/8eFtrkX/AL3734/I/wBw23rG3v3Xukh7917r3v3Xuve/de697917p0rhbF7T/wAcDlT/AOxDz3v3Xumv37r3Q0/IT/mbOf8A+1Rsf/3gsZ7917oDzS0zTrVNTwNUouhKgwxmdE59KzEagOTwD+ffuvdZ/fuvdepMhhsRm8Nlt0bIpuyNpUMld/eHZVRuLcu0ZMvTVdBJRQVGP3NtJ1rq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jcduWihxeSSkzmAfIIvmp6hEL6UZmgcSU8+iohmjT3Xugx9+691737r3XvfuvdSqGircnW0mNxtJVZDI186UtDQUUEtVWVlRJcpBTU0AZ3YgE2UHgE/QH37r3Q10HWW5OutpZ3f3YfaVN8W8I+4tsYHB7j3jvg9dYPd+9K9ZK/GY2pz+NylIUnpqamlq1ZY6meGKGeoaFKemlkHuvdGv+Qmze4d/dcfHTY27svtLcHdODx/ZddvGnzmXwGJ37uh4K/y7RXastZTY+XIULYqHIVFWaeCOGN6dJK1kljLe/de6CTrXa0/x42PkvkFvfZtVWduvuyDrT4+bGy8FLVQ4Pd24du1FbJ2duHFUzSzSNFSx1sGJpUKySPFPCFD1MVTR+690FW2OgO2945emrNxYXO7dx+cyuQr9yby3PQIlZDUVSyZvMZetwLyU9VJVVMrSftvHCn3EiiZ4EcP7917ou/ZXy36G606U7V238We5957s+SPZ9HtXauyHTrfdGz9x9dUgyr1G8d0S5fdGIoocfCcPNNHAQXqvuZ6CshR1p/JF7r3QP/yrs7VY7A/LDr3HY/Z+9Op9odUL2rvbM53FVNbXZntrDVH8L2ht3bFcZ1hlx0lFVZWsf7jVVNU09PW0lRAjSSZD3XujDbc2/nd0Zah2xtnGVu4txVkE0lLiqDwtW1MVFAZqyrked44ooo0BeaonkjiQcu6j37r3Q0U/x43VkczuLZWD3j1XuTtjaGOTLbr6b27veHMdkbYopamGigXc2Io4GixczzVEICZSopk0yRMJT54BJ7r3QobH6I3XjdrdzbczO8OvaTbPaXTHa3WNfuGg3BX5XC7V3aabIbAyk24wtHAJX2zWvl6LNU1PLIYJoqunceaJxH7r3WudSyiamglEkEokhjcS0swqaWUMoIlpagACSNv1RuANSkG3Pv3Xus/v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6i13/AACrP+oWo/61H37r3Sx33/zMLsv/AMSf2V/vO+sgffuvdJj37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690tN8izdaf49K7VP/r97p9+690i/fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r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SOGpnytdFLJXUlJWw0nlrvde6t83J3D011djKjrnr3bUG64mosnhNz5na+aqtrpEs0QpZUpOycFK9fkcg8iCWoraGUpAywtS5AzxeOm917ooGJxPxUwm2srsvE/DXr/E7d3JhV2pumrxfZfZ1JvbPbUNYmQmxeS7G+6bcdQ0k8aTSNLmdLuod0Z7sfde6GTaPe9btaiouuutOt+s+v8AqHF7P3PtTCdYUeHyORwkG25cHkMpW47MNDVUcFf99WS1VVlPLRqtdJV1ctatTVVEtU3uvdFa7z6A6F7G6w7U7k6i25keluyOtcF/pB3d19S1kFd1Vu3btONe5P7qUgjiXE1cMSVNXEKVKWCSRY6cUMjzvVp7r3VW3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6i13/AKs/6haj/rUffuvdLLff8AzMPsv/xJ3ZP/AL3OQ9+690l/fuvde9+691737r3Xvfuvde9+691ieaKOSnhZx56ydaajgHqqKupf9FNSwLd5JG/sogLH8D37r3U6roclj5EhymIzWHmkUvFFmsLlcNLMimzNDHlIYS4HFyoNri/1Hv3XusUMM9TKkFNT1FVUSsEhpqWCWpqZnP0jgp4Azux/CqpJ/A9+691z+0rvJHAcfkkqZkDw0cmOroq6VWBZTFQyRiZrgErZOfx7917rhJDUQEJU01XSSMiyCGtpKiiqNDi6O1PVKjgEcglefx7917rmlJXSRmeLH5KWlVZGeshx1dLQxiG3l8tdHGYU03XUGcWuL/Ue/de6xKrOyois7uyoiIpd3djpVEVeSSeAB9ffuvdLXfsc8T9XrUUlfRtL0ltd4kr8dX49pFTf26Y5PGtdHHqKtYOFuVupIAdS3uvdI+elrKRlStoq6hkdS6R19FVUMskYcx+WOOrRGZCQQHUFTbgn37r3WFVZ2VER5JHZUjjjRpJJHdtKRxxoCWZiQAoFyeB7917rlJDUQELU0lbRSMCyxV9DV0EzIGKa1hrUjcrqBGoC1wRfg+/de64e/de697917r3v3Xuve/de697917r3v3Xuve/de697917qbjslksPWwZLD5LIYjI0zFqbIYquqsdXQEizeKro3SRQw4YBrEcEEce/de6VsFZuHcG0Ow8jkKzOZ0YvNdSPUVVXUZHKpicVT4nfd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4ziaUTVtaCaegpqmseGCT3Xujw9cbi3buylrOod3bi2a1fvnO03V22361qZMztHO9T4vJY6pqN40HUMVTRbc2/gdq4RdwZzAZeuxeOr4JnjnbHULUFfkE917oCd0NI/RPSjyx+GR9zduNJCXWQxSH+7xeMunB0k2uOD7917oGffuvde9+691737r3Xvfuvde9+690IHUun/Sv1drDMv+kjYmpVYKxX+9VJcKxBsbfQ29+6903dg/8f7vf/w79y/+7mb37r3SQ9+691737r3Xvfuvde9+691737r3Qy7WH/GD+3j/AE3l0/8A7zT7l9+690DXv3Xuve/de697917r3v3Xuve/de697917owna+7cxg6/JbZxwxsdBvrpT4z4zcc8+HxdblJ8Rg+q9q7rpMVQZWtiknoopMlRUFXUGjeKSVqWFHcw+SOT3Xugzpewdw0/XuU6unNBktn1+413jj6LI0ST1e192S0VPicvn9q5GMpPRzZOio6Giysau0NXFSUZmiaSjpZIfde6bdlbuznX+89n7+2xPT0u5ti7q25vPblVV0NFlKSmz+1czDnsNPVYzIpLT1MSVNPE0kE8bxyKCjqykg+690n6momrKioq6hleoqppaid0hgpkeadzLKyU9KqRRgsSQkaKq/RVAAHv3XuhUTuPcUvX+3Otcvhdn7i25s2fdFVs+TNbfikzG2qneU0VTuGWhy1DJBLMJ5aenk8VaZ4laNSqDm/uvdIfbm6cxtTK1Wcws0NNlqnE7lw6132sHkoqfduDqtuZmfGxIqx085o6ypjppYkU0zMJafxSxxOnuvdPm1eyNybR21vrZlAMXX7U7GpcJHujA5rFUmUoZ8ntaapqNo7moGmHlpMpimra9KGuppEkWGrrKZ9dNV1MMvuvdMe3N1Zvab5mbBVFPSz53bmZ2pXzz4+gyEn8E3DTfY5qClGRilWGSenMlP9xGolRHcxOj2ce691M2nvvdeyI91wbZyzY+j31s/MbB3jQSUeOyFBuHaeakhq6jF19JkoZkBhrKWiyVFUxBJ6Wtpaaqp5Y5oUce690j3UOjoSQHVlJUlWAYWJVhyD/Q+/de6Ve+N5ZzsTeW6d+7mfHybi3ln8puXNyYrEYrAY18nmKx62sahwuEhp6SmjLudMUEKqP6Ekk+691nTfe5ouva7q2Osp12Xkt84Lseuxwx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3Xuve/de6fdrc7m24P8Aq+4j/wB2Efv3Xulb3P8A8zh7X/8AElb6/wDeoqvfuvdBr7917r3v3Xuve/de697917r3v3Xulztv/j0eyv8ADCbd/wDe3xw9+690hvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3S36t57b6aH/f6enf/fmYr37r3SI9+691737r3Xvfuvde9+691737r3Vt3x/OU6S60fX3B8Qd09ebp3HubMdTZP5EfDX5Ndw4nD7uGz9qjf3Z3Qubk6wqzTZCkqv4Vhciszy0clTiqeZ6GdHhlb3XupPcuM3Vhf5bHc+H31uCu3ZvfEfzg92YzeW68nSZygyW6N10HQubpdxbkyFBuamo8lBNX1iTVUsOQpIKlGkKzwxyhkX3XuqiPfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdGZ+R4/3F/Gv/AB+M2yT/AOvjuH37r3RZT9D/AKx/3r37r3X/0df35s7zzWY+Tvyf29V0GzoaGm+SnbU6VWI666829npJMNvvM4ukFRubb2LpcjKkkc7vVxPVGOqmEdRUpLPDDInuvdFD0N/T/eR7917oWehVI7s6nJH/ADULaX9P+d3D7917oJtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/wB5Hv3XuvaG/p/vI9+690NlOrf7LjleP+a3YH8j/ng8j7917oE9Df0/3ke/de69ob+n+8j37r3XtDf0/wB5Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P8AeR7917r2hv6f7yPfuvdDV1ErfwHvfj/mitZ+R/z8nbPv3XugV0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3Qnb8Rv7p9Kcf801y/wCR/wA/i3X7917oMdDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de6d9vq38ewnH/L3xv5H/K4nv3Xunbfyt/frevH/ADFu4/yP+dxN7917pJaG/p/vI9+6917Q39P9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7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/AHke/de69ob+n+8j37r3XtDf0/3ke/de69ob+n+8j37r3XtDf0/3ke/de6XHVit/pc6Z4/5rV05+R/z83Fe/de6Q+hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvdXi/C/K777I+NmDh3l8mv5muWh2DunfuzepOnPhF3Fh9n5jG4rY+0Nq7nrOvHXdgauzuWn2yc5nNkbUhqBRx4vbOapcMDVGspYvde6Q/wAg8DUbY/l6fIHbVTmd17kqNvfzmt+YObcW/Nx0G8N85+XEdI5/HyZveu7sWq02Uy9WY/Pk8jTosdTUvLMihXAHuvdU5aG/p/vI9+6917Q39P8AeR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvdPm28vHt7NUWYnwOD3LFR/ca8JuSCsqcLW+elelArYMdUUszeMuJY9E62dVJuoKn3XujJ/KnJpmYPjZWQ7f2ztxB8Y9lxCh2rj6/HUUv+/53LOKqsXJ1lbJLVESCOSfyqGVE/bUglvde6KeUax4/B/I/p7917r/0tdX5i/9ldfKf/xY7vD/AN+blPfuvdFx9+690LHQ/wDzOvqf/wASFtL/AN3cPv3Xugn9+691737r3Xvfuvde9+691737r3XvfuvdDXTj/nHLLH8f6bsAP/XDyPv3XugU9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdDT1H/AMWDvf8A8QtV/wDvyts+/de6Bb37r3Xvfuvde9+691737r3Xvfuvde9+690J2/P+PT6U/wDEa5f/AN/Fuv37r3QY+/de697917r3v3Xuve/de697917p2wH/ABfcL/2tsd/7mJ7917p237/x/O9P/Ds3H/7uJvfuvdIjISPFQVssbFJI6SpkRxa6ukLMrC/9Dz7917q0befxDxdF8oPkVht5dWdqbV692X3rW4yh2DsLH5XbuU2d8f8AcW7t34yr+Ssed3LhtxrUdf7HO3qOkzWSNKKKZshSiTN470NP7r3RY+3OisN190r0r2ThcjkclWb4q93Y7d9Tnqiu2w1RkKPJSLtar6+2FuTB46fJ7cnoaSesi3dg8/naWb7ilgytNtevkpKDI+690bXbHxC2jufDdSbE3RszNYnfXV2d3ZivlCvX2L7Uw3b9JH2Z05Xd2dK4Tf8At/s3ETbaxGWxNVt/cuAIw0k6VkEdMK7+HVjp7917pOYn4kdV5zb3dXZeG2p33nNnbF6g6h3vR7Cwe5sJlOw+vs9338Uf9OfUWV3PmsdsmeLeG3snuaKq23kZsNg8PUYbGiPcGQtQ/c/be690KWwejNo9Y0vdXUMGd2BS1nYPxv2dU1/dPbfXuK3Z1fj9k79+WXUGzsF8kevt47/wOKo6XbE2P3DmFm+2qMgMLX4GTLRZ/wA5jjxvuvdJPGbAq9i02/trU23O7caeltjYLd+4unvkFga6LrDqXceQ/vPuOqxO+O0d9dc0aLQ5+Cmp8vQ7ShwW2Y91jIVmOxm4qzMUVF/E/de6lfJT5U9e/NrsPB7y2B09tr4/bl2zsXH7Sq+tMVV4vKLvmnxLz18eYwu6sHQYulq6rGQ3x8GLmx0MrUqRPSVFWX+yo/de6K6CCAQbg8gj6Ee/de679+690fP437clwfWlRma2hpKfI763JkMtR1yCF8hXbHwsUO3cNR1cqMzpBHmqPOzxQsF1MwkYNphKe690Ovv3Xuve/de697917r3v3Xuve/de697917r3v3Xun7awvuHGgf6nKf8AukqffuvdJ9f0r/wUf717917pH9hq39zqp7HQc1h4NfAXzSRVU0cVz/aZI5GA/orH8H37r3Re9Df0/wB5Hv3XujSda74y+3Nn9NvT9tbe2/tDaXdu+9w9tdYZDs7FUNfvDr7NUmx4q2gqel5ql6nc9NlsZjNyYuBY8VVrDLIxPg8hmHuvdDJ1rL8cdqVvS+78NvHrTb248JvfMZWKvo8rWYHc+C2LvrpXc0tft3suKonqZZavDZqSmwVNU1LI4EkSQoKSrp3l917pK146U3DsDI1u7N/9Z57P0nxk6y23tzDVNdLSb+2rvfrnoXDVGBwu085raz1Wbiy2JylDTUzhZkWnrJBJPTQv7r3QSd9YvYdfn8flOm6HbdTg6XaWTze6tq9X4uPd1B1bg8XlVho8pvnsbZ0tZQZOORKjwy5nKQ4/JQiCNc9TwVdRC0/uvdF80t/T/eR7917r2hv6f7yPfuvde0N/T/eR7917r2hv6f7yPfuvde0N/T/eR7917qFkkb+HV/H/AChVX5H/ABwb37r3S434rf353px/zFe4PyP+drL7917pKaG/p/vI9+6917Q39P8AeR7917rxQngjg/4j37r3Vc/zXxFRR98jOywUEab/AOqupd2wtjtCo74Pai9Q5B8giKqrXTVO1Za6rAB1GpSViWkPv3Xuin6G/p/vI9+6917Q39P95Hv3XuvaG/p/vI9+6917Q39P95Hv3Xul5sHY8e766uqs1mDtjY+2loareW5o6eGvyVPFkTP/AAjbm1MPK6CvzmWalqIsdTu6QRJFUVtZJFR0k7+/de6FLAbuxWyJNxtsDYu18BLuPae7NiVOZzpynYO6BtXe2MfAbliTI7znqcfSV9bj5JaSor8JiMdoEsxooqJX8a+690h/fuvde9+690NG7f8AmR/TX/h1dv8A+97e9+690C/v3Xuve/de697917r3v3Xuve/de6X/AFN/zNbq/wD8SPsX/wB6qk9+6903dgf8f5vb/wAO7cn/ALuZvfuvdJH37r3Rmvit8fqX5G733ZtOsze6MFFtnY2O3hHJtTZX99sjlajIdw7R6sXDCnmrsbSUJ0bnkr0r8nW01AhpdFbWUNPI9ZB7r3Qr0fwYzP8Ac3Ib4yfZGNTB0Wy6HcdPkMFsnembweYy9d0Lvf5IjHba3bUU9FiM5jotsbGyD1WU25XZF6aqkFPV0dPoEknuvdK+s/lv76ipNwZOm7BwMOJ23mOxcLlsjuTbG6tp0eEPXXWfYvZeQzu6cjlofscXiXi2HDjZclVVgjgrMkVfVFQyyze690j+1fgpvPrTZ2/N4vV72+w666x2nv8Azb706nznX0OQyWS7PxPV28dp4U19ZVzeTGT7i2/lsbUVkNP/ABTD1LZERUdoqab3Xui6bW/5kd29/wCHn0//AO4+5vfuvdA17917r3v3Xuve/de697917r3v3Xuve/de6F/u/wD4/DA/+Ig6A/8AfF7d9+690EHv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917pYVv/HgbZ/8PDfH/ul297917pH+/de697917r3v3Xuve/de697917r3v3Xuhq+Q3/M2c/8A9qfYv/vAYv37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vaf+3/u5uH37r3Rerv8A0H++/wBj7917r13/AKD/AH3+x9+69167/wBB/vv9j7917r13/oP99/sffuvdGY+Pfyv7O+NGI7Vw/X+K2Vkou18HjMVkKjduFmy74Kuw0VdTY/LY+mjnigqkEWSqlmoMhHLBI4hayos8VV7r3RXqOmWhpKWigVvBR00FLD5HaSTxU8Qij1yObsbAXY8n6+/de6k3f+g/33+x9+69167/ANB/vv8AY+/de69d/wCg/wB9/sffuvdeu/8AQf77/Y+/de6hZIv/AA6v4H/AKq/60N/j7917pb77L/353pwP+Ps3D/7tZb/n37r3SVu/9B/vv9j7917r13/oP99/sffuvdeu/wDQf77/AGPv3Xuim/NLYtRldhdedtUMaatlZ6p6i3ZGqIsk+O3qMhv3r7MNIqjUtNUY/P4+cNISonotClTKy+691XTd/wCg/wB9/sffuvdeu/8AQf77/Y+/de69d/6D/ff7H37r3Qy4XqWanptm7r3/AJ/F7a2Fuijxu5MdNiiu6927r26GjnytFtfbmNmhigrRaahJz2RxcMc41CWRPH5fde6dc1n6GpoqfAbXwNPszZtHVSZKm2zRVsmTlqctPTpTT5nc246mOOszNcsaCCnq8gWangvDTLDG0iv7r3SY9+691737r3XvfuvdDTu3/mR3TX9P719v/wC97e9+690C3v3Xuve/de697917r3v3Xuve/de6EDqb/ma3V1vr/pI2J/71VJ7917pu7B/4/wB3vf6/3v3L/wC7mb37r3SKqJ4aWCeqqJFip6aGSeeVr6Y4YUMksjW/AUEn37r3Qs5/qLO7c2w258hk8bIsKVhnx8McZYGieKLJwUlWlQ8kjUolvK81JBFKNf28spQCT3Xuhc37P8f4urMzhuu6jb395o8nvDHYOr3Xjdzyb9r8DuGk2j2NtTN5HKYqhrMLC1BJhs9tVhFULVxVmTELRPiZarI0fuvdLnuvK/EvdfcuC3L1bSYvavTsO+OxcDvLrzFYrPQZ2o6/p91vkIe0thZXd9MEirM5gMjKMHtrK5KY4fJYoU4aelqaZX917oiulf8AUr9QfoPqv0P+w/Hv3Xuhn2t/zI7t7/w8+n//AHH3N7917oGvfuvde9+691737r3Xvfuvde9+691737r3Qv8Ad/8Ax+GB/wDEQdAf++L27791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UHVvfC7Lymw9yY3Z+6ete36vF0O116+7vrKlcfmtxwz5mjpa3B0+HWmeojr4MflshJjqxYvde6Ld7917pa75/wCaY/8AiEtqW/8AQ73T7917pFe/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XuhBqNq7m2319m8vnsJW4rEbrrumtybbylUIGoM1gqjH78p48hR1VO7oAHikV4ZSsqWBeNQyFvde6B3sjaeU7Aw+L3TtuvxeSfr7r+PFZnbMcSUu4HwOFz+Yz1du3GSxp4srTUFJWQR1qic1lJSwq4gfHUc1RS+690WD37r3XvfuvdDd3lf77q6//AD4Xpi3+t/cal9+690CPv3XusMNPT04YQQQwB21OIYkjDNpCamCAXNlUXP4AH49+691m9+690ts/XbRpMXi8Tsts3Wpk9vbbq98Vu7sHtunrIt70M1fJkqHZc2PerqKbDRxVUECvJVLPWvD9xPFTq0VJT+691bX1N21uXtTa3xvyuN2diet9pbYyDdSZZj2Z/e3cvd+a616ShoewoNsdYV9JFPT4jHY+twm4MjmsxkZ48NKUNNWz1rUlLVe690YGsyGNwmJz25M5Vy0WA2nt3Obrz1ZT+AVaYnbuMkydTT41Kp44nrqsxrR42CSVBPWTQQalMgPv3Xuqoto/Mjde1O4+2uzxsna2bwHc28MlvDdnX2clrq3x1UmRyGR2/HjewYvDnIXoTkaiOZo6lKeu1GSrpHljpHpPde6LHvfee4+xd37h31u6v/ie5d0ZFsllqwRrBD5BClJR0VDSJ6Kejo6aKCioKOK0VNTRQ08KpDEiL7r3T11f/wAfPX/+I87h/wDfQZ2/v3Xug89+691737r3Qgda9c5rs/cNfgsPU0ONgwezOwOxNz57Kpk3w+2tkdXbHyHYe9dw5QYenq6ox02MxtS0UVPTSSzzGKniRpZUU+690ue2elaXYmyuqe19obtbe3VXclPuul2rlsrhqXaW9MPu7rmbH0XYuzt67LosjmIKKooZcnQVFFUUmXrKesoqqmqBJDOaijpvde6Ab37r3XvfuvdCVnv+ZR9Xf0/0gd4/+6DYHv3Xug19+691737r3Xvfuvde9+691737r3T7tf8A4+bbv/a9xH/uwj9+690ru6P+Zw9sX+v+kvff/vUVXv3Xug09+691737r3Xvfuvde9+691737r3S423/x6fZP/aj29/72+N9+690h/fuvde9+690Zftml6731i+v+xtrdt49asdVdNbE3r1nvPG7vpt3dfbq622LQdR10W3Z8ZjqzG5fbtfHhabP4+ro6/wC6gTISU+QoqeSlknm917pA9k9pS9h7l2bkK3Exz7a672RsHrXbG3sg0CGr2dsDHpSaMvJRppSbM1TV+VyEaNKkE9dPFDJJDHGx91roUPlHH11vTt3s3ujYfce293bY7h7F3r2XQYOfbG+tu9k7Vm31mpN45HZ+8dsZaklx4rsVUV82NauotwVVBXmmNVT1gWYRJ7rfTX8YM9tfA5ztOTdO69p7Uqsv0N2Rt3aS73wVduLae4d7bhgpcTiMBk6WnxuUp42VJajJUVRlKM0K1VHAtU8SP5F917oBtyx+PK1J+925XTKBE67Ux0OLw0PjJdIqWGko6KlbVrLmWBHBLWd9alV917o4XX/YvRez9/w9QZ/F7KzXTGS2zu7qDfHeE2C7azVflzu2SnzI7W/uVis9h2bF4jduOweSppMRicfuOp27jIKJp2yHjC+690TTPYpaHMZfDQ5PC1EcFfW0MOX2/WZGuwDxidooq3D12TiWslpQLNBJUwicpYyr5NQ9+690Zyg7q2dT9gdsbS7VoqzuX48dib97Ar8hLghV4rfO06ncu6Kmvg736Crtxx00uK3KnkGRfF5WnTHZyNmoM/Rlmgq8f7r3QJdu12Fynbfa+V25l4tw7fyvZ/YWUwe46elyVBT7jxOR3hW1uP3FT0OZjhrYI6+J0q0hrIIqhFkCTxxyh0X3Xug99+690t+rf+ZudM/+Jr6b/wDfnYr37r3SI9+691737r3Xvfuvde9+691737r3Vrvxzj60r/h3Twd69J9Rb72jtXs/vPsTrzIdj9s/KTZG5s7U4rAdaYbuOHbi9BURpMbh8LiqrE5OvmyWRknyNREtLjMRVVMdRURe690p+9tpR7A/lz967Dg2zQbLp9k/zj967Rg2didzZneuK2lFtvorOYaLbGK3nuOOLI5eloFhFLT5SviSpq441nnVZZGA917qnv37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Rmfkff+FfGq/wD3jNsm3+t/fLcXv3Xuiyn6H/WP+9e/de6/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917r3v3XurvPhbvra2z+m8FSfGDM/wAzHdm/pMljdxfIrZfTPxD+OHyY682Vv9cNRUmKze08f2lJV0236bMfb5GkpspR1IyuXp8ZTtlIKFcdj6f37r3Qf91ukn8tvuuWOh7JxiS/ziN3yrje5qqtru4ccsnQ2bcUPbFbk5Jqmbc0N/HnpaiaSVq4TtI7uSx917qoP37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Rmvkh/xavjV/4rLsn/3stxe/de6LIfof9Y/717917r//1ddX5i/9ldfKf/xY7vD/AN+blPfuvdB1Q9T7xy1DjJsRSU2Uy+TrMFB/dSjqC25MdRbtqqHHbMzmWpZlSCnosxV5CmpaGV6jVrkgadIYqyhkqvde6XPW21KnZ3f/AE9QVGW29naTIb02ZlcRndr5inzOEy+Ol3UcV9xSVEemWNlq6Wpp2gqoYZrx6xGYZYZZfde6L77917r3v3Xuve/de697917r3v3Xuve/de6GynZf9lyy6al1ju3b7FbjUFbYeSCsV+tiQQD/AIH+nv3XugT9+691737r3Xvfuvde9+691737r3XvfuvdLXsTZp6+3nndnNlVzhwdRTwHKrjjilq/PRRVusY9qiqMWnyaLed72vcXsPde6RXv3Xuve/de697917r3v3Xuve/de6GnqP8A4sHe/wCP+MLVf14+vZe2be/de6Bb37r3Xvfuvde9+691737r3Xvfuvde9+690J2/P+PU6U/8Rrlz/wCxj3Z7917oMffuvde9+691737r3Xvfuvde9+6907YAgZ3CkmwGXxpJPAAFYlyT7917p236b753mRyDuzcRBH5/3MTe/de6Sfv3Xuve/de697917r3v3Xuve/de6GTrz/mW/fv/AIZOz/8A37GC9+690Dfv3Xuve/de6c8JmMjt3M4jcGHqFpctgspj8xjah4Kariir8ZVpW0jVFFWpJBURa0US09RE8Uqao5UeNmU+690cTKpR1UGC3LiaeCmwO9sBSbnw9LSw1dPTY9pKmfC7iwkNPXyTTJHjszRZKgg8s0hkgiinWSSOVHb3Xugc72hWqyWydyrHTpNnNjUNBlZIosgk9dltn5et2lHkKpp2alLNjKTGQH7PRraJpqiP7maWef3XulR8Qd77S2L3ptqs3nT00eL3BRZr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ZJqDI0UpP2O4NuZJ0jWvxlWoJpqyJbXDwyrFURTQx+690hvfuvde9+691737r3Xvfuvde9+691Frv+AVZ/1C1H/Wo+/de6We/f8AmYnZn/iT+yv/AHush7917pLe/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xulrvn/mmH/iEtqf+93un37r3SK9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3TphK3F47L4+uze2cVvPDU1QGyu083U5Ghxe4Me6NDV4yqyGIeKrpjIjHxVVNIssMgSVPUgB917oyn+zZ7zqd0bS3Xmds4vctfsbffWG9NuVO5dy7oy25JYeo+rN3dT7SxW799mSLK56uNFvPJVNZuTJTNk5poaRGl+3p4oU917pKbr79n3Xt7B7ZHV3Xu1MNgdnd1bRosPsufdOI25Sp3t0Liugd01OE2zWVlVSYuloaDFR1+JxFAkdHFNLJHIkiEufde6MJW/KXqnfvUe8cL2PtSlxO+sxXZ2ip6DaWK3hR7sh2lW9GbT6Xpdv8AVPa8ceThxONz0W2YX7GxuVqsZHk6RY6KOLJwpFDD7r3TP118kN55PB9j1WM6e6nyGUj7ar+06vK5rcua21jNo5Luff8AuLuvdOdXdldlcX/CKPEVuAgxyVYyUL1mIqshjq15Wq1f37r3QS/Jnee5N+Y+rTc/SMe6txdab0+SG4chQbag3Bl+uNuZHtbfsXb28afduVrJKyXOPtpFhqI8bhZKP7XE1EWTymRlVXi9+691W9vzfeS7F3TPuXNUm3cblqnEbaxslBtnGjD4xaTa+26TadBVLQPLPI000NFFLW1U0zyVFS0tRK7SyuT7r3SR9+690N/ef/A/q7/xAnS//vDUvv3XugQ9+691737r3Xvfuvde9+690p9m4DLbl3LjcVgcliMPmkTJZrGZLN7nxGzaOkqtrYmfdKyQbjztRSU9PWEURXHL9wss1WYYKfVUSxI3uvdDRuir627U3ntjL5Ps3e025M11Vl9xd3drdx1u686+c7vWHL5CkkfI7cxu5M6+LVG23t2CY4yqnqaiI6jTQVK1VP7r3QPb/wBt4/Z2+N27VxO4It1Yrb24ctiMZuSLHVeG/jWPoqx4aPIVGEryZ6GeSMKamhmZnppdcDO5jLn3Xukj7917oQ+r/wDj6K//AMR53F/76DO+/de6Dz37r3Xvfuvde9+691737r3Xvfuvde9+690JWeI/0R9Xf4dgd43/AMP9wGwD7917oNffuvde9+691737r3Xvfuvde9+690+7X/4+bbv/AGvcR/7sI/fuvdK7uj/mcXbH/iS99/8AvU1Xv3Xug09+691737r3Xvfuvde9+691737r3S324QNqdkAkAnB7fsL8m298bew9+690iPfuvde9+691737r3Xvfuvde9+691737r3Qi73/49vp7/wARtkf/AH726/fuvdB17917r3v3Xuve/de697917r3v3Xulv1b/AMzc6Y/8TX03/wC/OxXv3XukR7917r3v3Xuve/de697917r3v3XutiD4ufETf7/F/ZnXfdeyvmps6Wl7K3r3JtPI/E/5L/AbZGFzu1e1tgbSoMLJuqDsHsGlr6uqEWFaqpHq6NJKWGqeJGKzskPuvdFi71wb7X/ly96balO+TJt7+cjvXBOe0MztzcXZjSYjovO0DnsTcWz6irxGQzxMZOXrsVVzUdRV+aamlkgdHPuvdU+e/de697917r3v3Xuve/de697917r3v3Xuve/de697917pYYXYe6dw7fzm58Rj4KrFbfjrJqxWy2GpcvXQ4mjjye4pttbcrKiPI5hMNRSxZHPPiaWpGKopI63ImlpHWY+691x3XsXdWx3x8W6MYuLqchFUf5EchjKzIYnIULIMntvdGPx80s+HzVEJYGr8Flo6fI0qzQPUUsSTwl/de6Gz5If8Wr41f+Ky7J/97LcXv3XuiyH6H/WP+9e/de6//9ahr5S9obo2v8ofkxt/FUexHx2M+SPfzUrZrqvq/c2TJyHb+Zy1V95nNyYerrqm888hT7iofxppij0xIiL7r3SY2l8h8XszE46ootux5rMNuXZu4Mttqv2x1/h8JSZXZ+5aHO1e4sJvbCY5ct/uWooK7Ax4SSlSmxMFbVVdJPUVRoxj/de6f9g9rUtd3T0htjY1LA2ydvZzBbao5t3bA6uXN5MZ3ekmazmRhoMXjJY8KZFqYqKNKCtlmjMDVkNXDNVNHB7r3QGr3VvRFVI8b1fGiKESOPo7pNERFFlREXb4AUDgACwHA9+691y/02b3/wCVDrL/ANEh0r/9j/v3Xuvf6bN7/wDKh1l/6JDpX/7H/fuvde/02b3/AOVDrL/0SHSv/wBj/v3Xuvf6bN7/APKh1l/6JDpX/wCx/wB+6917/TZvf/lQ6y/9Eh0r/wDY/wC/de6mTd+9iz4KTbMq9eNt+XJjNvh/9C/TK0AzIplojl44FwACVTQIlO9QtpGiVYmYxqqj3Xuk7/pR3J/zqetv/RN9Q/8A1j9+6917/SjuT/nU9bf+ib6h/wDrH7917r3+lHcn/Op62/8ARN9Q/wD1j9+6917/AEo7k/51PW3/AKJvqH/6x+/de69/pR3J/wA6nrb/ANE31D/9Y/fuvdZYe1tzQTRTpiOsWeGSOVFm6V6bqYS0bB1EtPUYFo5FuPUjqVYcMCCR7917oYfkF2XuSl7e3jR/w7rmZKOpoIY5pumOmhUyI2KgqL1U0G34zK4LlfJIC+kKCxCj37r3QM/6Udyf86nrb/0TfUP/ANY/fuvde/0o7k/51PW3/om+of8A6x+/de69/pR3J/zqetv/AETfUP8A9Y/fuvde/wBKO5P+dT1t/wCib6h/+sfv3Xuvf6Udyf8AOp62/wDRN9Q//WP37r3QzdUdm7lm2/3av8N66iFH1Qcshh6a6cVpZ6PsLAU0dNVO2AJkpXWofzUrHxSMI2dWaKIp7r3QM/6Udyf86nrb/wBE31D/APWP37r3Xv8ASjuT/nU9bf8Aom+of/rH7917r3+lHcn/ADqetv8A0TfUP/1j9+6917/SjuT/AJ1PW3/om+of/rH7917r3+lHcn/Op62/9E31D/8AWP37r3Xv9KO5P+dT1t/6JvqH/wCsfv3XuhX7D7a3TPtHpFZMR1lZOtMoF09L9Piwi7Z3PSKsR/gX7cemJXaCLTE0zTVRjNVVVU8/uvdBR/pR3J/zqetv/RN9Q/8A1j9+6917/SjuT/nU9bf+ib6h/wDrH7917r3+lHcn/Op62/8ARN9Q/wD1j9+6917/AEo7k/51PW3/AKJvqH/6x+/de69/pR3J/wA6nrb/ANE31D/9Y/fuvdO2C7Q3M2axKJjeuoWlyNHCJoem+nhPD5qhYvNA0mBYLIt9Ub2urAMOQPfuvdOu++z9ypvXdsTY3riU0+5M1SiWTprp7zTLS5GSmSaodMCuuVgoaWVhqdyzuSzEn3Xukp/pR3J/zqetv/RN9Q//AFj9+6917/SjuT/nU9bf+ib6h/8ArH7917r3+lHcn/Op62/9E31D/wDWP37r3Xv9KO5P+dT1t/6JvqH/AOsfv3Xuvf6Udyf86nrb/wBE31D/APWP37r3Qy9d9pboHXneki4zrUCm2XtthGek+lnSVq7snC42T7l5Nvs7qkcjvFGz+NJtFQq/cQwSxe690DX+lHcn/Op62/8ARN9Q/wD1j9+691KrOw944+VafIbc2FQVD01FWpBXdI9UUc70WTo48ljaxYanAqxiqKeWKogkA0yROkiFkZSfde6i/wClHcn/ADqetv8A0TfUP/1j9+690OWyPkBBl8NDtDf39y9rTYlGGzN8YvpLp+sw2LpJahZq/a+89uY7a1RWPRSO9TX0uVxaS1cFW8sdRRZCKtWfGe690Lo3RUyY2HZu+odm1u18pFTZvb27MH0z0Vnq/bcGTpag0u59mQ1m3qaDIY2qnlSfLYvz0U1aaYUxrMdWQ+SH3Xug13hsLt3ZPXqdqfa9D7s2nQ5nG4XcNRhOpun8pTYap3DV5NNmVWRxmf21TtNQ56mxVXUUCTUy1BWOeKsoqZoXB917q03rfsDeu+uq+vewdz4Kiwec3PtvDy5uCr2dsyn/AIjkmxyyUe76SmgxdOsVJuWiWHcdDFHAkSQ1eim8lKkM0nuvdKv+PZT/AFGH/wDQT2l/9Qe/de69/Hsp/qMP/wCgntL/AOoPfuvde/j2U/1GH/8AQT2l/wDUHv3Xuvfx7Kf6jD/+gntL/wCoPfuvde/j2U/1GH/9BPaX/wBQe/de6fNs5rJS57HxuuJCOmUDadr7WjP/ABZKkj1xUSta/wBQGsRdWupIPuvdLPe215vklHiNx7G3HtLEd4UO1sLiNx9e7q2JsaaLsF8HJJjo8ttXeOVxtVVPUCl+3jpKBhNFDCsFEy0SQrV1XuvdIf4+9OZyffW9d1fJHaNbtDpDoPY2Q7K7YFd1Z19jDukClKbP6423mxhftayqzk7eRBjqwvLBGI4ZopKylmPuvdep/l707UVyVGV/lz/FD+DtWa1w2Np48ZmqXD67U2Om3JBhJIaitiiNpq/7BEmkGrwxi1vde6jdr9b7Y3D1rWfJT4v5iDNdS4qvhxnbnV28tg9SHtT485/J1yUuIiy8WMxDrkdvVRcLS5ENI8UYSdqmtgapmoPde6KL/eXOf9m7/wCi861/+s3v3Xuvf3lzn/Zu/wDovOtf/rN7917r395c5/2bv/ovOtf/AKze/de69/eXOf8AZu/+i861/wDrN7917p0ptzZGg2/vjdGRxW2MljdmbTqtyVjVuE6s2biKOGkyNLDVVOSz0+2sg5ZaaSoehxtFQz1uSrFp8dRxNUVSEe690XzP/ODa208hncdsDrbafadPJNDRY/dvauwto7ZxwoaavkeurcPsfYcFNkIaiqWKmWlrarcmlKaSqiqMWZ5YZqP3XukvhPnCMiKlN+9abRxcqQj+G5Lq/ZmyadB4mnl+2y22980uQWpaQNS08NRTZWiWFIneWGsll1R+690o4PmpsCSq+xrdlZalwaVeJEOfxvXPTtdvJ6WpxElVuWuyOHrvBiZBT1wpaDE4inkgZ4jVZGrzJZqfEx+690ZMVO5qiKirdu5fZ1djNzS0OP2RnaPYfU0w3nU7joRkdvYfbWIr8QrZDL1lMVkXbwiasMoalkpxOrR+/de6wfJKi7A7dr927b6ho+rO2uz9m949j9fbp2xn+req852tgIsNuM47B7I6/o934WSpgNVkaTNTZL/KfuM0afFwYuSsqY8lRL7rXVV2a7s3LnayKvXavTGGAx+MozSbZ6F6ZwmNmkoqCOlnyj0VJg9H3NbIr1lW62VppX8aRReOJPdb6aD2luU8nFdbk/49N9Qn/wCQfv3XuucXau5YZI5Rhur5DG6yKlT0l0zWQF15UvTVWAeNrfUalPPP19+690Z7sH5rJ2bgKVd69HdY7w3/AEeESCm3jvfbPW+9dvR7wyeNoMRvbsCTrrce1ainbJZiOhjrmaCvgSDI6ajTPSxRUKe690F9T8nN5b0qaXHduY/r/eW1WkyLyxp0N8fJsxgcpkdqjZ9FvPbaV+2lp2yOJgjo5qWlnZKepWkiop2SnYsnuvdFp3VV9l7Lq6CnzJ6zrKDNUTZPa+6sR8evjRNtjeWJjk8E2SwFW2zCyPDJ+zkMZVaK3Hz3p62CKUDV7r3Tz1f3NuHZ2+MNk8tL11Ft7ICs2zumo/2Xf40lqPbu56VsRXZRvBtKmeWLHySQZSejM6xVaUpppgY5Db3Xul9mt87z29mMrgcrhuro8phMlXYnIpR9UdL5KjWux1S1HVCkyVDhXgqItaN4qiB2jkWzozKwJ917ps/0o7k/51PW3/om+of/AKx+/de69/pR3J/zqetv/RN9Q/8A1j9+6917/SjuT/nU9bf+ib6h/wDrH7917r3+lHcn/Op62/8ARN9Q/wD1j9+690NO7O0dzjpHqSU4zrVhWbn7NRo/9CXSkaQrikwsUBpmh28rqzioc1Lli0xEXlZxBAI/de6Bb/SjuT/nU9bf+ib6h/8ArH7917r3+lHcn/Op62/9E31D/wDWP37r3Xv9KO5P+dT1t/6JvqH/AOsfv3Xuvf6Udyf86nrb/wBE31D/APWP37r3Xv8ASjuT/nU9bf8Aom+of/rH7917pd9W9l7iqOzeuqR8X10kdbvvaNBLJD0/1JBURw124KejmlpKmLBiSGZVctDPEyyROFkjZXVWHuvdROwu0tzHfm81fFdasYt0Z2DWOlemYC602TlgR5I6TARx62CgyMEGprsfUSffuvdI/wD0o7k/51PW3/om+of/AKx+/de69/pR3J/zqetv/RN9Q/8A1j9+6917/SjuT/nU9bf+ib6h/wDrH7917r3+lHcn/Op62/8ARN9Q/wD1j9+6917/AEo7k/51PW3/AKJvqH/6x+/de6Gba/aW5z0j2s4xnWqik3h1egT/AEJ9KyJMuTpM/HP9wZtvMzMn28Zp5AweAmUQsi1FQsvuvdAz/pR3J/zqetv/AETfUP8A9Y/fuvde/wBKO5P+dT1t/wCib6h/+sfv3Xuvf6Udyf8AOp62/wDRN9Q//WP37r3Xv9KO5P8AnU9bf+ib6h/+sfv3Xuvf6Udyf86nrb/0TfUP/wBY/fuvde/0o7k/51PW3/om+of/AKx+/de6Fvuvszcke88a/wDDeu5DWdYdH5NxL071A6wzZLpTb1ZUQUg/gQ8VMrswp6Zf2qePTBAscEccSe690En+lHcn/Op62/8ARN9Q/wD1j9+6917/AEo7k/51PW3/AKJvqH/6x+/de69/pR3J/wA6nrb/ANE31D/9Y/fuvde/0o7k/wCdT1t/6JvqH/6x+/de69/pR3J/zqetv/RN9Q//AFj9+690KnT3cW68XuvMVFPh+sWdus+5IiJemepCpX/RNmpQpMeEVmRmULPAxMNTCZKWqjnpJ6inl917oK/9KO5P+dT1t/6JvqH/AOsfv3Xuvf6Udyf86nrb/wBE31D/APWP37r3Xv8ASjuT/nU9bf8Aom+of/rH7917r3+lHcn/ADqetv8A0TfUP/1j9+6917/SjuT/AJ1PW3/om+of/rH7917r3+lHcn/Op62/9E31D/8AWP37r3SvyHZ+5m2LtWY43roaNzb4oxCOnOoPtyi47A1SzeE4IhZtUrq86aXlQRxzNIlPSrB7r3SQ/wBKO5P+dT1t/wCib6h/+sfv3Xuvf6Udyf8AOp62/wDRN9Q//WP37r3Xv9KO5P8AnU9bf+ib6h/+sfv3Xuvf6Udyf86nrb/0TfUP/wBY/fuvde/0o7k/51PW3/om+of/AKx+/de65xdq7mikjlXEdZlo3SRRL0t07NGWRtQEkM2CZHXjlWUgjggj37r3QyfIDszctP2jmKT+G9cTLTYfZypLL0v0wk8gqdnUFc5nkptvxhyHlZYyw9EYSJbRxoq+690DH+lHcn/Op62/9E31D/8AWP37r3Xv9KO5P+dT1t/6JvqH/wCsfv3Xuvf6Udyf86nrb/0TfUP/ANY/fuvde/0o7k/51PW3/om+of8A6x+/de69/pR3J/zqetv/AETfUP8A9Y/fuvdDX032buWSi7lcYzriNsf0xncrDp6X6akSWen3fg6JaethqMA6T0zR1MpemmVozIIpwonp6eWL3XugU/0o7k/51PW3/om+of8A6x+/de69/pR3J/zqetv/AETfUP8A9Y/fuvdZ6Xs/cb1EKnFdcANIoJXp3qNGsT+HTBgj/XB9tT/2LfYejDahXcoB/TX/AA9CR2R2Hk8HQbfqPBsVBkcXS18zZbrvrjIQrU1aM8sFCmYxcqU1Oqx3io6YJBENRjjXU5MQe1bk32+g0/5Kdx5D+CLrox9/eBI+V/ah1Lf8qRswyzEYuL/yJI+08TxPQeY/s3M1VdRQV8PW2Nx9TV0sVbk/9CXVFeKCjlmVKiv+ypcH5J/EhMnijOp7aV5I9zJ1zX6P7syTozEYnBZHfOY6uZdp5b5GHd+3cvtP4wU24e4MT15sLeua6tpNgZjaeAy1ftOryOVxG36d6Dde24hWma2MzdbLlaLDUfuvdCLvXJ9LUmK6cmlg6erf4VsXaWJ3NhpJfinHiN27yxfya3ngfkHBs3dsmzHlg2vX4ymx8mzs3S4ulo4IKmSughqsmMso917os3cuDlhwFN2V0pjttbl2RXY9d31tLX9Q/GzJ1G1OuJOrNi7hx+4M9ntg4lsa2Sn3HnN3YnIYtqeino3wskQpFk/yaP3Xuimf6U9zf86vre3H/NHOov8AYf8ALj9+6917/Snub6/wvre//iHOov8AX/50fv3Xuh26az2cqWqex9z7c65rNp7cr/4XicVP0f0rVUW+d7rBHWxbYq/4pt6WI42ippY67cDwxvPHBJS0sbUs+Tpa2D3XuldUbx3TW1E9ZXVe1q2tq55aqsrKnqPpKSpq6uokM1TVVEn92rtJI5Z3c8sxJPJ9+690YPoHoXvP5Ftk8ntb/Rtszrrb5Ubm7i7F6m6awfXeHvVCimix9c+2UOVngkJ+5SklWnptJStrKR3hWX3XurAsH1L8NtgZaLIVE27e4shtKCWjfC5/p/43Qdddo5SWFqafIVNNQbOWeho6eX9+lSDKyJ+gmXJxK33XuvdKDF9t4bZrSVfU/Q3QXUOdqKGox0+6tj9Zbbxe6DRVkHhqaVcpi6WiRoz/AMc5oJEf6TJILg+690G9TufPVtTU1tbNjqytraiesrayq2vtOaprK2qlM9XWVMzUF3klkZnkc8liSffuvdYf49lP9Rh//QT2l/8AUHv3Xuvfx7Kf6jD/APoJ7S/+oPfuvde/j2U/1GH/APQT2l/9Qe/de6doM5k/4DlnIxN1zW2kUf3W2oEs+PzBa8YodLHgWZgSouFIDuG917pp/j2U/wBRh/8A0E9pf/UHv3Xuvfx7Kf6jD/8AoJ7S/wDqD37r3Xv49lP9Rh//AEE9pf8A1B7917r38eyn+ow//oJ7S/8AqD37r3Xv49lP9Rh//QT2l/8AUHv3Xuvfx7Kf6jD/APoJ7S/+oPfuvde/j2U/1GH/APQT2l/9Qe/de6ftr9i7m2ZuDFbpxMODnrcNPLMKSbbG26eGvpaimeiyGNlq6GiSohWpp5JITNTusiBrqTyp917pJfLjDQ7K7bXMbJjwMOxe1dr4btHbVPNsDqySWim3DrTP0E/gxMmmVqmMZJ4jNN4BWrTmeV4X0+690WL+8uc/7N3/ANF51r/9Zvfuvde/vLnP+zd/9F51r/8AWb37r3Xv7y5z/s3f/Reda/8A1m9+690tOuNw5mXfm2Ef+AaPucmW8eweuqeTjb1ZbRU0+ISWM3+rRupIupJRmU+690g6TcmcFLTD/fucU8I4656xjHEYHCRYVVUf4KoA+gAHv3XupH95c5/2bv8A6LzrX/6ze/de69/eXOf9m7/6LzrX/wCs3v3Xuu/7zZ3+u3v6/wDMvOtf/rN7917rr+8uc/7N3/0XnWv/ANZvfuvde/vLnP8As3f/AEXnWv8A9Zvfuvde/vLnP+zd/wDReda//Wb37r3Xv7y5z/s3f/Reda//AFm9+690cva256/sP4G9ubakk2rJu744907E7QwaVOyuv5Zo+tO1JF2RnaPDYeXDijpwmUesrK2opYvOx8Znl/dQSe690TT+8uc/7N3/ANF51r/9Zvfuvde/vLnP+zd/9F51r/8AWb37r3Qm0fyD7PoYdlPBF1m+4euq/adTsnsKp6V6tqOyduYbY1Q1TtHYmM3RJi9EO38ezXpKCKkSWEKqRVKRKI/fuvdONf8AKTtuJMfkKSm6uop9rS7bye3YKfqPZa0GKl2JPubIbUo4Kd4GcU9JJuzMhAJRMquvjnjd6uSq917rP2T3FvmWvzuzDTdfCjw8+V2fQ7jbqrYFTvs9druCTcNL1XW7mr6GZZ9t0uSb+J0lDJSmaOr/AHvumPHv3Xuga/vLnP8As3f/AEXnWv8A9ZvfuvdOsmbz0hyUSJtHRHBj9y4GSl612LFPkNqfwbGbY3TBXLPhXh+7wm4YHnr2inOuLO0EypDC6U9L7r3TSdyZtgVYbcIIIIPXfWhBB4IIOG9+691ZdTd45H5DfETaHxz2zuLpXbveO0l2Nj+xMr2xU9bbCpd3dY7AyGayfXGA2Rh8lia2mylTQ0r7f1pR0CCjlqZWC0f3VNLP7r3QDf6Lm+OWOTvf5tZXrbrXoLa8grqXEtt7pHdW6u+sskDSY/r/AKw23gsdUyZCepn8UdTSOYapkYft09H95lMd7r3VQPZX81/5fdjbf3FsnbZ6g6L6q3GNy0CdY9cdNdd1tPT7O3NG+Pm2ZuOt3pR5ehyEBx8j0VZHBjaeml8tR44UikVE917ohq753WiqiHrpERVSONPjv8Y0SNEXSkcaLssBVUAAACwHA9+6913/AH73b/q+vP8A0nn4y/8A2F+/de69/fvdv+r68/8ASefjL/8AYX7917r39+92/wCr68/9J5+Mv/2F+/de6VuxO+e4ur93YPsDrnde19kb62xPNVbZ3ltjoj42Yfc+3Kmoj+3qqnBZuj2YtRSSTQlqedoJFMkLyQvqikdG917q1HB93dRfzNMVheve1674+/Ez+Y1WpJQ7d+SGf6P6WqugvmpuKClipNv7d7wyW6dt5bIbV3fUQ060tBU0c0lLUTSTLQ09XJJjMBSe690G3dXwR/mj7bwHTOCy/wANazLV+0eqspidwDrP44/E/siDG5ip7t3zuCHGy5DbWAr6VteKmx2QEGGVaZpat6maJcvkK5p/de6Rnxz+BXz07w+QPX/TO4egdy9MYfL5ihyXYXYvbHwc6X2ts/YvXGNrFqN355sluTr+DH19c9IktNh8alQwq62SGOQx0oqKiH3Xuj/5T5w/KXtv5m9t9Z9T9/dj/Aj4j9NdcYOLoPrjcXxy27g9pbj6s2TvnYvQW3MEmzt9YXbNZj4d5T7kkr8VUmZFwlNPQUdStFSwS1lF7r3St7Pruxq/O9q/GncO68D03s3aVR1R23RwdnfGfprsqu2N11vHaeD3t8xKTG7iWTHY6lxXXqV+Sr93Jh8FP97XbXpo6rJUE+Qqnl917ovcnVHfGI2lvDLy5HHVe3vj8fknSb2wlb8KuhK+PamzOkusN1VO5c9UyYComanwO5N8bL331wlc1ZSqfsJ6qOaSprUxY917okPzM2/lPjv3HRbN2xBg127Ltjb24RT75+JXxo2fmaDLZO+55Ov6psbgspi82uCoqvGquao3gSRZ2l+1SB6OSs917oqZ7c3fDVVcxxvVcn30LwJiv9l5+PklHikrpVn1Y2IbV88czvd6WFZbgyGR7KY0b3XunTZu4e5ex6/+6GyNobQ3rn6lK3MlNv8Axl6Cz2cXHfbCiydVVfwnZ0jPQv5QkzvGwnnlRYCFKvPrr3WR+w+y1lhyC7T2THTYmk/iGRJ+LvQsUWUp8JSVBq8zloDswwxQQ09LWffZBVWGGKKWPUZY2Kb691yl3t2XjaetWbbXXDeTHGdqKH46fHuSTZeNoMwaKmqqtF2q1RhzDXaoaWPIvGIbqZdRkiX37r3TZkuw+waSkoafK4TYuJSUVs1PXVPxr6AxtduGCfIzUtVHDHX7QiSrphWU1REjeP8Az9PMZZIxDKkfuvdcm7c3n/EVrmxXUrz1EUqR4IfHn48zYaJKuH7OaqlpjtMSfuBV4ieNqiVAUWNA5XXXuog7Y3nHHPQU1P1lVV1TVJUNlJOg/joK6Cajp/tJFhySbSH7SQ2irZ5lddAEMas5F/de6GXGds7ji+O+64qU9SUmQou7Oo8TWhPjv8eop87ik6+3jlRGuNG1VopKhJ6ek+3knp5Z6amjlKyxx1VXFVb691dF/LZ+Q3S3yi6WqPh92z1bsKk7F64O5O4dm7a2F1x17t7Ddr0OAqlyX+kTA4WPC/wPGb+w8dbFj5cnPTGaupIKLJqwalqmT3Xup2c+JPUm5sfbpX5LbS69jzkWTXfmN+QfxT+OGXz2Zwmaijrc0MfvjbO08PRvO0yN9vjWoJ3eod5vu0QvDU+691Gg+HWwKjGT0m5fmD0xGMfWZeTbmxsR/L46jzm2qqvrsJJj6fI7l3RLj46c09S5m/iUNNQreWSKqjYaZQ/uvdLPZPxC67kx9RU7p74ynZHeposbKd09FfCv471ezNlwY6rESQ1dBnNkZTIZZGimrYP4hBkseTBOsU0P3ECyP7r3QgYrrj4n9ZY2rxdD8eKvuuKgzcuN3FX9x9M9Abd2fVbgeaTIQYfJY7bWx6eFavH1Rmmo8bX4zz+NArTPoeRvde6m7wz/AGlvrduXzuS2Xk1ytdk6LDHEU/Wb5Gpx9cMeJcZtrVlsdU5GatenU1Kw1Ur1EiszoqwhET3XukhB/fWrp4quj2zWVlFUZQYKmrqPrLF1dDVZ5p1pVwNLW02JaKWvMrJEKKNzMXZVCamAPuvdSami7EoqrH0GQ2Rn8bkcvLPBh8ZlOoYcZk81PSyeGqgwuNr8LHPWPE/okSmjcq3DAHj37r3UCOp3ZNDFUw4NpqWfJxYOCsh67wstHNnqgE0+AirI8WYmr5ACY6EP52AJWM29+691ElzOagllgqKfGU9RBLJBUU9Rs7a0FRTzwuY5oKiCXHh0dGBV0YAqQQQCPfuvdc6XKbiyFbQ4vFY+iymXytZT43EYnH7O2pUZDK5OskENHj6CnSg1PLK5Cqo/1zYAke691I+VPyFzvx7psR11hOwF6+65612VLSfIHNbS2nss5/vfuzfeONbP0/sd85hzSx0OOxCQS5nK0TkNDWy0FXOho6ibF+690VHrHfnZo7B2jUbq2psId27h2H2pR/Gv454XrDquCg+P+z16uy+b2plNzZCtwDZCmP3+NxojxP3dGVpfuzViNXmx2O917pL0O+dzV9bvHauzd7dY1Ix1K2Y+Yny9y3SfSU22qOgyFNT0Nf1fsSOk21DJmKWolpI4aanqDNUZiuUvAlNQhgfde6bZO1qRdp4XeGd2ZtnCfHChzEWP6A6IbpLoGu7G+T3YtHDFhJd6ZzHU+0ZaOmSsDU8WayeOxKoiSpRY9JqyaM1vuvdcpeyu56Pd1DhIcf1Zuv5ebjwtCMYlF1N0/FtD4fdbUTGqw4/vPDhKmrhq6Cjr5IIoGraiIQ1Mayx5F5qP+Pa690w0fYsmdxO78FtTcGxsH0Lgp8knyb+Sb9J9MU2W7y3Dm5zla7YOzMVFgJabICWqrZpsX9xFWyQfcrUNNPTtRx5zfXujlbQ3/wBnbC+MFP3ptXqjqLrrszuLs/I7G+HeD3xsHq3bFZ0v0HRdZ5Oo7w+T20aHG0mK/hcWRrJA+4Mxomo/K9F9xTzYvIQLlfde6LpnvlB2v3Lt7KP2R3DLm/i71pk48f2h3BvTqbqXce5e8N71cNDmaPq/qPZO6sGaSasqqjGJX4ilrInehh1Z/cVSkUVHR03uvdCbtH5Bb77/AJOk+mvkHsnaku3e4d+7G258ZtgbL2J1TkPkj1Z1TkpIcDjdw4reHYe3Mlt+lweQpkgiifMbfiqc4y/fxz4nBUlGZPde6Enbfx26pyOwcv2fR5Wt371/iutNodjjdGG2P8d9sxCt3B3vvHZe6OqqykxOwN1PJujbu3tvUcDx0inF5TLPLW0WUTEyxpD7r3SDxXXnQkm7Oldp7o3BLtyq3H170j3B2zJ/dT430T7c2B2F1jR5LdtHPPu7YONx+Azq7szOFxm3cQchnZaqDz09V9tXVFEW917os3bO1t09Ywdf7eyWO25B2ANqdl1/asNL1r0Rm8BS5fr/AORu6ejRmtr/AGW1FaHCVS4ShlgqJ6qpEstWgSYa0j9+690DH96Nwf6raH/ooOkv/sa9+69147pz451bQ4/79B0l/wDY17917odKXoz5NZPHbdyOH2T1xXx7u29hd07ZBxnwodq3C7l67yfbO26/JYyvjElGtXt7D5DJ/b5SGGREjjgnijqKqkgqPde6e+x+tu+6zsbceQG2uujR777NwSbPrP4P8TXizkff3Y+4cJ0mWqstA1Ys2ekwmSDS5h1qqcwNUZp6ZqhJpvde6YqTpP5F5GLryTGbc6jy0vbORnxPXWOxVd8F8nnNyV9Co/jCSYCheStx0WMkaKnzFTloKWHH1EsFPWyU888Ub+690yYjrD5C57ZtP2Lh+vcPXbDnn35TS7qTrT40w4/EVHWO28pu7fK7op6rFR1WGSjx2Eys0M2Xp6aKtkpnpMe9VWPFTye690mOvMJ2525vTCdc9X7Uw++t87hMrYrbeF6g6GSpelpWQV2VyFdk8BT0dDQ03kjNVX11TDTxa0DyBnRW917owOf+H3zSwOaw+Gpepdr73g3BPi6fEbu652L8cNz7AlOWiEsFXlN1VGBolxNHFdkqMlmoKOjDo/iqJk0SP7r3So7S+HXdPWmwt0buxu/+iu2txdXHEyd6dddW9T9TZncHUlDm8L/eCkr6uafbCvXimoylblKZqOkq6akkStFLJSpPLD7r3RJRunPkAh9nkEXBHUPSJBB+hB/u17917rv+9G4P9VtD/wBFB0l/9jXv3Xuvf3o3B/qtof8AooOkv/sa9+6917+9G4P9VtD/ANFB0l/9jXv3Xuvf3o3B/qtof+ig6S/+xr37r3Xv70bg/wBVtD/0UHSX/wBjXv3Xuvf3oz/+q2h/6KDpL/7GvfuvdLnfe7twtF1fB/v0AqdL7WmLHqLpZ2aWTe25YX0eXbjCKPTEhWmgCQI2uRIllmneX3XukN/ejcH+q2h/6KDpL/7Gvfuvde/vRuD/AFW0P/RQdJf/AGNe/de69/ejcH+q2h/6KDpL/wCxr37r3Xv70bg/1W0P/RQdJf8A2Ne/de69/ejcH+q2h/6KDpL/AOxr37r3Xv70bg/1W0P/AEUHSX/2Ne/de69/ejcH+q2h/wCig6S/+xr37r3Xv70bg/1W0P8A0UHSX/2Ne/de69/ejcH+q2h/6KDpL/7Gvfuvde/vRuD/AFW0P/RQdJf/AGNe/de69/ejcH+q2h/6KDpL/wCxr37r3Xv70bg/1W0P/RQdJf8A2Ne/de6VWN3luE7D37Qsmy3jO7eoZldun+ldSmTF718uqIbcEUh/aTxyyxtJCPKtO8KVNWtR7r3Tjh+xd/bj3ftaoyu/du7eq8RFTU2O3tW9OdP5V9j4fbVFLkabJQw0mAgljpcXFC848c8UdNGjStJDFG7r7r3Qc9994712xVzdK7ZHT6dQY+PZW+Nv7ewnSvRjY3I5XcGwMfWUHZeYp8ZhKjHwblzGKnpZcrU4SYUrrJ4oD4PR7917otX+lHcn/Op62/8ARN9Q/wD1j9+690Nnd3Zu5YazrVP4b1xItT0v1XlT5Ol+mtcM+X2lT1lVTQzJgFcU0bkilpmYx00doKdYoEjiT3XugT/0o7k/51PW3/om+of/AKx+/de69/pR3J/zqetv/RN9Q/8A1j9+6917/SjuT/nU9bf+ib6h/wDrH7917r3+lHcn/Op62/8ARN9Q/wD1j9+691zPau5mCA4rrQeNSilemOnkbSWL2ZkwQLckn1E+/de6ObtHtv5EfHvqLMZjcXUmLwGxe18P/DsXvLDdJdddc5Kpyu69mZKu2lsjsyDeexZqDeWys9jZItwnEVGPqaSthihqNv7gx9bS5iIe690TF+09yu7O2J611OxY6emen0W7G50omCAA/oALD8e/de64/wClHcn/ADqetv8A0TfUP/1j9+690KXT3cW68Zu7JT0+H6xZ3637jiPl6Z6jPp/0SZuYDVHhFYozIqzwljFUwmSlqo56Seogl917oLf9KO5P+dT1t/6JvqH/AOsfv3Xuvf6Udyf86nrb/wBE31D/APWP37r3Xv8ASjuT/nU9bf8Aom+of/rH7917r3+lHcn/ADqetv8A0TfUP/1j9+6917/SjuT/AJ1PW3/om+of/rH7917r3+lHcn/Op62/9E31D/8AWP37r3Qqbh7X3W/TPVanDdbCD/SF3dTq69MdSJAZKPAbDnKxxLgxAKi1UDU1CRipnj+1jqZZYKSgjp/de6Cv/SjuT/nU9bf+ib6h/wDrH7917r3+lHcn/Op62/8ARN9Q/wD1j9+6917/AEo7k/51PW3/AKJvqH/6x+/de69/pR3J/wA6nrb/ANE31D/9Y/fuvde/0o7k/wCdT1t/6JvqH/6x+/de6f8AavaW5l3Nt7Rius1Zs1jIw0nSfS9Uq+WsSIv9vXbfliYgG6iSNhext7917pV9y9n7kTtzs+H+F9bstLv/AHdQxu3TXT5lkioc9PRwyVMowQMszKgaaeS8krlpJGeR2Y+690Gv+lHcn/Op62/9E31D/wDWP37r3Xv9KO5P+dT1t/6JvqH/AOsfv3Xuvf6Udyf86nrb/wBE31D/APWP37r3Xv8ASjuT/nU9bf8Aom+of/rH7917r3+lHcn/ADqetv8A0TfUP/1j9+690u9sdp7pTavY0kdB11GkeBwyvAnTXTogqRVbvx9MVrR/AdUqIGMkUTsY0mEdQE+4ggli917pCf6Udyf86nrb/wBE31D/APWP37r3Xv8ASjuT/nU9bf8Aom+of/rH7917r3+lHcn/ADqetv8A0TfUP/1j9+6917/SjuT/AJ1PW3/om+of/rH7917r3+lHcn/Op62/9E31D/8AWP37r3Xv9KO5P+dT1t/6JvqH/wCsfv3XuhV7D7i3XW7U6Rp5cP1iEoesclFEU6a6kvpPbe6ItKB8KyxJaNWMFOscLTNNVNGaurrKio917oKv9KO5P+dT1t/6JvqH/wCsfv3Xuvf6Udyf86nrb/0TfUP/ANY/fuvde/0o7k/51PW3/om+of8A6x+/de69/pR3J/zqetv/AETfUP8A9Y/fuvde/wBKO5P+dT1t/wCib6h/+sfv3Xul71L2vuan7g6YkTE9dA/6aen47w9SdW0NQqy9lYuJmpcjjcPDVUswBJiqqSeKohe0sEsUqJIvuvdIeftfc9RPNUSYjrFZJ5ZJnWDpTpqlgV5XLsIaamwKRxoCfTHGiqo4UAAD37r3WL/SjuT/AJ1PW3/om+of/rH7917r3+lHcn/Op62/9E31D/8AWP37r3Xv9KO5P+dT1t/6JvqH/wCsfv3Xuvf6Udyf86nrb/0TfUP/ANY/fuvdcv8ASnub/nV9cf8AonOov/rH7917qyaLsfcS/wAoSrzAxvXpqf8Ahx3G4HwydQdRzYz7KX4yV+SeoGKnwbUy13ksq5NYhWJDenSdad5In917qtf/AEo7k/51PW3/AKJvqH/6x+/de69/pR3J/wA6nrb/ANE31D/9Y/fuvde/0o7k/wCdT1t/6JvqH/6x+/de69/pR3J/zqetv/RN9Q//AFj9+6917/SjuT/nU9bf+ib6h/8ArH7917r3+lHcn/Op62/9E31D/wDWP37r3Qvdtdsbnw2+JMfi8L1ZQ0Y2Z1NX/b0/RvSkUP3ub6hwOdy1RHAm3wkQnrKmefwwqkUevxwxxxKka+690G/+mze//Kh1l/6JDpX/AOx/37r3Qs7L752/iNr5qtzuNwtVvU4/d2OoYD1Z10Vx8u5cPVU+Mrers1iKSg/uzFPUSil3jAIZf4hjisMIkDyQRe690yby7qx5xuWTaQxGTr969g5bsTLR5zqjryjxu06eajyOMxu3qSlmhr1yNbUplq9spV1QeNEp8c1JJ5pa5Y/de6evldncjuNfjhlcnHg4amb4y7KHh27tHZ+ycZFG29tyThI8LsfH42juGdv3mpzKw0q8jKiBfde6KWfof9Y/717917r/19db5j8/Lv5Un+vyQ7x/9+dlPfuvdFw9+690LXQnHdvUx/p2HtL/AN3cPv3Xugl9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690NnyN57q32f61+O/90dL7917oE/fuvde9+691737r3Xvfuvde9+690NXUX/Fg74/x6UrP/flbZPv3XugV9+691737r3Xvfuvde9+691737r3XvfuvdCfv0/79LpMf061zH+89x7r9+690GHv3Xuve/de697917r3v3Xuve/de6d9vcZ/Bn+mYxv8A7mp7917p239/x/e9f/Dt3H/7uJvfuvdJL37r3Xvfuvde9+691737r3XvfuvdDL14f+Mbd/D+uydnf7x2zgvfuvdA17917qVWVtZkJlqK+rqq6oWloKFZ6yolqZlosVQRYrF0ayzFmEVNSwQ01PHfTHFGkaAIqge690rMntjBYih23NX7nyqV+ewMeeqKOj2bS1lFj4qrJVNJR0sOTqM3TPUuYoEmmb7SJUZ/Gpk0Fz7r3Ttsnr7H76zFViMPn9wyNjdt7s3flqhdj4dYMZtrY+2qrd+5spWVFduangiSGhop/GZZkWSYxQhg0oI917oduu6SeloKfbM2Rh3x1Zm593Vexd8YGmefcPW+5qKKrqKbG732sHaswtHmhRRNlKHIH7JQZMvhq+vjoa813uvdZKpMTvjbeR2aKyOm3FkMetNs3KYrJLSVeZyFPkhnMX1tuejhbxZXH5OtumJSo0yUGWlpp4p0pXrIJvde6XlL8yew9gb821sfc9DHV9Z9a5ncGy89tWmxUON3TX7IfLRxUe3656txTpltpiKePb9WsNPPGWkoa6epxzClj917qyHG5bC5/B4PdW2MtT7g2puegbJ7dz9LFU09PkqSKrkx9Wj01YiSwVFLUwzUlZTSqHimjdDcAM3uvdSfJ/h/vPv3XuveT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvdP+1nvuHGi39nKfn/qyVPv3Xuk04jkjRZYw4QxyrfkpJEdccsZHKupGpWXkHkG/v3Xuk/3f3F2LuOnHV+a3tvLMbfxeQpM/uejzGbyFXDurdFVTQ5nGVOYkrb1GQhxYnJopaqeaKSdmqoQVjpJl917ouvk/wAP959+690Zj4i9o7b6z7ljx+/6eiqOoe7NsZXofuqnyEwpaJdhb9/3HxZ2qrCQsK4qteOaaokJWKilryNLOHX3Xug27m6e3l0B2RuDqze1JVfdYWaWq2zuGYU5ot/bDqchUUu0uwMRUUck0Lw5OnpzJLEkrNTVAmpZbSwsPfuvdBh5P8P959+691kiWaolip6aCWpqZ5Egp6aBGlnqJ5WCQwQRICzO7EKqgXJIA9+690n+4uzOuuiN0R7J3NR5Te26qDaWaqdyYDaubp8Lktudituqij25tjdOZyFNXUVDQjAivqa2mpKKtyUVcaeOeSnjkeCl917qvvtLunePa8lBS5j+G4XbGGnkqcHs7btNJRYLH1k9MlLU5WqkqXmrMhXSqh1VmSqp5Iw8kVN9vTN4B7r3QR+/de697917r3v3XusfhhBc+KO8gIkOhbyBvqHNub/m/v3Xuhr7O3hurEdq/IKmxm4szQxb73l2Ltvegp8jVRybq2/VdhPnavCZ+YNrqqWaso6SqngmZklkhjeQMUW3uvdAx7917r3v3Xuve/de697917r3v3XulVksvjKLpDeGIydG09dn+zutE2lWsIZ4sbksXgtxZHcpiRiXp5KnHpHE0yKPKqiMkhLD3XugDZVdWR1DI6lWVgCrKwsysD9QR9R7917o5HZNJtrLdN/FzsrETZOs3NuzrfcGyOzchXZepzLV2++ldy/3F+8yEtaqyU9fPhziJ2pE1R/w98ZVPLNWVdZI3uvdAT7917r3v3Xuve/de697917oa93H/jBnS4/puruH/eW297917oFPfuvde9+691737r3Xvfuvde9+690IHUv/ADNfq7/xJGxP/eqpPfuvdN3YXO/t8H+u79y/+7qf37r3SQ9+691737r3Xvfuvde9+691737r3QzbV/5kb3AP+zz6e/3iDc3v3XugZ9+691737r3Xvfuvde9+691737r3XvfuvdC/3fzvDA/+If6A/wB46K24PfuvdBB7917r3v3Xuve/de697917r3v3XuhE6v8A+Pjy3/iN+4//AH0Wc9+690Hfv3Xuve/de697917r3v3Xuve/de697917pY13/Mv9s/8Ah476/wDdJt337r3SO9+691737r3Xvfuvde9+691737r3XvfuvdDZ8iee3Nwf9qjY3+8bBxY9+690Cfv3Xuve/de697917r3v3Xuve/de6G7pf/i395j/AL8NuT/eN9bb9+690CPv3Xuve/de6k0f/AqD/lqv+9+2Z/7FvsPRjtP/ACU4P9Ov+Ho7uy9ybF27laRt946oyWPruto6WljpIa1q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UIOyy9XhYsjSUclNPjxJTVEtLK0OQLVNbUUv94fde6NL8Ae6Or+mMJ2zHuL5AVWE+PfVVZktzbu3dvHZef3ngPkx8guzceuJ3xWY/cGPocvkjRYmgx2OZsDhpUrtwS1dJWTV09NRtLmvde6DPFfCTp7Z+zKTtftD5qdeUHxumodqYzbfZmy9ibjzG7Mnnt6U6VGy8bmdi1Ej/wAML0JXI1cU9R9wkPlMsNHHBLMvuvdFd7x6Q318eexcn1pv84mtr6Wmhy2C3NtyrSu21vPa1dUTU+J3PhZVd2hWcwSJPRTt5aeVHjLSxeKom917oJPfuvde9+691737r3Xvfuvde9+690tN8m7dZ/8AiE9pn/b773T7917pF+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XulDjP+PR33+b7o6fH+3xe+B7917pe7F0bFx+5OxN34DB0+G2VVxz09buvMZvaucp964KmkyGM23tzFY+sx1Xmpq6SSGjyWAhlillgk+4NVj6ekq66m917qtgBQLKkaDkhIo0ijW5uQkUYCqP6BQAPx7917rv37r3Q496c13Vp/r0H0x/7xFN7917oDvfuvde9+691737r3Qj9U9ZZTtzeVJs3F7m692YZKLIZfJ7r7S3xhdgbL29gsREKnMZrLZrLt5JUpobzNR42mq66VVb7aknZSo917puxNN17Q9lwY3cmW3JuPqig3z/DspubaWOgwG6dwdeQZ400m5tt4TcwmSlr6jGj7yDHZC4jmYU00os0o917pR9xZSgn3PHtrDb43N2NtvYdOdp7V3PvfbO28DueDB4qCDEU+26er27nNyx1WDoFo448AIs5NRpTEzUUFItVNG3uvdBN7917r3v3XuhD6v8A+Por/wDxHncX/voM77917rrrjLZLCt2hkMTW1GNyEPT1UKbIUUjU9fRmXujYsE70VZFaWFpIXkp5WiZS8MksLkxSyI3uvdRv9JvYn/Pb7p/8/eQ/6+e/de69/pN7E/57fdP/AJ+8h/189+6917/Sb2J/z2+6f/P3kP8Ar57917r3+k3sT/nt90/+fvIf9fPfuvde/wBJvYn/AD2+6f8Az95D/r57917pozu7t17oix1PuTcufz1Lh/vjiKPL5fIZCixT5R4pMpLjaOqkaKCSqMEH3UkSK03ihEhYRR6fde6Tvv3Xuve/de697917r3v3Xuve/de6ftq/8fPtz/tfYf8A92Efv3Xulb3R/wAzi7Y/8SXvv/3qar37r3Qae/de697917r3v3Xuve/de697917pdba/49Dssf8AVj25/vG+Md7917pC+/de697917r3v3Xuve/de697917r3v3XuhF3v/x7fT3/AIjbI/8Av3t1+/de6Dr37r3Xvfuvde9+691737r3XvfuvdLfq3jtzpg/07s6b/8AfnYr37r3SI9+691737r3Xvfuvde9+691737r3XvfuvdWYof+xN1WP/Bm+JP/ALKpX+/de6rO9+691737r3Xvfuvde9+691737r3XvfuvdCv3dz2JN/4YPSP+8dF7aHv3Xugo9+691737r3XvfuvdGb+SP/Fr+NX/AIrJsj/3sNw+/de6LGfof9Y/717917r/0Ndf5j/9lefKm30/2ZDvH/352U9+690W/wB+690LfQn/ADO3qa/0/wBIe0v/AHdw+/de6CT37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Q2/I3/mdW+7fT7/Hf+6Ol9+690CXv3Xuve/de697917r3v3Xuve/de6GvqH/iwd8f+IUrLf8Aoyts+/de6BT37r3Xvfuvde9+691737r3Xvfuvde9+690J+/bf3S6S/r/AKNcxf8A9HHuv6+/de6DD37r3Xvfuvde9+691737r3XvfuvdPG3v+L/g/wDtcYz/ANzU9+69067+/wCP73r/AOHbuP8A93E3v3Xukl7917r3v3Xuve/de697917r3v3Xuhl67t/o27+/r/cnZ1v/AEbOC+nv3Xuga9+691737r3Qhb+/zGwP/Ed4X/3aV3v3Xug7ZQw5+o5U2BKtawZdV+R7917q5T4j7u+OW7/4Hltk9ZbO6u7q2zLi8ZXbTxO/9/0me3ek+HkxNTmetqzP5yStytNWlp5sltqeXISU9QtPVSJU08cElL7r3Rvq3dO4qiorCu490R0s1TUlKObcucmSKnkmYx0kyy1BDhUIRgwN7G9/fuvdVZfND4+4/bss3ePX9FmP7vbkzlfL2lh2kiyeP2JuvOZKA47cdLXySCtjxG4a2slp4YqiCWOhr41pnr2OTxlIvuvdF06N783t03m8TRUW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ZmY8BQLn37r3TqdubhAucDmQALknF11gP630e/de6FfvZguX65pGISrx3R3TdDkKRiFqqCsj2LSStSV1OfXDJ43jkEcgDFHR7aXUn3XugP8Afuvde9+691737r3TvRQ5PNjHbfxmKfJVv31fUUEGMx0lTmKuavp4EqKa1GplqEVaRHhjZW8RMrR6PLLr917oxkGTx3UGxTVbbznUXc2ze1abaJ3Fs/dOwN8z5PbHYWzNpUm6MfmaTLbw27gkjqdu5rOZLFyx7az2Qoa+CKalzcdXh8slJU+690XWr23uLH4HBbor8DmqLbO6JsvTbZ3HWYuup8FuKo29Vigz0GDy80a09Y9DORDWLTyOYZDokCtx7917pm9+691737r3Qh9X/wDH0V//AIjzuL/30Gd9+69037L/AOAvan/iHp//AH9uxPfuvdIz37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdP21f+Pn25/2vsP/AO7CP37r3St7o/5nF2x/4kvff/vU1Xv3Xug09+691737r3Xvfuvde9+691737r3S721/x6HZf/ak25/72+O9+690hPfuvde9+691737r3Xvfuvde9+691737r3Qi73/49vp7/wARtkf/AH726/fuvdB17917r3v3Xuve/de697917r3v3Xulx1Z/zN3pj/xNnTf/AL87Fe/de6Q/v3Xuve/de697917r3v3Xuve/de697917qzJLf8M3Vf0v/wAOcYn/AF7f7KpX+/de6rN9+691737r3Xvfuvde9+691737r3XvfuvdCx3d/wAzEm/8MHpH/wB8Vtr37r3QT+/de697917r3v3XujN/JH/i1/Gr/wAVk2R/72G4ffuvdFjP0P8ArH/evfuvdf/R11/mP/2V58qf/FkO8f8A352U9+690W/37r3Qt9B/8zu6m/8AEh7S/wDd3D7917oJPfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdDb8jf8AmdW/P+o/Hf8AujpffuvdAl7917r3v3Xuve/de697917r3v3Xuhr6h/4sHfH/AIhSs/8AflbZ9+690Cnv3Xuve/de697917r3v3Xuve/de697917oUN+/8el0l/4jXM/+/j3X7917oL/fuvde9+691737r3Xvfuvde9+6908be/4v+D/7XGM/9zU9+69067+/4/vev/h27j/93E3v3Xukl7917r3v3Xuve/de697917r3v3Xuhm67/wCZbd//APhk7N/9+zgvfuvdAz7917r3v3XuhC39/mNgf+I7wv8A7tK/37r3Qe+/de65I7RukkbMkkbpJG6Eq6SRsHR0YcgggEEcg8+/de6PF1t88u4MLl8Jju0spD2J10mMoNv7jx8W0uvMTv6tpKABaDdbdi0WLp8zls3SNeeWXPZSoGTvJHXS+aSKupfde6sz2RvjYXYW3ajdWx67CdhbJyL5Da+dxW5duIVArKXVV7X3xtDMrKsMlRSt5I3ikmgezvRVkklO7xe691S38iOrIuqe29+7awVJkG2ZjcziZtu10zSV8NFjN5bVouwNv7byGZTVG+Qo8bkqeKoSRxM4QTvGglUe/de6ydC949g9L5rOw7BwW3N2Tb+o8Zgqvam5dv5PPUuWy1FUyjatZQxbcqsflfvaWWsqo6WKkr0WUVMkcsUt49HuvdXi5GmFLVyQGGGnmSOmNXRU9dDloMZkXpUkyeIgzFMBFWpR1JlpUroQI6lYxOgCSAD3XuoWkf0H+2Hv3XumLeMz0uxd2Sxag9WMBgyyzyUzR02TzK19a8bw2Zy8dCaWSEnQ8M8yyBl9Le690DHX1PTtvnAyNBCZAm4rSGJC41bPyMbWe1+VJU/4Ej37r3SawORye3oi+3crltuvVU9JHVtt7KZDBNWRUys1NDWNiZITKkZdyiSXC6msBqN/de6jLHGiqiIiIihURVCqqqLKqqOAAOAB7917rlYf0H+2Hv3XuvWH9B/th7917oTulOzsr0n3D1p21hmyHm2Nu/E5TK0eLlp4qzObRmqRQ7321GKsiBmyOJlrKWITkIsrRy6o3jWRPde6NTuH4tbG7/3TvLd3wr7g687BbcOZ3HvOn+N+6qaXpztzaVHlM81dX4DaGE3QIqPI43GipIp5nNDTw0yJEk87eMv7r3RTPk78SO+NkdJdv4/tDovfuEyOztt4jsvbuco9vVm+MJDQ4neGNw+7KqDcfXByuPQwY2pqKmrWuq4BQ0MdbkahUgQO3uvdUee/de697917r3v3Xuve/de697917rpmVVZmYKqgszMQFVQLlmJ+gH5Pv3XuhB7Llr8z2D2XuOTa2d2rDWdh7pqa/AZvzVWS2jX5rPVuQi2tn69qShBrqYLNBLro6dneGVhBHpZE917pG02MyVZSZLIUeOrqugwyUkuXrqakqJ6PFR5Co+zoJMlVRKUgWeb9qEysod/St249+691B9+691737r3Xvfuvde9+690JPXOZze3I975/bWay229wYfadDkcNuDA10+LzeHyNL2BgpKevxeSpSssEyEcSRsDYkXsT7917qB8ntx47fe+cZ2/jNo0+0qTt2HcWcz8o3Zu/feQy/asW8MjPvU7q3dunxxSZiahmw+UakoKOmiWkq6eR0qKpqysm917oL+r66nxnZGzslU04q48VWZrMy0fhFQa2iwO08jnMzQ+Aq2tJ6GmqoZ00nVC8ikFSR7917p9pngjqaeSqheppY6iF6mmjm+2kqKdJQ09PHUlJPGzqCok0NpJvpNre/de6HLcnbOxIqpKzqbpfEda5aiylDWYXe+Q31vjePYOKoMLohwmPV6epxG03kMEajJ167PSprJ9U/kg8kkbe6908dsUI3F1N1Z3Vm9mU2093djbk7A27NmsFNQ0+3e16Pr+amhznY8+1MZClNg8lFW5CHC1kFMYoshJTTZH7VJpZ6iq917ot3v3Xuhs3d/zIvpf/AMOruH/obb3v3XugT9+691737r3Xvfuvde9+691737r3QgdS/wDM1+rv/EkbE/8AeqpPfuvdN/YX/H/74/8ADw3N/wC7qf37r3SP9+691737r3Xvfuvde9+691737r3Qz7V/5kZ3B/4efTv/ALj7m9+690DHv3Xuve/de697917r3v3Xuve/de697917oYO8P+PxwP8A4h/4/wD/AL4rbnv3Xugf9+691737r3Xvfuvde9+691737r3QidX/APHx5b/xG/cf/vos57917oO/fuvde9+691737r3Xvfuvde9+691737r3Sxrv+Zf7Z/8ADx31/wC6Tbvv3Xukd7917r3v3Xuve/de697917r3v3Xuve/de6G35E/8zc3B/wBqjYv/ALwGL9+690CXv3Xuve/de697917r3v3Xuve/de6G/pf/AIt/en/iBtyf+91tz37r3QIe/de697917rprlTpNjY2P+P496IqKHqysUYMvEdScfvffuCRqTF5WqjpAzMkS1FQiIW/1KIQOfYYvuTOWdyuGu76yhlkbizxRsxpgVLKTgYGep25U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/gdD9omO3fuWhot2SU80+MzBEcP2w917otHv3Xuve/de6EPq/wD4+iv/APEedxf++gzvv3Xum/Zf/AXtT/xD0/8A7+3Ynv3XukZ7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xun7av/Hz7c/7X2H/92Efv3Xulb3R/zOLtj/xJe+//AHqar37r3Qae/de697917r3v3Xuve/de697917pd7a/49Dsv/tSbb/8Ae3x3v3XukJ7917r3v3Xuve/de697917r3v3Xuve/de6EXe//AB7fT3/iNsj/AO/e3X7917oOvfuvde9+691737r3Xvfuvde9+690uOrP+Zu9Mf8AibOm/wD352J9+690h/fuvde9+691737r3Xvfuvde9+691737r3VmSf8Abm2r/wDGnGJ/+BUr/fuvdVm+/de697917r3v3Xuve/de697917r3v3XuhY7u/wCZiTf+GD0j/wC+K217917oJ/fuvde9+691737r3Rm/kj/xa/jV/wCKybI/97DcPv3Xuixn6H/WP+9e/de6/9Kgf5udeb/wPyd+UG6s7sfeGE2zWfJnuGjo9wZjbeYxmGqqvK9g5rJYqmp8nWQpC71NNTVFRTqjkyRRvImpFLD3Xuif+/de6FvoTnu3qYf9/D2l/wC7uH37r3QSe/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6G35G8d1b7H/AE347/3R0vv3XugS9+691737r3Xvfuvde9+691737r3Q19Q/8WDvj/DpSs/9+Vtke/de6BT37r3Xvfuvde9+691737r3Xvfuvde9+690J+/R/v0ukz/XrXMf7x3Huv37r3QYe/de697917r3v3Xuve/de697917p429zn8GP+rxjP/c1PfuvdOu/v+P73r/4du4//dxN7917pJe/de697917r3v3Xuve/de697917oZeux/xjbv4/wBNk7O/3ntnBe/de6Br37r3XvfuvdCNviCoqR13TUlPNV1dTsDBQ01JTqHqKmoly1dHDTwISLu7EKovyT7917ox/a/wp3Z1b1rX77feOD3JkdqpQyb8wGNx9fTUeJhrcpBg3qtsbgq2H8VipqypgiqWmpKJrP5IUmQEj3XuiVe/de697917qzH+Xrg8t/CO9d0v9wm2Yoet9qeMui0tZu7LZPJZ3E1McMiFpJKLG43LxvLE48ArERwRVJ7917oUfld8fK3t7bOI3b15tqvzfbO1ayDE1uKw9RQUo3P1w+OyGRyGTqqGuliSqy2IrIaClozSA1tXSVRp5PuYsbj4qb3XuqhKKtqqGppMjjayooa2jngraDIUM8lNV0dVTyCelrKOqhIeOSNwrxyIQVYAg3Hv3XurPOs/ndtvPSZSPvjFvtrLVs81dSb06/2+km1oGhoQ00Gf2NSyfc0y1UqSTNUYYzLFM3igxq0sirRe690feoxklJX/AMOrJFo380EUtRIriKCGp0sla8ciq+gRuJdLKraeCAePfuvdAT2Fu3K5mrrNrVOMxOGxW3dzZKaloaGirYq+aopkfF0FbmavKT1EjzrSvJpNOtPE4mZmib9op7r3TV14oG9sCRf9G4f/AHksh7917pEQoDDEef8ANR/9CD37r3WXQP8AH/ePfuvde0D/AB/3j37r3XtA/wAf949+6917QP8AH/ePfuvdYpaSnn8fmiSUwypPCZEVzDPH/m5oiwurr/ZZbEfg+/de6w93d3dh9ffGLdXXMHZHaVFtDtCrfZOE2HU5vdNLsjLxyT0e5uyMphlSqNHVY+kompMVk6HXGpqsuC9FMiyTj3Xuqjffuvde9+691737r3XvfuvdLXYY2XNmaqh3z5IMZlMJmcXjsyy1FTjdtbgrqFoMNuHPYiihmqK+hppTeopaZfJYiVUqPEaSo917oaN5Z/qDKnbNa2bqNz5UQZys7Cqs5hM9ufIbvO/Ogto0WTxVNuTKyYeenk2/uWLd9HgfJRsKapGMqWq62jnqZqX3WumTcWR6a3d2Pi63J1VbRUOXw3Y0+698xYvNSzydlbmq85U7Qz2Txs9VPM2Dpa98DVZOLG0kdSaH7qOOmqqqOJJPdb6TO+d/7e3jtPH0lHs/Bbezg7H3du+rkx2LosdPFT7g2BtHCVwgjwCUmMp6XIZnFZnKwYWloBTYcVH2eNaOmeX7j3Xugj9+691737r3Xvfuvde9+690uNo/8Wbsj/wx4P8A3vMH7917rNsHN0EOXoNrbvytXS9YbqytFid/UpXJ5DH0WEyrrisju+LB411knyGHglbI0DQfv+WBI0LK7Rv7r3TnhetsX19t3tbeCdlbV3NUUlcOtOr8tg8Tuajfe2NzmWaHd+coqTcVBC2Pqn25CHyNKolFBTZOKkqK6OpyNLDUe690F3v3Xulxt3YGZ3RtTfG7cXVYg0+wht98lhZqqpXcmWgz71hap23i4oXFYmPgoKmuygEqvT0aSVhRqanq5af3XumangWjqsJBug5cYGeP+LfZY+rgNalDXFofuaGmqy8VPLUGCNryxqZIhHLZo2iZvde6fN+bNoNoSbSqMPuug3jgd77LoN74LJ0+NrMHlaSiqM5kdqZHCbs25WPP/DcrQ5TEZGlqaWCtrKd0SKro62soaqmqpvde6WG7h/xgzpc/13V3D/vDbe9+690DlJV1WPrKTIUM329bQVdNXUVR4KapEFXRzrU00xpq1JYZArqrGOaJ0a2l1ZSQfde6sh3H8itlbs2T8jaXdm9MPvDKbq+P3wvwXXOPyVFuvG55t+4NevNxd/U+J3fFhKmox1fHnMXuKqzVWa2CKrnmq62inrZJRHUe690sPmN3t1L2HsjdeI6M3z13QbazXYfyMzu59v0eA3Ngtx5vFZ/5q7k7F2FS4jbWW2jTUJlr8RWbVy1JnYs3FXU+Ip67EzpRqr46t917qqb37r3XvfuvdCB1L/zNfq7/AMSRsT/3qqT37r3Tf2Fxv7fA/wCzw3L/AO7qf37r3SP9+691737r3Xvfuvde9+691737r3Qz7V/5kb3Af+zz6e/9x9ze/de6Bj37r3Xvfuvde9+691737r3Xvfuvde9+690MHd//AB+GB/8AEP8Ax/8A956K24ffuvdA/wC/de697917r3v3Xuve/de697917oROr/8Aj48t/wCI37j/APfRZz37r3Qd+/de697917r3v3Xuve/de697917r3v3XuljXf8y/2z/4eO+v/dJt337r3SO9+691737r3Xvfuvde9+691737r3XvfuvdDb8if+Zubg/7VGxv952Diz7917oEvfuvde9+691737r3Xvfuvde9+690N/S//Fv70P8A34bcn/vdbb9+690CHv3Xuve/de697917r3v3XuhF6hodlZTtbrXFdkpkm68yu/NpYvfJw1dFjcvFtLI52Ci3DU4qvqI5o4qmKkeWWB5InQOo1qVv7917o6XYvw+27iJNp4PBUO8drVuP6+7Aoe0s3unK7d3Hk5e/fhzQZmm+bWx+sNmYNqZcpS09VWbbq9vKuSka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mXr8nDSwxRiDVT07TZCQpS0c80fuvdBJ2ZvvEdk7Z7E3ljcPuLD1OZ7L6sNfTbi3dTbveCPH7V3pisDR42vhxmNlWCmxMGPpSKrzyNLFJIJVjdIYvde6QGxeotz76xtRuGOrwO1toUuTkwcu8N311VQYWbOxYpsw+FxNJi6etyeSqEi8H3S4vH1K0X3VG1e1LFV08knuvdPmL2buHYmb7B29uaiWjr16qrcxSSwVNNX47LYLcWMoM9t3PYfJUTPDU0ddQ1MFVTzROfS+lwkqyRp7r3QI+/de697917r3v3XulRtDZO69/Z3GbZ2dhajO57N14xGFxkFRQ0k2YzkuNqstQ7cxUuTlgiqcrXQ0VUuLxUMjVmQnQUtDBU1Txwv7r3RoKFeuulOvuud64rc2xe4cX3bsqswPbXWtThZts9tbexOZGV23u6n2V2AMVmF2hVUE1JX0FNlMfnDPk6OrxNfk8DVYrI1mFpvde6Bna9RnuyoNo7c3Xm9070w/WhpEwvW2Fyb47cdZsavzYynY0OwM1k6DK0GMqIoEE81TV0NZ9vCq1clJU0GNqFh917oWu5exNu7Y24nTG09o9bjI0G1ursRu3snZ2CO3pt1ZTZiPlsbmtwbNgqazCUe8aCJ6Sjq9y4eGnzNPUVe7MVXZbP0uXlq2917oofv3Xuve/de697917oQ+r/8Aj6K//wAR53F/76DO+/de6b9mf8Be1P8ADp6f/wB/bsQe/de6Rnv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6ftq/8fPtz/tfYf/3YR+/de6VvdH/M4u2P/El77/8AepqvfuvdBp7917r3v3Xuve/de697917r3v3Xul3tr/j0Oyz/ANWTbn/vcY737r3SE9+691737r3Xvfuvde9+691737r3XvfuvdCLvf8A49vp7/xG2R/9+9uv37r3Qde/de697917r3v3Xuve/de697917pcdWc9u9MD/AL/Z03/787Fe/de6Q/v3Xuve/de697917r3v3Xuve/de697917qyqOppD/J4rKIVlGa9f5l+Jq2oBWUpr0oz8Wq+Bax6AP5lhaS6JKUCMwZVJKOF917qtX37r3Xvfuvde9+691737r3Xvfuvde9+690LHd3/ADMSb/wwekf956K20ffuvdBP7917r3v3XunjAbdz+68rTYHbGEy2483WJVSUmHweOq8tlKqOho5MhWvT0FCkkriGnilnlKodMaM7WVSR7r3Rn/ljtjc20ovjRit2bbz21sq3xd2NVLi9x4mtwuSNK299y0yVJocgkcoRpIpUBZB6lYEXBHv3Xuijn6H/AFj/AL17917r/9PXV+Yyhfl18qFUKqr8j+8FCqAqqB2blAAqjgAfgD37r3RcffuvdC30J/zO3qa31/0h7S/93cPv3Xugk9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690NvyN/5nVvu/wBfv8d/7o6X37r3QJe/de697917r3v3Xuve/de697917oa+of8Aiwd8f+IUrL/+jK2z7917oFPfuvde9+691737r3Xvfuvde9+691737r3Qn79v/dLpP+n+jXMW/wDRx7rv7917oMPfuvde9+691737r3Xvfuvde9+6908be/4v+Dt9f4xjP/c1PfuvdOu/v+P73r/4du4//dxN7917pJe/de697917r3v3Xuve/de697917oZeu7/6Nu/v6f3J2df/ANGzgre/de6Br37r3XvfuvdCvuLEy7hx+xq3EZnajpSbKx+OqFm31s/FZChyFDlq1aimqqHIV8FTTyoSrASRqSpV0ujKx917oa+w+/e/+z9lT7E3RuTq9cbk2xjbnyuG3L11iNwbx/hNQldTJuKsgy5pwj1UUNZURY6lpEnmjRplcDSfde6LX/cnL/8AOw2b/wCjE6//APrn7917r39ycv8A87DZv/oxOv8A/wCufv3Xuhj687l7Z+OOTp8WojzO3jDU7uxGxc5uHO5DqvNZLeG2Y8TT72VNg5Whjy8EtB4lH2uTNNJPT0ssuqsxdG9L7r3Vke0+wesflx1vv7Y23MnX7O3LnNiZuj3NsfNRUud3BgKdogx3PtmoC0lNuPE00ywSVghFLXwQiZpqSGGOOtl917qv3uL4ibz6e2LJv6q3ds/eGJpcvt3D5WDaw3DHVYeTOUtYZq+uj3FRULGkiq4KWjhnhV/K9ShkWnYKknuvdFN9+691Zb8evmhT1VFgetu+sgIIsTjsXt3aPcsq5KtqsZh8RT/wzCbX7Nx9KtRJV46jo0paHF5iggFTQ09NHTVdPkIJEqcb7r3R8d1bOxedqccu4aysxtdj6P7WLN4g43MUWRwdfCmQwWQmqRN46qkgWU1VHVUUzpVUkyrG4QQy+/de6BvZlDVYvseixdZpFXi63d+LrFTVpSsx23cnRVSLrCtYSRsPUAf6gH37r3Qewh/DFYi3ij/6EH+Hv3Xustn/AKj/AH3+w9+6916z/wBR/vv9h7917r1n/qP99/sPfuvdes/9R/vv9h7917r1n/qP99/sPfuvdF7+dAzdLD8dcc1HU020m6pzOZxv+VB8b/fXI7+yGO3stJQI37E0tDQ7drqtpgZJXqRIr/ammgg917og3v3Xuve/de697917r3v3XuhL69wOzs7Sbvg3duDB7YebF0mO21n8zVbgK7f3GZZd1R5ibB7dp6moyFFU0WFrtuVHjgmNLVZegqTCwXUnuvdC7mNj9QUWGh3Zt9sduCSuoejKVuvq/tPZmDrtrVWX672xlt3bmz+enyUk1euazkW8MbXYrC0Mr7deMT5GTHU8uFjyfuvdcJurOvVl3pSbX3pszcT4Xcuytx9eUm6Oxdobbouy+u2wGe3Dl6DO5SrbGnCZmelp4WqMfUZClejqYBhWjfJ5XE1km+tZ6DXf2C2DtrA4DF4bIf3h3JX0uA3VT7pw2UxlXhcjtrcm1qaXK4TcOHgqqioxWUxOchraSlpKmOlrJKXVUV9HTiWhMuut9BJ7917r3v3Xuve/de697917pcbR/wCLN2R/4Y8H/veYP37r3SH9+691635/P0v/AK309+691737r3Rieh6nBbhzO1th5kY7GV+J3du3fm189nsjlH2NkshltiQbZzuzu29rxLWDJYF8VRVb0MOHxzZeSqqanGwGWLMSGm917oB8vhcvtzKZDAZ+gnxebw1ZUY3K4+p0majr6OUwVUDvH6X0uptIhKuLMpKkE+690r+tK3ag37tCDseSRtgVVZHtnddYYaiurdubPz8k1Bl8/t+GGOeRa3Efe1GZxsccEiNWRL5YKiKSaCX3XujW9K7d21uXrGm/j+zK3sit21tHO7h2js6GGtFdkcnWfKbqba26jj8XiMlTs1VU7ar8zji33NTHRJUvXGNzSrUQ+690PnW3x66GzG6INj5Oj6V3FuCn+UvX/aP8R2zvjfJ2fuP4j5n5AVHxv3DsLZu5qveNVQVGFmrKvDbmxVZmMnRbkjx+tpKzJ09T91S+690EXVXW/wAc4Z/itvDsemgyHVFZ1xLUdv5PIDK4TMbwz/YXye3d0pj6rcuN29uWoqsJVbb27TzbooRh45FmGApYq6kaLKGZvde6X2N6g+P2LpK3YW6erqOm7l2z8Ne7cpvOpr+0YpNgUW/9q7XyGb2x2PiZcVno6p9+U256Kba420HmwtXj5aKtjo2qxJSy+691GPSHT9LDsLLbd2XB2E9Nsfsn447/AMb15j8nurdmH+TnVm6MDuOv7tpuoN2b1xUu6abL4ncLbSGJwufpcYv2dXuSmmo5YYsVD7r3VfXaW3sHtPsnfu2tsbp2pvfbeE3duDG4Dduxoc3T7Q3BhqbJyx4zJbdg3HVV9alLJCEMa1GRrGA4FbWLaql917rJ1L/zNfq7/wASRsT/AN6qk9+69039hf8AH/b4v9f74bl/93U/v3Xukf7917r3v3Xuve/de697917r3v3Xuhn2r/zI3uD+n98+nv8A3H3N7917oGPfuvde9+691737r3Xvfuvde9+691737r3Qwd3/APH4YH/xD/x//wDfFbct7917oH/fuvde9+691737r3Xvfuvde9+690InV/8Ax8eW/wDEb9x/++iznv3Xug79+691737r3Xvfuvde9+691737r3XvfuvdLGu/5l/tn/w8d9f+6Tbvv3Xukd7917r3v3Xuve/de697917r3v3Xuve/de6G35E/8zc3B/2qNjf+8Di7e/de6BL37r3Xvfuvde9+691737r3XvfuvdDf0v8A8W/vT+n+gbcn/vdbb9+690CHv3Xuve/de697917r3v3Xuve/de6sixXReD7M66693ztnGZzrrPbezHWW4N/VO681WZ7E79rtxUzDdG+Osu/9uZzJ0R3DWymizVXsip2AmTxrUc+PGZqq7Fy0M4e5k5hsOXdua+vnCKKAeZZjgKoFSzHyUCp6mP2U9nubPeXnODlblW1a5lYNI9CFSKKManmndiqRQIMySuwRARU5HQ77l6Y25X7Ux+Swu6N0bey21qTtnfuy8nkd/wC3qKsqMfRb861p6Kfd2UrRBEuRaPd+bqZsjRV2PSlqYqyoqpHgpp4CEuQdqvJTPzRu6FLm+aoRuMcK/wBkhHkaEsw/ianl1kL97nn7lvb49p9iPby5jutl5WhEck8OY7zcpRW+uUYU1xhkSCFjWsUQYfFXpd7g+Kmytv4rE4FeyO1rZbNb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7r3RVcv1Nv8AwWxMd2TlcJDTbSyWSwmKFQuc29U5vFVW6sFPujZj7n2hSVcmYw9Pn8XS1WS27V5agpoMtSQTVONkqoYZHX3Xug59+691737r3RlvkZBBBi/jaIIIYBL8adlzyiGKOLyzy7x3C0s8vjA1Ox5ZzyfyffuvdFoP0P8ArH/evfuvdf/U11/mP/2V58qf/FkO8f8A352U9+690W/37r3Qt9Cf8zt6m/8AEh7S/wDd3D7917oJPfuvde9+691737r3Xvfuvde9+691737r3XvfuvdK7Y2xdz9kbjj2ps+hpMhnJMLu7cXgr85gNt0UOE2Js+v37uzI1WZ3PVUdFDHR4nGV1W3lqFLiLxxB5XSNvde655jYO6sDs3ZHYGUoaKHanYs+7KbadfT5/buRrKyp2RkYcXuSnymBxlXNkcW8MtTTtCuVpKY1MUiT03mgYSe/de6VG6ekOyNlYNc7ujF4PDhdv4DdVZt2p3zsNt/Yfbm60x022cxn+tIcm24cfDXw5fF1VKa3GRF6arp6m3280cje690E3v3Xuve/de697917obfkb/zOrfn/AFH47/3R0vv3XugS9+691737r3Xvfuvde9+691737r3Q19Q/8WDvj/xClZ/78rbPv3XugU9+691737r3Xvfuvde9+691737r3XvfuvdCfv3/AI9LpLj/AJprmLH+v/GY91+/de6DD37r3Xvfuvde9+691737r3XvfuvdPG3v+L/g/wDtcYz/ANzU9+69067+/wCP73r/AOHbuP8A93E3v3Xukl7917r3v3Xuve/de697917r3v3Xuhl67/5lt39x/wAwTs65/p/xlnBe/de6Br37r3Xvfuvde9+691737r3Xvfuvde9+690N/dn+b6dFrD/QZsI8fks9Y7N/sSST/jz7917oI8NmsztzK4/O7dy+VwGdxNVFXYrN4PI1mIzGLroG1wVuNyePeOeCZDyksUisp5BB9+691b5sX5KdO716DbdPyAy+zs1Xww5DZ3aHWdPjMV/ebsPI0c6Vu3crtbYVHNGaU5Klakn/AI/BJQUtBl6StqaWTHPFQQt7r3VNkSyLFGsziWVY0WWRU8aySBQHcR3OkE3Nrm3v3Xusnv3XurJ/h/8AJKgGNpele09x0uLpMfElN1Hu3NSx0uOxZqax56vrzdObqpFipsdLJM1Rhq+oAjopmlpqmVaGeCTG+691aTvD407y2mnWHdz1u1qug7Gmr8XLtXCTZ2TcuO3PXbFrmxFHmqHI46jWnzGateLEEtLNULM8MtQGOj3Xugyj+G/bsfcvW/x7bc/SsvZfaGwY+w9ptRb23lkdltgTT5iZKTKbrodsSaK5ht/LgRUtJUQ6oQDUDyxk+690CVXsimj2XR9h4PtLpvfm0qndVFtOrrNiZrsmsy2AbKY2sy2J3Zndr7s2nhsl/AKuChqPtsrQUtWJJQtOI/uGWI+690ut3fHzemxczvnE7j3R1etBsHrzYvZ9ZvfEZ7eeZ683ftztF0g6zpettyUu3RJlq3PzGop8X5KOmo5Ho68tWxx0csnv3Xuk3U9Rbyi2D1V2JQS7f3HQ917s3RsfrzaO2Z9z5PsTJbo2fn49r5vHVuAmxEFDHevnpqek8GVneczxsqBNbJ7r3TzmOjc7ga7d+ByvZfQVLvjY2L3BXZ/rReyM1W71bLbVoJchuHYmEyWLwM+1chuOlEMsEmHpd0PIKiOWm1+eGSNfde6SGD2BlszgKPduSzuy9gbPyuYyO3sFuvsTM5jGYvcmbwsccu4MftnFbTxubzdeMas0AyFZS4h6OmkkWGepjnvEPde6Jj89dr9sbO7F2JhOwaumyW0pes9t53qbN7cy1FuLr7c21sxRRR126Nk7nxZ+3ycNVPTJGap0jqVghpaeeGIQRIPde6Iv7917r3v3Xuve/de697917r3v3Xuve/de6W3ZmKxmB7J7EwWEpWocLhN+bxw+HoXqJat6PFYvcdTQ46kernJklaOGNEMjnUxGo8n37r3SJ9+691737r3Qs9bYrC1G3e39xZTCUGcrdnbBxGVwVPlZsqMdS5HJ9pbc21VVktLiqmlMz/ZV1VDGJXZF8jOE8qxyR+690nP75Uf/ADwGwf8Azl3Z/wDXj37r3Sh2/Lmt1PUrtzqLa2ZShkoY8jU0OI3lLQYn+JzNTY6TM5H+Lino455EaOKWqljRmBUNcW9+6911Hu/ZcGIz+Pz25OkNl4zNHGYquzGysjkezN21dBQbkpMhXUG18fs3LZqkR3aGGokkyElEk9OhSGsCTFZvde6T1VJ0MchjExPc2drsOZKr+8VfU9QblpMpi4BAzY+TDYWmq6lMg8soVJY5aulEaEurykaD7r3XU+0sZPT4yTa/YnXm9qqqgd8vjcNlM5t2u2zUhY2ipMlF2bjtv/dCUORHVYk1lMGVo5J0ltGfde6TWWxWSwWUrcLmaGpxmWx7U4rMfWRmGohSspI8jQT6Tw0NTTTQ1VLOhMc8Ekc8LPFIjt7r3UelqqmhqaatoqiejrKOeGqpKulmkp6mlqqeQTU9TTTxEOkiOAyOpBUgEEEe/de6511dW5Surcnk6yqyOSyVZU5DI5CuqJquur6+tnaprK6tq6gtJLNNIzSSyyMWZiWYkkn37r3U0ZmoG3ptttSYZ6OXN02eSvbB4kbipquDHTYySjp9zpCMgKGaOVXmxzVLUxmiinESzKXPuvdGN7vrNuZrqD4+br21S4rEjcv+kx94bbxERo6DbHYu36nC7c3DSY3HNTUiRUeWoKbD7qiFDC1BBPl6rG00zyY2pjh917orjKyO8bgq8UkkUiMCrxyxOY5Y3U8hlYFWB5BBB59+69117917r3v3Xuve/de697917oQOpf8Ama/V3/iSNif+9VSe/de6b+wv+P8At8f+Hhub/wB3U/v3Xukf7917r3v3Xuve/de697917r3v3Xuhn2r/AMyN7g/8PPp7/wBx9ze/de6Bj37r3Xvfuvde9+691737r3Xvfuvde9+690MHd/8Ax+OB/wDEP/H/AP8AfFbc9+690D/v3Xuve/de697917r3v3Xuve/de6ETq/8A4+PLf+I37j/99FnPfuvdB37917r3v3Xuve/de697917r3v3Xuve/de6WNd/zL/bP/h476/8AdJt337r3SO9+691737r3Xvfuvde9+691737r3XvfuvdDb8if+Zubg/7VGxv/AHgMX7917oEvfuvde9+691737r3Xvfuvde9+690N/S//ABb+9P8AxA25P/e6237917oEPfuvde9+691737r3XvfuvdZIozLIka8l2Cj/AGJt7qzBVLHy6dhjaaVYl4sQP29G+wGvanWCYileQy7prUyGSpTY00zY6GagxTT073DtClTVmOQ/QTuoAsxaGYwecefX8TutNowFPBrlxXVT/hUeB6M3XS+7kj+7d90u3FkfC5h9xKu0q4eDZbWQr4WoZH1t2NTgYaKEA1r07S4Cio9idS1b0lKaufFdiSNN9vCJFeLt3OIpVgLizPKwt+ZHP1ZrzKiLGoVRQDrmndXM13M087FmY1qeoWA2ZVblzmC2js/akOd3Tu7MYnZ22NvY+loIKnO53dGQgwWHwcUtR44YxVVElPAzzOsSLZpWWNCRfpP1ZhjNufDP+X52ThTvfIdg/Lb5Z9K7jxe46vZHUGdxXWXxZ607Pw0sFfiNsZ7fM1P/AB7KZHBVCCSteKCspy+mGtwtNUxPSL7r3Ve+/t45LsfsDsDsjM0WPxuY7G35vPsDK4zEtUvisXkN67kqdy1eMxslazTPBTvUmGKSZtbKoZrEkD3Xukp7917r3v3Xuve/de6NB8HtwTbV+avxOz0NiY+9dnbfkiZ0jWWHf/n64cF3vYp/FxKoHLMgT+17917oKe7Nr/3I70772aEaKLavfHdOCpYWdnMFBj+zcpDjYNbklglOIlDEkkAG/Pv3Xug19+691MxmSymDy+I3DgMtldvbi2/XxZXAbiwGSrMNnsHk4AViyGIy+OeOenlCsyFopBqRmRrozKfde6tA6y+aewe5aPHbH+XYo9nb2pYYsftf5QbXw1JQ0NRFGi09Hi+4dtY6NIKaFTeSTJUyrj7aiY8GTPX1HuvdC32J1ju7rCvpKfcVPS1eHy9pdsbvw1RHW7X3VRywfe0lTia+JnUSSU5WoFO7ajGRNC09M0dRJ7r3SVgLf3fy/p/5fu2PyP8AnW5n37r3TRdv9T/vI9+69167f6n/AHke/de69dv9T/vI9+69167f6n/eR7917r12/wBT/vI9+69167f6n/eR7917r12/1P8AvI9+69167f6n/eR7917rNR01dkshQYjFY7IZfM5aqjocRhcRR1OVzOWrpf8AN0WLxVAkk9RK1iRHFGzWBNrAke690bej6R2N0WuK3b8ot1VlJuqI4/O7X+OfVmYpKztGtqqadK7H1W/9z0Uq0+ApNSrIDT1SMwF4MgahTSH3XukBvrsbontrPZvPdh/GnH0mRzUziXcW1uwc0N2LQwhcfhqKfJ0sGI8/2VBHFTpNMXlIijVTHEixr7r3SFn+L/UvaNFnx8et+7roN94jD1Oeo+se1xho13RT0ESSV2N2ruCgjhMLqpfxtUVGQIZPJWGhonaqg917pH/Hj4n98b731iq59hZzZuEw1bkIclX7yxVfisrUu1DWYiWLa+05kWvyjRzctURpHQiMF/vfVEsvuvdCHiNnfDvYGLpNvzbc3j8ga2vohSbk7DqcnXbVpKKGaJw8/X+DxtbQRwyxN4xA7SVBK65FycwaONPde6S25fh/Sbso63cvxi3/AEvZ2MpKZq/J9b7wqMftjtHb8NmZ4Yp6paOjrlUjSr1UFBG5Dx01TkJBC9X7r3RMMzis1trNV22tzYTL7Z3JjCoyW3dxY6rwucoQ5IikqMXkUjmEcgBaGYKY5Vs8bOhDH3XuoF2/1P8AvI9+69167f6n/eR7917r12/1P+8j37r3Xrt/qf8AeR7917r12/1P+8j37r3Rh+kSf9GHzM9P/NBNifkf8/8Advc+/de6Lxdv9T/vI9+69167f6n/AHke/de69dv9T/vI9+691np6HBZNqii3TuOu2ht+XG5Y5HP4zac++slS6MZK1FT0e16XI4l6gz1HiilcZCIwxF5VEsipE/uvdCx3/XY/J9z9g5LGbozW8oKrMpE+aze24toPD/CqGLC0O38PgYa2vWLF4mipqXG41vLHrggRvBELX917oILt/qf95Hv3XuvXb/U/7yPfuvdeu3+p/wB5Hv3XujCdIdCdtdmZbbO5Nsbenx+yFztf/FeyclXU+O21tzH7UQZDdWVqamOT7u1HAHCPDAUMwKNLGkNTLB7r3VFvYWzIeut97w2JSblxu9sZtTceYwuA33hZFmwHYe16HISU+1ux9tVMckqT4rcOPWmzGMqYppY5qWpikjllRldvde6R/v3XulTgo3z+K3DsBhiiu7aVKnBS5OOCEUW/9v0tTVbGngzXjaajWrqJZcNVPqFOaaumaoAEcc8HuvdAOySxvJDPBNS1EEs1PVUtTE0FVSVVPKYKqkqoH9UcsUitHLGwurAqRcH37r3XXv3Xuve/de6GjpLOYva+W3Juek797A+MvamBxuMqen+1Ov4eyx9xXVs1Tjt9bH3dmeoWOfxVDkKCSmlhyFHTVUJkgeCrpJo5k0+690f/AHJ8wdm7u/0N9ldsd9bb71+YPxk6/wDkDvbY3yHl+N27NrUu++xMptCg2r8Suga3OfwTE5Dc77IzSVvYUm7t87Vx+PhrFjxkE0pqK6qq/de6XGx/k18bcb8ffgpmO1N24nrPtjaXV/zz6G3hguiei6+pydF0f8qshvjqvbffNZtvbEOH2sH2zuqgqcpV7UxWXpa6pgr62px2NjVYIZ/de6IhsfMdVdObLoOv8f3bt/s7K74+SHxc3ruvN7T607l271f1v1j8cstuGqfdmQy3YODxO5snnMk+56pIMDh9qVUVNSU80j1s9VNS0ze690YrM95dE9afMr5ffMbaXcW2u5sh2BmPlhkfjn1vs/rHvDHx5zLfKKmz2AxVf3pU917S2rQYzDbcx2YNVmMdQ1GRnr6tI4aO8aec+690Wn5KdhbI37sz4S4vZ26qDcuV6i+GW0en+zaOjwe9sL/dXsfEdp7q3tkMF5t3YrHQZCJaPPUarXYiespWljnRZyqRvL7r3RW/fuvde9+691aT8EvkbsHcWzv9kE+UOTpsd0xvfMVuQ+M3cGR+2+/+LffOcrJZ8XTRZfISRxUu1Nw1tZWRzwVLrS09ZWVEMslLRZerrKH3XurUZunfn/s/r3b0fWnSW5cxHsTpPIfHrBdgddfIPqLsXruWjqNxTbg3Hu2r6gyOAiraw5OidaBsduTJzwQUTJJTQ0LVVTBL7r3Tb2f3d8o5Nr7h2l2J8EO6qHYO9tydiZ/eeIodx7yzFbuTa+/d27931W7apd1bX2dkJKGNa7fKDJ5OkQDK4+jrcbV0qUOerYab3XukdW/JHtbau3dmfMHf+0crQb27g7a2XgMrs2p3d2Bs6TtzK/GvqfObF3d3bQ47KYCvxeDoMvRbpwe38nicotbJXzYelqkjr8ZJ46T3Xuiob6+Seb371XW9U5bA57J0ku4YNx4jdO/OxcVvzP7Zr592/wB8dz12AfF7S27LT1OZn8kFbTR1a4KGKqyEmP2/RVlYKuD3XugNxm6dy4WgqMVic/lqDE1YVarEwV0/8IqQmrQKjEyFqZwNTcPEQbkHgkH3Xuk/uHYuK7QxEmOwW2cZh+0MaKit2pHsfbOCwGL7EpAkZrthZDae30oqSLKxoklXtyqxNGJqqXzYmelrJKvGTY73XugRxTq/RG83Qq8b9sdXOjqQysrbO3eVKkfUEcg+/de6Cf37r3Xvfuvde9+691737r3Xvfuvde9+690anaHadd8ZtvYfI9S7li/03752zjMxuDeC4zC57EdWbQ3FPj94YXZm08ZuKnrKCozuSSiw2VzuXkpmah8dLjKTxVEOQll917o0OG3g3dw3RW9b7xqMFuHt7FZXfPy17i3xn6bcHd20tq40rFnepet9i0DHM5fb9NHFTJjptuQVBrqaXH0mRXEpSy0cXuvdccfR7N3lt+uo6ihxGy+h+lMfuzcnVnxdz26KLF9qd/702xinlqd79sYqminyEs+Zq0p8PQXxkkdRXVdJh6GM0nmNT7r3TKzdi0fYaOww29vmfvjCxCngSKml64+InWc1J+1+yfu6SnrYKOsUxRaZxGs+pvvnrgNza690k8djtt5bbe9dn7O3pX4bobCV7Vvyg+T1YXqN196brqGasn2NsaeqNU9XHVSVTCGnD1CyLUmqqjVx1YG5N9e6WldXYbE4frzeu9evQm20ENJ8Ovh1SRVdfUbtqchWNTY7tXtbG0xlqaymrKuVpEjkL1WZqZHRHkp5Kqqrvde6FDrvGbqxXb+5f4ruej3R8sM5sTtXP929y18hyGw/h7syo6d3BR0VHjMvi6qjpoM5RyvSyVdVTVP21HTU0mLpUemaunl917ovTT7EyPXs7zVOd2h8PNpZoz5rKSzVOL7P+Y/aeMl11bNUyfb1cWLiq6dyXZohSLEQDBX07vtj3Xuly8m8KPeGxtxbi2NR575GZ+ioMb8XvjBjKKKLanx+2rFCDhN7b0wVqeCmr6aCnWooKGoWBaIQfd1YppKWKLBa610MHx62jt/P787m63g3ZBuKmPQ/yL3N82PmnXbV3F2Jj+tEx/UGWyeEm6rxe3KzF5Gtp9uZukoqrxUMy1GYlgMUVOKOnjhpt9b6EHdnS205urd27j3J1jujZfxb6uzPam2+nNl9e5Wph2RvrefXvTlHvTpX5AfIDsyPb1ZFuzDduVdTS4XBbgpKjDUT/sxYd5YqiKm9+690NHePTPYGQqsXu3CbE2jXfNfcu7a/D9UbCoNp4PYuE+NfUXY22es8XTbk3a8+30oqyk6wzWSqsPW0jz6cXJuumyAjlo6qSPJe690hM38Ver8LtHuLrfaSdsYva24tm9I7z7F703xvmh2x2DX9vdjfKjN9Bbm653Tlt7bfxM+Wgf7WSPH46sxOOhp6itZ8rJJVZSCfKe691Frer+qtm1Gx63tfZtTtLbFdtr4ywfHn4kbxqaxdz9R4PtXvLJ9a99dy7427urCYTJbgqKCkwUuRpNw5Pa5YSbhWlraWHJilytTrr3UP/RZ3TJ8iqjrLN9KSbV+R9Vgd79i/I/vvaLbs6doNjfGNMtj9n0NH1Jv/AHhhd20+brKeVo4G7CwW1aipNLWyUlRUyNjclmsNvr3Trvj4ybA2d1/NsXNYTsaj+LHx7x/Z57ExnVFLs7E/JD5kb22F81uw+qdz7ieXFwV9Rk8RsnHYPEV9fDU00TY+nrqNJJaGko1y2H917p+67+K0uZ371t3Hv3rDNb6ye4tidEt8R/jLQbwxmyNq9dZrtf4X7z7oeoyNVW7d0xnHb52XUYvB1E2OkONjpYmyUOZrKCCGi917pj6i+N8Pa3ZL9V9cYzsmibdfQvRlf8u/lwm/o9wZyt3l8jdmVXYW0qTrRMfs7IxV21BUQVmAGKwAw9JWphaDGV+Zosw0cdZ7r3SD2J2T0n1Nu/4L9h7rxuQ6n6DPVW3avC9AyYHaW5979t9wdhUe5+it19w722lPUxUWQin2quL3VPXVhWlanrof4ZG0lXDFX6690+/Jzrql6m707V2HjKVKPDYvOvlMFTUtOtNiKPC7qxsO6qDGbbYSS+bF0C1hx+OqWYNLBAjuquWHvfXuom6MLWVOK7Y3Vj8H4nwPYm6cYMvJSyVtHWZKp3oa1Kx6yqUJSy0EUfhemgkkWeGreWWCP7cTe/de6P5v/e+wsLW7k+e1P2EM32Dk+naPZfU3UeTxWOxeB2125uGlpMD2Bm4MJO7ZrM1K4+Glpq5lSkajo4qkGompa6ilg917ot/c/V+d7G/mA1OH6TqsmnZPdu0Op+6OxO/8xm9vpSdE/HTGJSbS3LWdYVm7J1iOT3HPiZ7z1jOxeqFJAUieoqMf7r3VfHyU7No9+d5/K3I9Ydm5PB9C7x3tl6LvDu3a249cHdW3KVYqLB9R7Flwwjgy2BaJIVpoJYpkqVeOaWL7R4qbM+690XEVGPy9Ds/dO4NqJ/dBHXH/AB0+PNCz5CTdlVVSmKDeO9IYzNJU008sokd5TJJkpHYXkpZJJMt7r3S4hqNwY3c+QoMbuLC7i+RO6qCoqd99i1mUo/7mdC7RdfDkaHGZXW1PFUwRyNDU1MLnx3NNTlmaWSXXXumahzu3sLtrJHbO6Nw7N6K23kZ4N89j4+sqMR2N8hd6VFDNFVbbxTRywTrR1EDVCR0TyrDDTeWorHQJLJR+690PHxR7dpuifkt0l2T2Ltt6CPLyZDr7avQu1aPKVkXVvSu/cZLhd37z3JhMREKyrrVg05KpgeFKmoaleZ445KWKDB+HXulJ398ZdtdP7G2f3B1r3TsjtrpvtLsjfGy+tY9v4nL4fO4/HbTkr5KxmbISSRZOiw8tE+ByVdAIXp637WOeFXrFCb690Vb37r3Xl1STQU0MctRVVdTS0VHR0sMtVW1tdXVC0dBQUNFThpZ56iZ0hggiRnkkZURWZgD7r3S3ousO0MlvKq66oOs+warsKiwGU3ZVbGXZ2fi3bDtXC05qsruZsDUwJUHHwqNJrAhiaQrCjNM6Rt7r3S9x/wAWPlLm/wC8ce3/AI49v5is2rlIsDm6P+6r4V6LPT4yLMxYqSo3HJRwllpZ4J6iVJGip0dWqJIrj37r3Rr+0+p/hP1XvTafxH7/AO7929afLKu6M2VXYjujO46HHfG/rrJTZPK7i21sndNMtehEufqqyuoJp8vojjp6alqIcjjKypNBVe690g8j/Ld+W9Ni6nObd2x132ngqekqGhz/AFH2pt3dOFzObpJp46nZm2KnNriZcnmUSB5RRUUMivdYIpZKs/be/de6IqjiRFddVmUMAysjC/4ZGsQR+QRce/de65+/de697917r3v3Xuve/de6EfrLqjefbmarMJs2jhqJsZjny2VqJo8rWfZ0C1EdGhhxG3KTIZOqlmmljghSkoJFEjqaiSnhLTL7r3QbrLS1GVlw2PqkyWQjas8dHSxy/wARlioKeSsrJjimH3MYihilmmV4wY0R2fSFYj3XulDRbS3XkVp5KLa+4amGrpEyFJUJhsgKSrx8lUKCOupauSMRSQtOwhWRHKlyFBv7917pPbr3Jiuu9sVmRSt29muwMnkZ8DtvE0eY2Vu7HbSiooIZty7k3jgomyKyTNFUx0OGo6qKOJpzVVbPIcetPN7r3RZN5783n2Jl0zu+dzZfc+Tp6NcXj5MnVF6PCYaOtnyVPt7bOJhCUeKxcFRVVM1NisZTwUcDSyeGCPW1/de6Sfv3XujufHFgPj18pFjmaOtfO/HkUkUU9HDPVwpuTOS5mBUmdJ5Y1x61c88dIHfxxs0q/arUMvuvdScRkarbFDubf0NdW4f+423MpkMZmsfU09LkKHfGXoJsF1uMX5mDS1CZmemr3ihVnFJSVc3oSF5E917osfV6x1eYzeAFZiqCt3Rs/cmBxFTncziNt4MZWSjGQpabKbiz89NQ0K1H2zU8NRWTxwid4llkijZpU917p1/0I7y/53fUP/pQPQ//ANknv3Xuvf6Ed5f87vqH/wBKB6H/APsk9+6917/QjvH6/wAb6hv9P+ygeh/oeSP+Pk9+6917/QjvL/nd9Q/+lAdD/wD2Se/de6QO59r5rZ2XbB5+npqev/h2DzMJosni8zQVuG3Pg6bc23MvjsthZqilqKaux9ZS1lPNDMytHKp4NwPde6T/AL917r3v3Xuve/de697917r3v3XuhD6v/wCPor//ABHncX/voM77917pv2X/AMBe1P8AxD0//v7die/de6Rnv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6ftq/wDHz7c/7X2H/wDdhH7917pW90f8zi7Y/wDEl77/APepqvfuvdBp7917r3v3Xuve/de697917r3v3Xul3tr/AI9Dsv8A7Um3P/e3x3v3XukJ7917r3v3Xuve/de697917r3v3Xuve/de6EXe/wDx7fT3/iNsj/797dfv3Xug69+691737r3Xvfuvde9+690LvVXZWL2Dju2MHnMHuHN4btfrih2BXnau8YNkZzEtiO2Nr9uYzKUuVqsXmIZY/vdrU1LVUktHaWnnl0SwyrHIvuvdGr+JPyq211D8g+mdx0XVdXl8pH8lmyEO8Mlvt5eyMrtHvPaY6W3TtjsDddJi6cbgagqqqg3NiL09HRCr/jENZQVUeXhkxfuvdJ3anzIx+D291RtPdfWFV27gdj4Oo2xuSTtXe9BuHd391cl0jmujM7snpTsnH4Ci3HsrbtXSZ6qzsWAqcpm6HHZqixNdiIccKWrhyPuvdBdsH5DUu1Nm7F2PuXrLa++sFgIuw8Dv2ira3I4Kl7d2DuqlOV2VszeiYXRLLDtLdNZmN44hpJ5YnycmLmqKaRsFj3X3XuuEffeJPWWe2XP18qbs3T1ZuXrbdW/MZuiagO8MjXd94Xvna/Ye88FPRVD5PNUU1FlMHXVFRX2qcdLioqMYtsTMcr7r3Szq/lRgs7mfkm+9enqHeu0u+O6ar5Ebd29lewN34rK9Xdsy74yW5DW0u5tqHHnLYqvxmby+BzdBU0cVRURPR1dDXYytoxPN7r3SJ3J3xhN3dzfJDtXcfVuDy1D8gqrubJUmDrMrLNnOqs52TumXe+1dz7F3e9NpjymCyC0lPNWvjdVZjmyFLCMdU1kNdQ+690uO5PlXh+88j2i++OqIpcNu7cmU7L66oKTfGROY6t7b3Ptba2z985+Xc9fRT1O4sLnKLauNFfiMsprFkpaKany8M6ZKXLe690w1HySoswd+7e3FsrJ1HWnYXUPQ3WuU21gt30GG3TRZ7459XYfr/r3f+P3lXYSvp/O1Ri6iryOPmw0lPPTV9RSjx1MVJkqb3Xusu8/lDNvnrLt3aWa2UlXuzursrKdlbmr8juKTL9W7U3FmN8nfuS3l1J1bkqOSt2vuyoIXbVbn8dujwVm3HqMbXY2pqpYslT+690w/Ir5Bz9+Vm3p6vEZ6SqwM+4KqXfPZW58R2X3ZuVM/R4qgp9vb57gocHgK7cGIwceJRdspnqesyVClXXQSZSqpWo6ei917pcdw/KfB713x2H2Z1h15uPq/fPb+x8nsTsTIZnsmj7AxkOK3HhaXbm74uuqCm27g6jExZbGwT4ysiyddlm+zq6uGORDIkkXuvdCntz5QU2QoMxuTF/Fegy/VWyuy+wOyOyNkbb3VlqHYu0dt/JTo3H/H7f2C25j8NjzNtHFLlKaet2jnIi4w9XWYugr58tXpR1dZ7r3RdN7fJXeu++rMBsTJ5Xe9LnINs7H683vkcd2RuSl667A626nwuMw/U+DyfTkQGMp6/DLiqIvXRVDU1S1PBVtj48uazKVvuvdJP/SNtSo6QxXVOS2fuGpzu2t6dmb821uql3rjqPBQZzs3bO19p14zm0JMHNVVcNFTbVop6WOnzlLepZnlMkOqnf3Xujhd6fLpan5Ibo7Jquuo6mXcuW7y7NqNvz7sn/h1H/s6/wAPdm7CyeBhqYKBJJH2zPTSVtJkgsZrlMMclLSNGXf3Xui29r/I7L9odf7D2emOz+0qzCbY2RtXsSLDdkbyretuy4+p9vnZ/Vm5j1VmZp6PEZmjxbyQ5Semq5KOonJqMdQYfzVsdZ7r3Ra/fuvde9+690Zv5I/8Wv41f+KybI/97DcPv3Xuixn6H/WP+9e/de6//9XXW+Y/Py7+VJ/r8kO8f/fnZT37r3RcPfuvdC10Jx3b1Mf6dh7S/wDd3D7917oJffuvde9+691737r3XvfuvdDp1n151bnouyF7N7dg2DkdqbJnz+06DGYeh3NT7tzq4qWsbBjLtkKWFamlqftaKTHUyz1NQ80xp/8AgG6y+690BZNuTwBySffuvddAggEEEH6EG4P+sR7917ocfjtu/a+yu0I6/eWWyG3du7j687t6wrtzY7DLuJtrSdzdI7i6goNz5HACSKWrx+PqM5FV5SKkZqv7NJ3o4amrWCml917pb5+v64zG09mdJ5HtTAQ4vqXG9+70o+1tsbW39ntq783Xuba1HntjdfYPb+4sbgs3THIZLDUeFnzOSx9PDSS1rzPBJSUQnrPde6G6P5BbZrens5sLuTszaPyJ68wXSGU676B2Du3qCql+Q/UO8snT0WY2PV4PvKbHY+qwWB2jl4Hjlo6PemWoMlioRil21FT5RnwfuvdEa39hNp7c3XkcPsjfCdj7ZpYcU9BvKPbOW2fHlZqvD09blIU29nHeqhFHVyT0OuVv3vD5lCpIqj3Xukf7917r3v3Xuht+Rv8AzOrfn/Ufjv8A3R0vv3XugS9+691737r3Xvfuvde9+691737r3Q19Q/8AFg74/wDEKVn/AL8rbPv3XugU9+691737r3Xvfuvde9+691737r3XvfuvdCfv0/79LpIf061zF/8A0ce6/fuvdBh7917r3v3Xuve/de697917r3v3Xunjb3/F/wAH/wBrjGf+5qe/de6dd/f8f3vX/wAO3cf/ALuJvfuvdJL37r3Xvfuvde9+691737r3XvfuvdDL12f+Mbd/D+uydnW/9GzgvfuvdA17917r3v3Xuve/de697917r3v3Xuve/de6G/uw3j6d/wAOi9gD/k6s9+690CHv3Xuve/de697917r3v3Xuve/de62muku0OxNr9NdB0+eo5MzSdn/DbrCjoMluzDxSVGIy+ysluKbqrsja1RVwASV+ExSU64isIkjdJopXaYxkN7r3Rx9qbWydf8yv5ce6/wCBZKbLYr4l7Ng3xkRjcvT1GOxI6x3vDhnyEKQx0ccEeSrHhn8ISSmlqaeKoTx1UGn3XuqlKjZXyf35sXbmZ7H633vQ5La1Pt/q/DQ5vqzC9Rbh3nvvduXatwvV+3Nk0GN29DlMl90lfVPJQ4wpTQxSS1k6L4mb3XujHy7Ry/a/VG7Phtt+m3LuPtj4YJluxtlvh5s/lcP2rVYjN1uE+QHXGMwNTDSGL+7tVmzTbBM1HJU1Kx1MNMYIK+ZX917px6w3tS9M9Rfy2e5N34HNybJ2X8gPlfkdwVH8BylSlPidxbwjwiZSKmSMPLNTQtV5Sjp4w007UMggjldCvv3Xuiv5D40ds027psBtHbVZ2LtHIZbJVW0O39nSUWe6u3Pspq+aopOwchvzGTTYzFQfaK1XlI8pVwzUrpMjq9o3l917pe7swlR3f0H8bct1Dj6zeOc6G2dvfqrtfrvbkMuS3jhmym9Y9y7d7jxWy4mfJVWJ3SZzLka2hpZEgrTHTSKhp5/D7r3RL/ntFntp/HT41dfb2w2SqNzT9gdwdgYetqHatxPVe0cltDZmxoeoqXI4/wAuNpsxkanASbw3Ft9Kj76gavoqjJQQ1eSkjX3XuqnPfuvde9+691737r3Xvfuvde9+691737r3Qi9wf8zd7X/8Sbv/AP8AetrPfuvdBwWVeCygn6AkC/8At/fuvdd3HAvyfoP62/p7917oZ+tD/wAY/wDkOP69YbYt/wCjw2l7917pKdd7AqOyM/Nt+HevW3XsVPia7L1u7O1d30u0dqYuko2jp9TFVqMlkqhpZoljxeBx1dkZE8ksVI8ME8kXuvdKbuDD7byG6M5hc72JXZPYGIyldj+tOuerIsPT7a27tPG0xjwOS3ZU1T1eLm3FkGEQzdZFBkq2WTy1FVk2YQ0EHuvdOMO5OwNk7VjyHVOTynVnX9RVZmOmw2zOxKVd8vis5V/YQZTtCt21PSZiu+9OPakp8jlaOnpJJKeZcfT0sTeE+690zZzK9ab6xHX+H3Rle1cEm1sbPJuTKxfwXtPP7gztTXS1ueqcdld412NqaWnrqeOmosVioqqGgxsl6uoiydU9XV1XuvdBnD0+c9S1NPsjdVPvrdq5XCUWF2Iu2Knb+4930OZq5MYzbVjq62qirMvDUvj0G34HeoqUnmeilqXpTDN7r3RjNs9e9wbfzvSvxd7Fbp7Kb0zuc2HtrYXQ3blb8hsX2B0cvyagoMzt/wDi83X+Ip6OiaClqMRmq3bkddmq7DffwrPhGdMhj6X3XujH9NfE+k+YOwOut9bPzPV3TkG9MBR9eddDdmX3fSY4ZnaWS7Dx+K3d2nvDaPXFJj6yfc0nX2coaioqKaimgeXEyrWZCuMmCl917onm9ej92bC6h6P7kztZikwvfKdgTba22KPduO3ft+l2BkMdRtkd14/cOKoaZaTNQZSlyG36zG1lZDWU3lfXHJDLEvuvdA17917oa93LG/RvS6v+lt09wJIRGJD4y+37jQxUN9TZSwB/qL39+69009ydi0/Z28Uz1HRZWCjx+Fotv02V3VmJd0dg7sWjrarJVG7Oy941IWXLZmqnrJUE7gJSUEVDi6cCkx9P7917pCZquw9f/BjiMGME1HtzD43MquTq8lFmtwUEBhym5YlrBqpfvjoleiR3jifV4isbLGnuvdMvv3Xuve/de697917oQOpf+Zr9Xf8AiSNif+9VSe/de6b+wv8Aj/t8f+Hhub/3dT+/de6R/v3Xuve/de697917r3v3Xuve/de6Gfav/Mje4P8Aw8+nv/cfc3v3XugY9+691737r3Xvfuvde9+691737r3XvfuvdDB3f/x+OB/8Q/8AH/8A98Vtz37r3QP+/de697917r3v3Xuve/de697917oROr/+Pjy3/iN+4/8A30Wc9+690Hfv3Xuve/de697917r3v3Xuve/de697917pY13/ADL/AGz/AOHjvr/3Sbd9+690jvfuvde9+691737r3Xvfuvde9+691737r3Q2/In/AJm5uD/tUbG/94DF+/de6BL37r3Xvfuvde9+691737r3XvfuvdDf0v8A8W/vT/xA25P/AHutt+/de6BD37r3Xvfuvde9+691737r3QldbbRfcuXj1eimprzzykXWOGIgySN/gL/7f2DOduZV5d2oyohlmlIjijHGSV8Io9KnJPkAT1kx91/2Sn95uf47C5uEsdssY5LzcLyT+ztLK2Gu4nb1KqNMacXkZF8+h6yFfT5HIR0dGp+wxMMdHAePUsC6A5sALm1zYcnk8+0XIHLl1sm2vPuL+Jd3btNMRw8R6VVf6KgBR60r59CT73fvPsfujzrbbXyXbm12Dl+1i2zbY2JMhtLUsElmP+/p2ZpXAoFLBR8Nelvmwf7g9QcH/i0dl/UEf81izfuQOsQ+s3Ve5azZfbvTW8qCaOnq9od0dQ7ojlmZkgVcB2Ri8rOtVIgLLC0cTpM6i6xliOR7917ocfnfhRt/5wfLTGJSiip37qzWcp6dRIFtu3C0G7ayqHkAJNTVV1RVMeRqkOk6be/de6Kr7917r3v3Xuve/de697917pUbD3U+wuxOst/pKYH6+7S6y7AWcKJDAdjb8x26/MIyrhiv2eoKUYG1ipBsfde6Mv8AzB9r1Gz/AJ0/KzDVIRXqe1f71RrG4dBTb92fid9UxupIBZMiHcfhiQQDce/de6KB7917r3v3Xuve/de6Nd8dPl3vnoLHy7AzGIp+2egMo8i5zpvcM8YXER1VT93W5Dq7N1gdcLVGUmqNEyNQS1H+UCOkrmGRi917qyHH7W2N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r7blZvXdHWW3qHGZDe+xM1Fh8duHsvPdpYrNZLG7lmwWEx9fSYvG7nw+3sxjgcdl56uoxlDDUZGb3XugE2j0lkt09Hdtd1HJVWLpetcptKlxGLn29XT43fePrM5Rbc7Jmxe7InFLTV21arcmxHqsXPGZqqmz6VMBCUVQD7r3SxyvxuXEfHbbPflTu6vWLc+0Kbc9Fhv7ofcYZcjX97bp6WxuzJdyY7JVFXBkamDZ+e3FDU12FpsY1LSyUYyJybU1HUe690V337r3Xvfuvde9+690s97f8Cdnf+Ic6F/98jt6/v3XukZ7917r3v3Xuve/de697917r3v3XuhD6v8A+Por/wDxHncX/voM77917pv2X/wF7U/8Q9P/AO/t2J7917pGe/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917p+2r/x8+3P+19h//dhH7917pW90f8zi7Y/8SXvv/wB6mq9+690Gnv3Xuve/de697917r3v3Xuve/de6Xe2v+PQ7L/7Um3P/AHt8d7917pCe/de697917r3v3Xuve/de697917r3v3XuhF3v/wAe309/4jbI/wDv3t1+/de6Dr37r3Xvfuvde9+691737r3XvfuvdLjqz/mbvTH/AImzpv8A9+divfuvdIf37r3XvfuvdGa/2afcqRoD1N8YwsMMMWp/jd1ESUp4ViEksj4u7MQuqR2N2Ylibk+/de6HTZmZ+RW8uydpdXP8beh9n5zdW/NsdfS5LfXxJ2PtzAbSyu5927Y2XHkN6Vsm3ZJaCioqzee1RXyGneSIZbGhYnlr6OOf3Xuk8N7fJQU8NRN8QeuKQzbgo9omlrfhXsylr6fd2Q2R/pLodqVlBNgBNDkptvB85FQyIJpKBJKtEanjeRfde6Y4u3e7Z8pgsHB8ZumZs1ujbVbvPbOHi+IXX0mU3Fs/GRZCfI7swWPTCGWrxlPHicq89fTo8CLR1ZZwKebR7r3SsxW6/kFlO1ano+f46fHDbPbdPogj6/358d+kOvty5HK1lHTV+A23hsfvahoGrcrmoqyjkwGMpfJU5RaiB6COoSVGb3XuuGz97d07vynSNGOk/i3trFfIPsap6v623Vur47dQ47AZDcWMrNtUudq66OlxNRkIcfQpu7A1Etd9g0csc7/aGpkp6iOL3XumvcHY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Qxyxo8YSWKAr7r3QC+/de697917o0GE+W/auAfrnLUK4Ft89TUfX2H2D2FUruKbM4TbnV6UlHs/bku1P4kNqVkENBj6DEzVNdtyatnoaeOlmqniDBvde6VFZ8j+z6+m2hXdWdWdC5DG7T7E6n7mx/XtaO1Kmu6q7t6czG7pNkdlbYp8lv+iyW4qbKVO7KrNZ2TO1WdE2enP30cVLUwwVfuvdIrsT5kfJir2pmOl+6NqbEyvX24t4bH7Mw/We69pb3xdB1tXbLwtRtLKxdHVFPuGOu2xRbhleeu3PQxVNRBJlDNPBBRJV11NV+690D2z6faHYDZKhx0O5Nrbgxuya7NJjaqfEbqxeWz+LzsOOp6DGZGH+GVr/AMRp6qmkeMYxhQtHWVU0r0UN0917oUuwtvZ3DdF9MvlMPkaOmXencVHFkJaWU4msnDYKwxuXjDUtUp8UpV6eZ1YIzKSov7917pGdZ4fqbLyZb/SlvHPbUWkq8FLi4MLjaupkzGI+3yNXupaWvpsblYkyCGnx1JjqatjpaeWWs8stZHFTSq3uvdB5k2xjZPIthY8hFhmr61sRFlnppMrFimqWOOjyclEBC1QsOgTtEAhfUUGm3v3XuoPv3Xuve/de697917oQOpf+Zr9Xf+JI2J/71VJ7917pv7D/AOP/AN8f+Hhub/3dT+/de6R/v3Xuve/de697917r3v3Xuve/de6Gfav/ADIzuH/w8+nf/cfc3v3XugY9+691737r3Xvfuvde9+691737r3XvfuvdDB3h/wAfjgf/ABD/AMf/AP3xO3PfuvdA/wC/de697917r3v3Xuve/de697917oROr/8Aj48t/wCI37j/APfRZz37r3Qd+/de697917r3v3Xuve/de697917r3v3XuljXf8y/2z/4eO+v/dJt337r3SO9+691737r3Xvfuvde9+691737r3XvfuvdDb8if+Zubg/7VGxf/eAxfv3XugS9+691737r3Xvfuvde9+691737r3Q39L/8W/vT/wAQNuP/AN7rbnv3XugQ9+691737r3Xvfuvde9+690az4xbpwGC3JIc1tjbm84lo6wf3U3YUXb2dMkDxChysjQ1GiJmZSZBC5S2sC6j3C3unMds3Dad8uQTaWtyGlNKhQyMquRntUnJ8q9dOPuFbZHzxyj7g+1eySKnMG+7I0e3qWCNO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e20MFW4Db2UosdHXYXc23Jc1Dt3bK7wgwe9cO+3t4YnH71WjGWpabJ0E1VRVdPTViRtBU1cSoqVdSJfde6dKTunsbHYypw2Ly+HxGLrtgb+6wr6HDbH2Dh6fJbI7NyTZnd2JyiY3FxfdyNWfb1WOranyVWMlo8fJjJqNsbQGm917rmvdnY64ZNvHK4J8JFsDLdXRY2bYXXs1NFsPNdzD5B1+341lxRKr/e9RlqecHz04H2dPJFQE0p917oMaupkraqprJlp0mq6iaplSjo6PHUiyTyGV1pcfjo4qeCMEkJDBEkaLZUVVAA917qP7917r3v3Xulnvf/gTs7/xDnQn/vkNve/de6Rnv3Xuve/de697917r3v3Xuve/de6EPq//AI+iv/8AEedxf++gzvv3Xum/Zf8AwF7V/wDEPT/+/t2J7917pGe/de697917o+vRPWnTe4uqKXM7rxWHyU9Sdxje24K3KyU1RtRqTLVNKsEuRSpj/gaQYZafIpUKCzmTzyCSJlii917ohRCAkRSvPECRFNLF4JZowbRyyQf2GYWZk/BNvx7917r3v3Xuve/de697917oycfxj3pL1429VraU5YYOHco2h9jkvvv4VPi3zkFE9f4/GuUkoo3qI8eUswBj8wmBiHuvdFs9+691737r3XvfuvdP21f+Pn25/wBr7D/+7CP37r3St7o/5nF2x/4kvff/AL1NV7917oNPfuvde9+691737r3Xvfuvde9+690u9tf8eh2Z/wBqTbf/AL2+O9+690hPfuvde9+691737r3Xvfuvde9+691737r3Qi73/wCPb6e/8Rtkf/fvbr9+690HXv3Xuve/de697917r3v3Xuve/de6XHVn/M3el/8AxNnTf/vzsT7917pD+/de697917pzwuXrcBmcTnsbNLT5HCZOgy+PqIKqtoZ4K3G1SVlLNDW42WCohdZEVllp5o5EI1I6sAw917o6NN8/O3cfmsln8Ps/qXC5Gq7K252fi5MftfOFdu5fbm9+t+wTQ0QrctMa9clk+qdnzZvK51q/M5BoamSqykk1XNKfde6DrFfK/f8At2igwu19v7M23tfCUnYOK2FtrHpvGrj60292Z1Nu7qLc229nbqzmZrNxNSGl3lkMpD/FczWzLkaejmMrQLU01V7r3TTuT5Kbs3XtPF7Gy209gx7VxuyN3bIb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p63rXG9Rbb3VLns7t3OZfbuQ2/nK7c887YqWnjkxuapTT1AadZ6aoo6qOaGP3XugKx+MwvYnYtbS4z+7HVWA3DmNxZTFY7I5XcGQwO1MZpqc1jdo4zJZE12Tr5xGkeJxK1Ukk9ZUtTxzTB5WlHuvdOG7NpbKwhGKi3fkdr73weLrH3fsvtnbWS68rHydDPT0ynZ2XySmkq46iWSsjFPWvSyxCieQtKs6LH7r3RmMr8MsdtPBbE3H2B2nn9l4TfnV2xu28bm5Olc5uzCjZe9cBFNS5+PL7HzORopads0mRw9MI6stNFBT5MWo6+m9+690GGV+PNVjKSsy1Ku+t1bco8NPuaTcWy9oYrP0lHtWCnNWu5dy44ZeKtw1LLFZ4psjAkEhJjgnndHA917oKjhdgKCWy/YigSGEk7DwoAmFJ/EDESc7+rwfv6fr4/X+nn37r3St2dRbI2zuzY266io7SlocXvLFZSIQ9dYdnyZ2lnoazN47GPLnljepi8LxONREUlvIpAKn3Xugx3PUVOYzWa3OcdV0VBn8xW5imaaKQwrDmslWTUka1RUI+pqeqjRl4doJrcxuF917pOe/de697917r3v3Xuve/de697917oZ9q/8AMje4P/Dz6e/9x9ze/de6Bj37r3Xvfuvde9+691737r3Xvfuvde9+690MXeIQbw2/oLG/Tvx/L3UAK56L27cKbm4tY3sP6W4ufde6B337r3Xvfuvde9+691737r3XvfuvdCJ1f/x8eW/8Rv3H/wC+iznv3Xug79+691737r3Xvfuvde9+691737r3XvfuvdLeuFP/AKN9rEPN91/fffoeMxx/bin/AIDtsxOk2vVrLawylLW0kNe49+690iPfuvde9+691737r3Xvfuvde9+691737r3Q2/In/mbm4P8AtUbG/wDeAxfv3XugS9+691737r3Xvfuvde9+691737r3Q4dLBf4d3qSTqHQu49AAuCTvzbdwxvwLXN7HkAfm4917oD/fuvde9+691737r3Xvfuvdd0suUpMlSVmImeGrilVlKMy3sf8AafZdullaX9m9veIHRgQQRUEfMHoZ8icz8wcp8y2u78t3EltdQyKySRsUdWBqCrKQQR5EHo8wzc0+2cTS5nSMxU0VNVtHcM0azx6oWYjgFk0sV+tzzzwIe9q9tlsN23VduJG1+MFgQkkB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U0kZaJqeeukRkLK4bU1/de6LykKxokcapHHGqoiIAqIijSqIqiwAHAA9+691y0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvde0H/AA/3n37r3XtB/wAP959+6917Qf8AD/effuvdKLaSH+8uI+n+crP95xk49+690YHs2BMP8Sfh9g19FRnMz8gN7Vyl7SVEi73XHY2rlS4uBSVaRRtpPpUC/wBS3uvdFc0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvde0H/D/effuvdSc4GT4/fN8KzKJvgv8AKHzIruscvg6zrGgaWMHSzJqfxswJUMwUgM1/de61eh9B/rD/AHr37r3Xfv3Xuve/de697917pg3X/wAetuT/ALUGY/8AddJ7917ownyN4+QfeA/7+nvT/wB3Mnv3Xuga9+691737r3Xvfuvde9+691737r3Q5dVZ3EV+1d39X7h3jj9l/wAR3Ft7sTYGR3DNU0u1qveuJxNZtnObXyWXihljxNRmaOfGNR5GraGiM2PihrainUwyj3XulMdpbtxG826q3dlj19WVEmP2jl4d1ZCrocBSY+oyY3PhqXI1FL5aY4yorJ48lRVTsMcWnjyDVMVM7Vi+690L1Z8c955HfuB2hm93UNFn989r1GzdvUm46qXP7jqsdm+ya7rc9p7io9gTbigosV/HqQQZKsevk8/3EFXimzNJIalfde6L1s7Nw4/JU7Vvlk23uCkfA7vxRqpqenzWzs8gpc9ia5qN7ENAxlgkGowVEcNVFaaCJ1917oI8/gMltPcGe2pmYquHLbay9bhq1a6nWlqpvtZL0eRaBPT462maGtp5IyY5YZo5Yi0box917pq9+691737r3Sp3H/xY+oP/ABFGb/8Agmuy/fuvdCz8fd37F663LQ9jZXtTPdZ9gbM3JjMptqOL487e71wW5ds6Eh3DisRV5evibBbmmjkqYcbkJaOnggT1rmaCaQSQ+690EO9cltDNb43zm+vdkN1l17m96bqzOwet3zVVuOTYGycpnZ63a2zZs9WM8lU+OonhpZJjI4LIQjsgVj7r3S36L6C7v+Tu+R1t8eeqt49u7wjaE5Wk2pQwjCbWgqFZ4a7fG88vLS4XBU7hGEUuXyFOJWtHD5JGRG917o8kn8pP5Cbbp6Kq7m+Qn8vr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v//R11fmL/2V18p//Fju8P8A35uU9+690XH37r3Qs9Df8zs6m/8AEh7R/wDd5D7917oJvfuvdCVsvtXc2xcBmdrYul23ktt7k3p1rvncmD3PtrEbmxefyPVRzB2tjMrR5iKVJMe38drzWUgAWc+FmOqCJl917pcJ8l+yZdr5/Y+XTa+5tlZum6/oaPaO59u0mb21tTH9V0u5Kbr/AB20MNVkwUVNj33bn6qSnCPHXVNZPU5JayaaZ5Pde6hUHyN7TxmB3/tSiy9FDtbsXKV2Zym2/wCGUzYTC19f1fubphn2jjmHjxqR7a3ZlMVDFAAixR0J0lqClaP3Xunba/yn7h25FBR1+Ww++sZSdDZv4zUOM7D29it2RUPS+c3jJv7+6FJkK2MVyCgykry4ar+7+4xsQSkoZaejhhgj917pOYbvzsTBT0WWoKnCru7BV+1Mjs3sF8BjDv7YU2yMJFt3asGzN0xotRSU9BSU9OlHSkvDTyRJUU6RVIMx917oFVVUVUUWVVCqB+FUWA9+691y9+691737r3R7IuqNg1P8s6Pt58RhMV2bU/zBsP1W3ZGRlyAnxvX0/wAbcluWTAVoExp1xsWRC5KYR04lZ1u8jqkSx+690OHcuzNr47CfzP8Aqim6N2Htfbvxa3x19L0pmYNl1NJ2Hs1tv/JTBfHk19b2f5Uzebo947TyNdnMhjtxVtbj5K7x5XF0dAYdPv3Xuqo/fuvde9+690NfyL/5nTvv/qPx/wD7pKX37r3QKe/de697917r3v3Xuve/de697917oaeo/wDiwd7/APiFqv8A9+Vtn37r3QLe/de697917r3v3Xuve/de697917r3v3XuhO35/wAen0p/4jXL/wDv4t1+/de6DH37r3Xvfuvde9+691737r3XvfuvdO+3/wDi/YT/ALW+N/8AcxPfuvdOu/f+P63p/wCHZuP/AN3E3v3Xukn7917r3v3Xuve/de697917r3v3Xuhk68/5lv37/wCGTs//AN+xgvfuvdA37917r3v3Xuve/de697917r3v3Xuve/de6G3ur9HT/wD4g7YP+91fv3XugS9+691737r3Xvfuvde9+691737r3Q0/Hz/mamJ/8NzsX/32+X9+690C3v3Xuh02b8je1Nm0GNwYy9FuzbOJi+2oNs74x6bgoKOhDQGLG43K6ocvQUsQgtDS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3QQe/de697917r3v3Xuve/de697917oROr/+Pjy3/iN+4/8A30Wc9+690Hfv3Xuve/de697917r3v3Xuve/de697917pYVv/AB4G2f8Aw8N8/wDul297917pH+/de697917r3v3Xuve/de697917r3v3Xuhr+Q//ADNrP/8Aao2N/wC8Bi/fuvdAp7917oSeuZ54E7A8M0sPm623HBN4pHj8sElRS64ZdBGpGsLqeDbn37r3QasyqpZiFVQWZmICqoFyST9APfuvdcMXmqRK+mqKVcZk5aKeKrFBlKeerxVaKaZZDT5ClhkgeemkNknSOZCyMQHUkMPde6PZur5Gbeqe596/J7be/uxX37lN89n9r9bdVZbE5uj2/wBa9gdi5ykWkmi31id2JJo2/R1dZLj6qkxg/iLYfFx1dNQwTvSUvuvdCzifmb1t1f2h0xlukqvsnafW2y/lt2T2XuLD4vAw7Nr8V8c+wex+u+xE6l2risZujIQulOdtV1BWU/3lMauCjo4XrBTV1ZAnuvdFKxvcdR1d3T05211zurNZyo6nTrvJ4fHwUue2FisAuza7XV9e7Yp6rNZyeDF1sUck9fPFNBHNU5KvH2ZGqer917oWs73X1JV9N9s9S7S3R2rtnHVHdFPmuopM5QZLPVdF05sTp/cvWmyqTK5DG7po0os7m48skW4qKlpGxy/e5B4Jftv8im917odNyfMTpPdOY33VNle2MWct1fv/AKxx+UqtrLl5t6UfZXxH250iK7eUEm8yuPbAZjbbUkT00VaK7EZGWRoIJ6f7So917oD+ye/et9/9a1u2cblN0bU3HjK3f0s24Ydq5A53tWpzXVfVWyKndeZq8duqKnxGR3vk9jZGt3lE6V0cdPKt5MvUTzavde6IoRqFv68e/dbHEU6Nv1urU3XKrICuvM1pUG41IKGnUWv+NWrn+t/cTRsP9dBhF/yh91P+a3bX+dPz66D3cUh+4nHJf8BzJ+hqp57d+to8/JNf+16X+cP+/A6f/wC1P2X/ALx3HmwPcs9c9z0ivfuvde9+691737r3Xvfuvde9+691737r3XvfuvdHmpWj3F/K1zavGZZunv5guJrYqhEYtQ4nsro4YmalmdGsI5sjkIn9aj9wxgXJX37r3RGffuvde9+691737r3XvfuvdKCjP+/M3aP6756kv/6C2/8A37r3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tDTO0R917oO/fuvde9+690NfyL/5nTvv/qPx/wD7pKX37r3QKe/de697917r3v3Xuve/de697917oaeo/wDiwd7/APiFqv8A9+Xtn37r3QLe/de697917r3v3Xuve/de697917r3v3XuhO36f9+n0mP6da5i3/o4t1+/de6DH37r3Xvfuvde9+691737r3XvfuvdO+3/APi/YT/tb43/ANzE9+690679/wCP63p/4dm4/wD3cTe/de6Sfv3Xuve/de697917r3v3Xuve/de6GTrz/mW/fv8A4ZOz/wD37GC9+690Dfv3Xuve/de697917r3v3Xuve/de697917obe6v0dP8A/iDtg/73V+/de6BL37r3Xvfuvde9+691737r3XvfuvdDT8fP+ZqYn/w3Oxf/AH2+X9+690C3v3Xuve/de697917oTdldy9n9eUq43am8MhR4RamSsG28lBjty7UFVUMDWVKbU3PBWY5JpwqrPOlKskgVAznQmn3XujPba+VeyslT0ydgbQzO2sjG8iVeT6zpoM/iq2mSmVaWVNpb1y9JNDVNIpapkTPGncyEw01KkYib3XujE7MrMR2XianMda5M72jxdF99ubFYrF5ePcu0INb/AL+48DUQiRaYIqu+SonqaBS6xNVicPEvuvdZP+IJH+xHBHv3Xuve/de6fdv7Y3Fuutkx22sLkc5Ww071c9PjqZ6hoKZHWIzTsvpRS7pGmsjU7Ki3dlB917pjcNG4jlV4pGQSLHKjRSFGvZhHIAbcH8fg+/de669+690oNo9jbs6n3XgOwNh7vm2PvTbdY9ZgNw04x8zU80lO9HWU1TQZVJaaqpqinllpqqmniZXikYeltLr7r3R0e687tL52bB7H+SWz8q+3PkZ0/sSgyPyC6dyW7avObQzHUm38RJTTdtdLGvWWWgo6Kfyy5HEtNHHFapadTVzU1blvde6l/DCWel+d1NmIWjA2yvyA3NVNJE8scdHQ7CzWOMsqREHQJqyANY830jkj37r3VUHbO7Z+u+vOot7Y7NUOM7FxXa/WHbPVmMqMZQ5l5m67pctWf6RJMZkVmpxQ0WTejx9KuQgkp8i01dBGk4oawRe690Wxvk52vLsaHq+qqNn13WdFkcZm8T1/kOu9jV21MLuPF0+Yp03NjcXU0DKuQqBnK/7+pkZ2q1FLDU+WnoKGGn917pQ5PuLvDrd9oHL0XW1BlZ+ncb11HFX7E6Z3VuLLdRS9eYDr7bm1+ycTUUdfUxBdvYLFJRQZ2nhrXhkkrSHNc9RN7r3TbX/KvtXLZTsbL5il6yy9Z29mMXuTtBsn091hWLvjdGJ7AyvZsW5s0ZcUWFdLlczkPuZqZohNRumNdTjoYqVPde6LlLK88ss8pUyTSSTSFUjiUySuXcrHEFVQSTwqgD8AD37r3Sw2tLHFhexWlkSNW2XSRK0jqgaSXf2DjijBa3qZiFUfUkgDk+/de6Rfv3Xuve/de6yRSGGWKUJHIYpEkCSoJInKMG0Sxtwym1mU/Uce/de6N3iPmJuHD08eMj6g6erNuU23Mdtqi21Wy9zPRUdPtnL02b69yS5mn3lFmZazbM8deMNPUZSS0eUycVYtXFUhI/de6Tmf+VnYG68LnsLujA7L3MN6dXP1P2Nl9yQbs3HuHsjC0+KqotuZ7dmczuYqagZjEZipXdVDX416QyZino561KumpIKRPde6eN0/MTsHdnZ2d7trNndaUPcuTraquwXZmPxW62z2w523I2ZwrbTxWUzVThnfD4/xbbxNRmMXX1EGLggj8z1cYrPfuvdJLtjOpunrjYO54sFt/a0O5Ozu+9wQbV2lQzYzae1oc1lMHko9ubVx1VNUTU+NoRIKahhnqZpI4URHlkI1H3Xui8e/de697917oQdxxY6q6/6wy+Pp6ekahXfOwsqBXLPV5PO4Hco7CqsrLRsA8SCh3hjKNDyh8Hpa4ZV917oPvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdOOVzeWzDUtRnMxk8s2MxWNwtDNl8jV5BsdgsHRJj8PiKOStdzDR0dNGkFLTxlY4Y1VI1VQAPde6V++eq+w+tKTZtbv7aWW2nF2BtuXd204szFHS12R2/Fnqzbf38+NZjU0heqoKgxQ1sUUskBhq40alqaaaX3XulLtb/mR3b/AP4efT3/ALjbm9+690DXv3Xuve/de697917r3v3Xuve/de697917oX+7/wDj8MD/AOIg6A/98Vtz37r3QQe/de697917r3v3Xuve/de697917oROr/8Aj48t/wCI37j/APfRZz37r3Qd+/de697917r3v3Xuve/de697917r3v3XulhW/wDHgbZ/8PDfP/ul297917pH+/de697917r3v3Xuve/de697917r3v3Xuhr+Q/8AzNrP/wDao2N/7wGL9+690Cnv3XuhE69/Rvz/AMR3uH/3IpvfuvdBfkKd6uiqaeN9DyxFVOoqC31Csy8gNbSxseCeD9PfuvdM+78vkMjhtj01Bsna21Zdo4CLC5DO7YpZqTdG+Ktauorn3Dv2ur6+sgqsrN5Rj0moKelijgKqFJXX7917qfnqSLAZnJ4bb29Mf2Bjl29BlKfcuDxueo4Y8nV4mmqpMQuO3PTQTmoo55ZqSYxGamleHXDKxaRE917pliigo4NtV8NXmjNX1GTp681NPVHFlqesihhpqGundxV/tSxy1Ulg0DsgJ0sSfde6V/v3Xuve/de697917r3v3XunHFUbV1fTUygkySKCB/S/tPdTLBA0rGgA6N9h22Xdt2gsIVLNI4FBk5PVoHWPx9we9NrYKiy3yV+OPSEcEMtblqTt/ecuHztJjZZZHGYosHSIzVav45vDTNNTs2gWe0ikRJ7clt93fcubZMrNKYYf+aMJIB/2zlmPXQ/75yxe1Ht5yV93uzBWXbrBdy3H0O47mqyMpOK+BbrDEvpkHox+V+PXwYTanVm18p/MywMGdpsL2BSUG7cd8X+zsn0/m66t7Uy0kmQO+KaqbHY6hoK55qKqnrM0Y5YohWRyRQsWaY+ubPRXO8/i93n8dctV03Ymx8rXbNWPD1uD7s2PiNxbp6G3hhtyjXtfLYDtSnokxiNXqVEdBWzQVYchRFJG8M03uvdAF7917r3v3Xuve/de697917r3v3Xuve/de6sH+JO363uj4v8Azk+LezpabJ9w70Xobu7qTrypyVLjavsaq6j3hJk+xsftWTJMlM+Tp8bRYy0DSRvKZKf1eGKaSn917og+1qFd257ZuCoqpqf++26Nn7Xoa8UL1hpJd5Z+lwFFXvjXkp3lEL1aSvB5o2YKUDIxuPde6OBmvhPuXBbj71op+1NvVuwun+ht0/IPZXa1FsXLjE/ITbO0tlVG9Mtt7Ye2anKpNjMhSCgymOzJrK6pGLrKaOKoRzW0ob3XugYo+k8lW/HLd3yLi3VReLZ+88Pt+q60Tb9TLm63ZmXy9Ns8dtxbrNckCYuHc9VHthqNcbJIawSO00aJpb3Xuk72t1/SdVbpxG2pd2vuemyfXvUvYs+ch2jJt9sbQ9tbDx/YVNiUwcuUrjVS4ykyUUEs4rIRUyIxWOnDaV917p97S69fqHc/ffU0m4o92zdZd5bE2JVbohwUu2IM/WbcwO/6GrydPt+atyL0kckobxxNXTmwB8hv7917oHPfuvde9+691inmipoJqieRIoYIpJppZCFjjiiQvJI7H6AAEk+/de6u63Ft7J7I6J+Hmw85jazBbj2p0aZdx4HLOgzuJzG5nxuUyNPmKIFjTOKuOqjEPHjeOWFlV4XUe690Gmtv6/7wPfuvdNuZhqKzD5Wkp1D1FVja6mgQtHGHmnpmiiUySEKoLEXZiAPqePfuvdGmr+y8ti92fIvauG3RtjK9ddj4rv2uipMhksVW7cm3PunrnOYjbO7djZKpNqPOVrVkOLkmopEargqJKeqSXRG0PuvdOW6dw7Tz+1stsGLfW3aDIbh6m+IuQxeWkyAqNoy7r6X2VWYPdPWm8c5j1nTG1EbZKWro5qqNaaOspFjqJ4TLH7917px2hktl7bxnUqwbw6qx+8qPpr5V4feuaodw7TqceNybqXM0PT2Pz2YZZcfNUy0VbSQrDUhxcuKhWsdXuvdJDbuYixNL27k9x7y6nz25t5fHTcONo6WGu2luHbtVudt7bY/hmCq8VSJHi6nM11PiKvJVGKpYjEojjeZV8vjHuvdIbtyuw+d3XSb3wWQxcsXYO1ts7sze3MdlGyTdebtkxq4fcvX/AI5nlkp6Ohmo1lxFO0mmGgmpqaJI4oEX37r3QYa2/r/vA9+690MHQ/XG4u1eycbgMG8FBjcTTVWd3vu7I6Ytv7B2hHRTx1u5c9VSNHGLAOtHTPNGaiRWGuOGOoqIPde6ce+ewdl70zmyNv8AWT5as636g61231Ps/cWdWCLJ71pNuSzy1m9nooIoRTx5B5U8MbRqzpGJzHD5RBH7r3QHa2/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917qTnWP+y+/Nrn/ALkY+Uo/2H+jGr9+691q9j6D/WH+9e/de679+691737r3XvfuvdMG6/+PW3J/wBqDMf+66T37r3RhPkZ/wBlB94f+JT3p/7uZPfuvdA17917r3v3Xuve/de697917puy9c2MxOUySxiVsfjq2uWItoEjUlM04jLWNr6bXsf9b37r3V7Hzc7yyHwW2H1h8Hvi1191H1hSdj/Br4/ZXv75Q7Z64bavyW7oyO9JsjX7tWHsjF5QVdLi8s1FI9bDkoKiqiasrKejlpYkgl9+691RJSNRY4LLg2pKKumkTKUM1KqLLPXwg1FJkVaP1SMrQ6xLcn0Eg+nj3XujI79qqau3ZkszTeVafdcGF3zS+emo6EPTdgYCk3xTSUdFQxQwx0rJkVNIkUYQQmPTcWJ917pIa0/1a/8AJQ9+690LHX8vWibd3fLuXPbg2p2Piazb+6+q9w47bsO58DUVW2cdl6rLbO3BSSV9OaZstWyYQ0eR+xrFp3pm8qxwPKs3uvdHr6UTY3RPxE+eHyYznZmx+oaj5qdA7w+PHRXWu1MouY71ru78dl6rJb9x+xdvwQNJiOvs3UVEL5WqqqxHxsEiRMfDSYqqrvde6quk7f7on2vtDY83eHeTbI69qaOt6+2V/po7QXZ/X9Zjo3hx1VsXbK5YUWHkpUkkjpXx0EJhRmSLQpI9+690u9v97d8dQR9Ubj6i7x7e6v3FW9MZ7FZHO7I7D3NhchmMe/yo7NyjU2fKVDR5FRUu86mvjmKuzMpBY3917oy2H/m//wAy/btZiJB8xN5ZsYzOYrcEeH3XtHqrIY/NPiK6OoGFzkmPwVHkJsZVNpgrqWnroWkjcqJEJDD3Xum35LfzCtvd0dXb46f6Y+K3S3xE6+7z7RwndfyGqdkbwz3Yu8+8ey8TuGo3NhhUbqzdBhoMVtyny8n8QpNvU1BUJBUx2pKilgeqgqvde6r2jrqOUFoqqCRVjaVmSVHVYlk8LSsymwUP6Sx4vx9ffuvdep62jq7mlqqepALqxgmjl0tGQJFbQTYrcXB+lx/X37r3Ur37r3T/ALV2RubsrcWM2Fs3bWQ3huTc0ktBQbex1OtRJWRGEtXTVjTFYYKSGHVJV1VS6QxRgtI6r7917q0/sX5Lde9g/Hr46Y/tXNV+/flB01ic/wBS7p3lsFp2xHYXUu3vNSdW1W9N67npIkr8zj0pKSnmr8dQVEdVHU1Vf97VS1WiH3Xuip5Pu6Z85FVbf2RtXF7bpWeODbmbin3TW19Mah5kbcG7JTSVr1WlhFJPiv4dGQo8UEN2B917oPt6b4zW+shS1uVixVDTYyjbG4XDYLGU2KxGGxr102SajpIIQZZS09RNLJVVk09TKzXmnkIFvde6XfSvT+a7VrdxV2NG0K2g2PTYXI5Pbm4u0+u+s8tu2fM5T7DG7e25NvvKY4yBljqarJ5CHVDQUkEjSyCsqMbSV3uvdL/5xdX4bpn5cfILrbbO3cVtLaW1+z900Oztu4fdNHu+lxe0VyTnbccuUpq7IyxTvR+KaehrqgVdK7tT1MUUsbRr7r3RVPfuvdCxjP8AmRm9v/EsdX/+8fu/37r3XPpbp7cXdu9aTZuA+/pPuYpUmzVNtjcO6aXH5Griai2pjayi25DLMhy+WeixENRKY6aneo+7rp6XH01XVwe691Gn6g3djtlZffW4TitrY7B7xz3XmRw+5KyXGbtp984HD0ebk23NtOSI18Uk0NW4SpnhSlhkp5o6uemc06z+690IGP6doML1/u/c+7c5sX+Hbi2B1Nk9h7tkzG4/DtrL7479x208tVVOFx0KZCaoxuKwm8hk6L+E1rNj6eoyWOgrITQ1cnuvdMe7Oj9x7Tzuw9j5qmxWE3NuXee79k12Vk3ZTbhxMea212HL1zXCai29RSTUlPR1VJLIDA1fJWROKinurxQL7r3XCb489g0kwhyMm18cZ9ud37hxj1G5sbKMy3x6+6qOysHjoqFppDWw0lFVV9EJkjgrII2NPO8n7Xv3XugM9+690LFB2r2dsOtwNTsbsTfGzaui2ltw0NZtXded2/W0A3H1lh8DuOOgrMTPFLAmRoqSjpMhHC6rUw08Ec4kWGIL7r3SZg7G7CptuttCn33vKn2m2/P9KbbXg3Pm4tut2d/Dxif9IzYSOcUxz32qrTfxfxfd+ICPy6Bb37r3UvIdqdn5b7r+K9j79yf30eZirf4hvDcNb95FuLeEXYe4Iqr7mobyLX7gggzlYr3E+QjStk1VKLIPde6lHuLtw7zz/Y57T7HPYe60o49078O+NzHee5Y8dkMfl8emf3R9199WCCrxGJqoRUTvoloqSRbPTQlPde6x1/Ze4ain2rFi0pNsVW2cPujHVGW27PmqbLbsy+9a6uk3XvbdlZX1lT5s3X4+rp8FVV1KtOHxtBj6Yx3pzI/uvdGu6pys9TtHqM9Ux57f/wAlsnt3evXuNzW+I45NifHraW3d75HOZHdGHrqqOZViTFbkxqLI9NMlPJLLTxJPNVrjMr7r3QudMUm3opt77W2buTKw9IYzbPcP+zR/JSerp6fd/d+5K3pLc1Tndo7BXLvUpkhT0FTkMlR4svUhUvXyyVFXUxVGf917qG0uOhxnWm8d4dda9uBY8f8AC74a0S1VXVbqmrJSKLtfteBC81TS1E8v3c01S8k2VnkkJeSGWaav117p2kk3/Tb93ft7b278dub5YbnxtdWfIj5D1lfDT7H+LWxYado85szZedRhTUWQo6byU2TyVPIBQBWoaFvvPuamk317oOJZuuh1xPjcbU5rZ/w72fmIjnM94pMT2X8vuzMVI7Q0VHAzQTRYqGaCT7WkZ4o6OOJ5pnhq4ZpsF7r3T/VUe7ot4df7k3Xsmk3B3znKSnxfxa+J+FpFTbfSeDjtJi9572oiaWKCqpY6UVYSpWmFM1MamoakeijTbXuvdO2JxVQs3YuzNmdjUFRnamhOQ+aXzPrxUz4HbWAqJlSo6r6rqY0ilkopJIRRwU1HHFU5qpijjjjp8fTww0fuvdN65HYua2NR5uq28cH8XusM5p6l+Pcu8Nn4TtP5Hb+/h4nrO1u0KPL1cFTLivEuvI5taSWgpYEmxuNE8tLUUc+utdAf8iu4J+3eq+rKjMV+NyG69v8AZ3c2L3QdvY2PF7Po5KfbWzKvbeG2nChkM9DiqStmoqeraZwzGf7cvSNFU1W+t9E69+691737r3XvfuvdTcZjMjmsjQ4fD4+ty2Xyc5psbisZSz1+RyFSImnNPQ0NKryyvoR30RqTpVjawPv3Xus2ZwuZ25lchgdw4nJ4HOYmpkosphszQVWLyuNrIjaWkyGOrkSaGVf7UciBh+R7917pqa+lrfXSbf69vfuvdCt21R/fdtdv1NDXYauoKXsPfUwy1DnsLW4OuRs7ka2jOFztJUPR1/3kVNNJj/sp5fu1UtTeVeffuvdBX7917r3v3Xulz1rSPUb3wVZ9tT1dFtmSt35nYqyiGRoV2r13jZt+bvqchQH/AD1PDi8dWTVEVjqjVl0tfSfde6NtuGXe9D2cldn6PE7n+UW7oKTK7S6+pEqn2n8ccHuHHw7vjfcmPywmajzeMp8pE5wtd5qrGvKs2RWfI1MUVV7r3TYmA2bQ7byeAzHaybDx+78xia3eXcGXp8tms73bh2pcrkOxaLbOMwVHlstFR0ssNJTYaqngTHZGaorYZaypZiuS917qPtvdOyu15t10mRyD1NF1rn+xuyulunt7Ynx4zf8Ag02zT0m2tiVtRsunr0XIYygwkJgwCUf8LqJ6yu8U0EU1fFkPde6OJPsrePzo+LG6vi1kZ9sdqfPD41y4HtPpOSZEwWSwHUmb3VhNo78+OmJ7DNWuJqpaGWsoqBMdmJFpaZ6rF01JM6Yp6uh917qg3IVtLhq+oxObngwuYoqytx1dicpU01JkKPI4yskx2SoZ6d3/AM5BURSwyBSQHVgCbX9+691GrVw1fTyRZAYyspYkiq5Y6z7WogijcHwVMizXVQQG0OeDzY/X37r3UpJaSIpSxyU0ZTTBFTI8SFNMPlSFIVta0Y1BQP0i/wBPfuvddyVdLEWWWpp42R4Y2Ek0aFZKltNPGwYizSHhAeWP0v7917ritbgBk8FBnanGPhjuTbcm46Wuaaenm2rTbkpv71rV0eP1VUsAoUqlnSmRpioZYwZNI9+691cB/PUoJR/MJruxaRYqvrLubonpTP8AS2+sbUUFfsjsnbOJ2/Ux1tbsDP4lnoa6npBPBqWlkLLDLT1BBhqYZpfde6avgx2nQd6dB9zfy3O4+49k7Hi3LR4fsv8Al/b37t3FuPC7c6X+T+Aq3po9qbS7KoXln2zRZSklb+H4yBDHJJUZSCjgmlr5KGs917ovPcXRvaOwO69x9A9obRq9n/JjbdK9Xm9kGagqMP3BiqOijjp+0+jchj6LHQ5GlzPhqqv+EpAat5fIIBJVCtxmL917phyW5Ov+y8nkMhvmiquuN+ZnKVVZmt5bVx75PZWbz2TyE1bms5u3r1pEqMVPU1kzzV0+25zSQRjx0O3FZNEvuvdIjcHX25Nv4uDcRjoc/tKq+3Wm3ntWs/jm12mqaalqYqLIVkaJPjKwisgU4zNU1FXo5KS0sciOi+690iffuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690bn44YjcONosH2JHFX4HDbZ+R/SOUwm7MjhS+28nvTZ+195b1w+z6WuybQUlVU10tDFRNBDM8kbVMV4zJLCknuvdcoFCQwoo0qsUagcmwVAALn37r3WTP5eDb3WO/a+omab+91PjdgYXFGlhraCtyhy9HurK5vIw1qNBpxNDSaKaSM/cw1uQo54dKRzMPde6KB7917r3v3Xuve/de697917pZb2/4E7O/8Q70L/wC+R2/7917pG+/de697917o3eC211DuzHdX7N3vWZnqvcH2M1VlsTtrsLbeZ667Vpcl17m917J3m2VyWTlpNl7lq8jT4DamYTLVDQTjIif7jbkWJnpl317qDj8PsHL4/trd+c2z17txx1nuvHbb2bS75oZMyezevsDtWHd2fxtKczSR0LZOtqa/c+Ex1FQ1sFWsWWwOOQQ0sfv3Wuipe9db6EPq/wD4+iv/APEedxf++gzvv3Xum7Zn/AXtT/xD8/8A7+zYnv3Xukb7917r3v3Xuve/de6Or098fth9r9adUJlY83s7eW6+xvknhMTnsVtLee4qPsWn2JgOoZ9sbWyuRpvusVtymopd17hlO5qikhxyVDU9FmaqkppVyeN917oRNz/Dan3FgDvHbWz9xbSxVH8Quvu2aeuoUrt4YPd/am2ejsN2323ishVtJVVOPOex1bLltv1kghxdVIZFxUlZT09StF7r3S32n/L+wmN+UPXfW2Qr892ptaHtLau3N14CDbbbVzm8sJivmpu34r9h11MMNlKySg27Rrs9Zc/koch95iqjOY+iEbIHyye690R/sTp2l2F1n05vejzGQyUu/cLP/eihzeEk2ZX7b3zj8PjKvdW18dtzNmOrydJjqqqkpU3LiPvcRXRLTSLV0tdLU4mg917oC5ZUgikmlbRFDG8sjG5CpGpd2IH9AL+/de6sW31je3ML0fkIsrndrNmE65p67cFQmOycddUbJOGjhzFPj8ilQ0DZVKJKmGsrZKRVmjWZYEjqnhqj7r3Vdvv3Xuve/de6fdrEjc+3CCQRnsQQRwQRkI7EH37r3Ss7mVU7g7WRFVEXsrfSqigKqqu6KoKqqOAAOAB7917oNvfuvde9+691737r3Xvfuvde9+690uNt/wDHpdk/9qPb3/vb4337r3SH9+690Nfx7/5mlQf+Gl2j/wC+szXv3XugU9+691737r3Xvfuvde9+690Iu9/+Pb6e/wDEbZH/AN+9uv37r3Qde/de697917r3v3Xuve/de697917r3v3Xuve/de6VexRsZt57ZHZ0274OuzloP75zdf0mEr98JgdDGqO1aPctRS4+Ss1aBGKyojitcs3AB917qzj5UYf+WzjtofHs9A1faNf1nPsfMSZzcmCi2LV9yZTttaukpN5Y/vmDc09JXUtRS0cGKlw1PS46Db5eoyk+3DIk+Sc+690Tbx/Db/ld+TX/AJ7OrP8A6r9+69114/hrwPvfk1c/Qfw3qvm39P8AK/fuvdeEfw1PIrfkyR/hjeqz/wDHfv3Xuu/H8Nf+V35Nf+ezqv8A+q/fuvde8fw1/wCV35Nf+ezqv/6r9+6917x/Db/ld+TX/ns6s/8Aqv37r3XvH8Nv+V35Nf8Ans6s/wDqv37r3WWCL4X+eH7mt+T4pvNF9wYMX1SZxBrHm8IkrAuvTfTqNr2vx7917os1R9v9xP8AaGY0vml+2NQEFQafWfCZxESofTbVpNr3tx7917rD7917o2CdVy90/IVthx55NtFuh6XfEmYkxZzKonUnwli7dbHHHrU0hY5A4IY7zef/ACfz/c+Ofxfby+691kynxmo6Dqnsbdce9oJt+dV9ffHfufce2vsZFwOV6u+SO38BlMAMFl5dE4zWDqN0begylHNTeGoWrqZKWcR40SZD3Xun/o7vbr/Y2xMft/OVmS21lsRl8pWs2JwuVybbilrZvvoczT1GO/aiyKxRx40iueni8UNLachpfB7r3RPcxWU+RzGYyNJRR42kyOWyeQpMbCVMOOpa2ukqqbHxFFRSsCOsS6UUWUWUDge690Yn5If8Wr41f+Ky7J/97LcXv3XuiyH6H/WP+9e/de6//9PXQ+ZE8Efy8+VCPNEjr8j+8AyPIisp/wBJuU4Kk3Hv3Xug+/0Tb3pNwbK25uOgotjVnYGyF7J25U7+zOI2djn2FNJlY6HdWUq87NCKGlrP4NWSY81gjesialnpUmgrqOWf3Xun3qOlp8D8heusLNmMBkZMX2vtrEtksHm8dmMHkJ6fc8VEtRh8xQyPBVQTOAaeaFysgZSt9Q9+690Cf3VN/wArEH/U6P8A4r7917r33VN/ysQf9To/+K+/de6991Tf8rEH/U6P/ivv3XuvfdU3/KxB/wBTo/8Aivv3XuvfdU3/ACsQf9To/wDivv3XuvfdU3/KxB/1Oj/4r7917rIkiSDVG6OAbEowYA/W119+691z9+691737r3Xvfuvde9+691737r3XvfuvdDN8hZoajuTfM1PNFURPX0OmWCRJYm04amRgskZINiCDY8EEHn37r3QM+/de697917r3v3Xuve/de697917oZeppYosB3p5ZY4/J01UxR+SRE8krdlbZKxR6yNTGxso5Pv3Xuga9+691737r3Xvfuvde9+691737r3XvfuvdChv5WXafSJZWUSdZZeSPUCuuP/TLu2PyJf6rqVl1Di4I+oNvde6C/wB+691737r3Xvfuvde9+691737r3TrgnSPN4eSR1jjjyuPd5HZUSNFq0Znd24AA5JPA9+690676dJN77xkjZXjfdW4XR0YMjo2XmZWVl4II5BHv3Xukr7917r3v3Xuve/de697917r3v3Xuhg6+liXrzvmFpY1ml2NtN44i6iSRIu2cAJXRDyQpZQxHA1C/1Hv3Xugf9+691737r3Xvfuvde9+691737r3XvfuvdDT3NLHInUYjljkMXSWwopQjo5ilX7otFIF/SwBBKmx5H9ffuvdAt7917r3v3Xuve/de697917r3v3Xuhk6Cmhp+z8ZNUTRQQptzsUvLNIkUSA9cZYAvJIQBckDk+/de6Bv37r3Xvfuvde9+691737r3XvfuvdZIZpqaopqqnlkp6qjqaespKmF2iqKWso5lqaSrppkIZJYpFWSORSGVgGBBAPv3Xujo03yK33jutuv957km2/v3MTb87C2nlqbc+JoabI57be39o7eqcXLms/tcY7L1tbFVZmsqWzFbWT1c0ogjqZ5qaL7Z/de6XWyfkTsnfe5tibKg2nVbCze9d8bT2pXb03n2Bic311srGbhzkWJr9zZHCRYvb9TUR0aTCdlqdyUMCqjmeqjjvInuvdPu98RL2v1X2f2huWm3vsLYexNl9t4bZXTUm/UhzdB391V2/wBX4bcdduzbibMx8VRS0OB7Ix9XNAJq7IefE5CWqy2NpKWOmi917pa0merNmbBze9KTsrsbtTYuxsfsDsTEfHHsHuPcWXxWe6wzOG2tsT5D5KipaXERyYqsp98Z+li2tubFR6aeLbO6aXJUyyUxnqfde6OFuTZnx1iwXyGye0ZN/wBTX9NfIbsL4447buX3Fka7eFduDY2389/DszX4LCbTNPTPmK/DSVdGclWUtE9LT1lMJ4sihpIfde6MJsbE0XSee7yk+Lvd+4tu9rYjFdF7MzMGZw218rR9Y0+7+zaHF76qN6ZLcmBq4MpSZDHD+8mEnxcNI1DSRyJXPNKjQr7r3WD5JfIj5GZ7YPdW2qLt7sXe3W2+I+j167pY8T1xVHd/T/e+wN25nPYHK5HaO26aWtnXJbYrsDVS01XCLU1dTyhkaQH3Xukx95WfHLurafaHR2CxHe+9N25HunpXeWwXirexKSDsyuSi3fldp0mD2ciVMVW2366BZcVM08kX8PzDTE09po/d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JJHGGaw1Mq/UgH3XukR7917r3v3Xuve/de66Kg/UA/64B9+690avfvUHUm2tqJXbX3vTbzyf91N+UC5f/SDsHDQZPtHb/wAha3D4KKm2FXxLlKbDVnWVFSbgpKyWsloq6syUIosvLLBJim917p77W6d6Kot4Ymp6y39Fjeucvs3c8s2H3zvvY25+0NobtwW381nsJPux+rBlMDXUGWloIsZRS4SteZ5IXqMjRYBcliKeo917onIAH0AF/rYfX37r3XGRo0jkeUqIlRmkL20iNVu5a/4t9ffuvdHc3ZR930HQ8qZXfe1KnHz7Zpm3TiEhoW3TW7Kxhoq1MPUbskgMdRU4wRRNkvBLFPNCs8LV2SjmaCf3XuiTe/de697917p621JHFuLASyukUUeaxUkksjrHHHGldGzvI72CqALkk2A9+690r+5mV+4O1nRg6t2TvpldSGVlbdFUQykcEEcgj37r3Qbe/de697917r3v3Xuve/de697917pbbcdBtbseLWnlfAYKRItS+Ro4t8YtZZFT6lVLoGYCwLKD9Rf3XukT7917oZ+gJYoOzqGWeWOCJdpdoapZZEijXV1dmVXU8hAFyQBf8+/de6Bj37r3Xvfuvde9+691737r3Qlb7gni2z0xJLDLHHVdY5OameSNkSohXuTd1O0sDMAHUSRvGWUkalZfqCPfuvdBr7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6XnWUWzJN74WTsCupaHa1EuVytXHksTuDM4XM5HD4Wpyu3dq7jp9o12Oy8OLzGShpMVlK7FVS1lJS1E1TShpokHv3Xuj40++fhrtXBfIHbvXuZyFBtHt6Wh2uuM3Fhu1aze0W2oe+9p9mYKjxNRj8omAj2tjMdj4TXUWUoqrdEtXjMhDRbijpshTtUe690zHtLqvO/K6TsfDbw6K2NsnaPx86U2niML2H1v23v7pLema64+O2zeos707Dgcvgt3bsiwNTVUGRpVyWSjXJSYulkVcvS19XDWj3XukJtjtX4+Yva3w6bb+0KnrXf/V3yFyO5O4d4R1VRuncGb2lSYbrU43fdZWfw2KR1lyOM3PVY7blLXVKYxo6oprOTRz7r3Uje+6/ipunIdl75TAUw3BuzZGMqztZMp2rQxYzfecz+fxW6c71fk6v+ID+8UAj2luCQbunq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vXP9T/tz7917pZ73J+62fyf+ZPdDfn/vyW3/AH7r3SMuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3Qh9Xk/3or+T/zLzuL8n/n0Gd9+69037MJ+07U5P/MoJvz/AN/r2L7917pGXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de6Nj0Ztaj3dneptr9Pb53ZtTtbcFB2/k+789lsZS5bZ+1et9l4pt7tPtfadFR1dVnZqHb2Fyubno5Fnlra5aSjo6WKeCOeo917rKfjv2Z3Dm9n7n2rma3dK9w5zrLCbSzfY0+09l5rdGW7N7E3P03thaPD4nN5uKloKTNbOyGIcVNRTNTKtMyUaUEtNM/uvdIDbXx631u7ZO3OwMFW4Cp23n07BaeonqcxQzYBusNkL2bu6PKRV1FGKkw7cFVl4ziGrVkSlqaRWORjFE/uvdNfanRm/OnqfHVW7v4FJDW7x7U65qzgs9RZhsF2F0zu3+6vYGzM1HTkMlXSrPi8nHNCJKWajyNIYqhqlK2mo/de6DraxP959ucn/AIv2I/P/AFcI/fuvdKzudie4e1zc/wDMyt9fk/8APUVXv3Xug1uf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdLrbRP90eyuT/AMWPbv5/7PjG+/de6Qtz/U/7c+/de6Gv49sR2ljzc/8AHp9ofk/8+tzPv3XugUuf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+690Im92P93On+Tx1vkfyf8An7u6z7917oO7n+p/259+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/wBuffuvdeuf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3VlyMf+Gc6sXP8A280xB+p/7xWyHv3Xuq0bn+p/259+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/wBuffuvdeuf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3RmvkexOL+NfJ4+MuyR9T/wA9juH37r3RZCTY8n6H8n+nv3Xuv//W1zfmL/2V18p//Fju8P8A35uU9+690XH37r3QtdC/8zs6n/8AEhbS/wDd3D7917oJffuvde9+691737r3Xvfuvde9+691737r3Q2U/wD2Tjlf/E3YH/3g8j7917oE/fuvde9+691737r3Xvfuvde9+691737r3Q1/Iv8A5nTvv/qPx/8A7pKX37r3QKe/de697917r3v3Xuve/de697917oauov8Aiw97/wDiFaz/AN+Ttn37r3QK+/de697917r3v3Xuve/de697917r3v3XuhO35/x6fSn/AIjXL/8Av4t1+/de6DH37r3Xvfuvde9+691737r3XvfuvdO+3/8Ai/YT/tb43/3MT37r3Ttv7/j+96/+HbuP/wB3E3v3Xukl7917r3v3Xuve/de697917r3v3Xuhk68/5lv37/4ZOz//AH7GC9+690Dfv3Xuve/de697917r3v3Xuve/de697917obu6/wDN9Pf+IN2D/wBDVnv3XugR9+691737r3Xvfuvde9+691737r3Q1fHv/mauI/8ADd7F/wDfb5f37r3QK+/de697917r3v3Xuve/de697917r3v3Xuhnyv8A2TxsP/xM/bf/ALw+yvfuvdAx7917oe8H8nO69tv13Phd1Y2iyHU+AbaewM2Njdf1G48BtSSszdfUbWG5arFPkKrGzTbiy71FBW1M0E3mQSxuKalEPuvdJVO5N+pu3M70FTtlspuHD4nbuaxUvXvXk+xsjt7BSY2fC4CfrSbFNtz7Gkmw+KqaekXFCKOopYKhUE8aye/de6UeA+S/eW19zvvTB9g5Gh3TLhuusBPmf4dgqqrqsd1NvnBdk9e/efeUsiTVGNze2sLXJWSq1RKacxTyywT1Ecvuvdc6f5L90UVBncNi910GC27uaHrinz+0tubL2JtzZWVi6l3ZJvvr9avZWCxlPiWNDmZqnJu32YNTUVFVLVmdqqoMvuvdYMZ8ju4MVtzdG0Itx4qu2zvWr3JWbqwu4Nj7B3RRZyXdu6cDvfOx10e5cXVloZMvtrDZGGnBEVPPFK9OkRq6z7j3XulJ3D3L2Mex+9cIM+gx24u4u6M3UKcNgpa7D5Dfm66yLfz7OzM9M9bgY9wQ6abcMOFqaWPKU6R0+QWp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qpoaymdo2enq6OZqepgZ4WZGKurLqRmU/VWKkE+691h9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Vlqf9uc6z/xpniP/AIFfIe/de6rS9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+690Zn5H/wDFr+Nf/is2yf8A3sNw+/de6LKfof8AWP8AvXv3Xuv/19cz5ic/Ln5TH+vyN7v/APfm5T37r3RcvfuvdCz0Lx3Z1Of6dhbT/wDd1D7917oJvfuvde9+691737r3Xvfuvde9+691737r3Q2U/wD2Tjlf/E3YH/3g8j7917oE/fuvde9+691737r3Xvfuvde9+691737r3Q1fIrnujfR/rX4//wB0lL7917oFffuvde9+691737r3Xvfuvde9+690NPUZtge9v8elqwf7fsnbPv3XugW9+691737r3Xvfuvde9+691737r3XvfuvdCbvz/j1Olf8ADrXL/wDv4t1n37r3QZe/de697917r3v3Xuve/de697917p32/wD8X7Cf9rfG/wDuYnv3XunXf3O+t6H+u7dx/wDu4m9+690k/fuvde9+691737r3Xvfuvde9+690MfXv/MuO/P8AHZOz/wD36+CPv3Xugc9+691737r3Xvfuvde9+691737r3XvfuvdDb3Ubx9P/APiDdgf73Vn37r3QJe/de697917r3v3Xuve/de697917oafj3x2riP8Aw3exP9564yw9+690C3v3Xuve/de697917r3v3Xuve/de697917oZsr/2TzsMf9/n7a/3nZGyvfuvdAz7917r3v3Xuve/de697917r3v3Xuve/de6ETt7ntvtU/17L39/71lX7917oO/fuvde9+690er4bdn0md7K6z6I7bzlZD1NuDcceMpdwU1RRw7r69pXaozuUxuy6qugqUqBmHSWko8LPTzq2TqIZaGJaieqhr/de6tVqukvh/m1n3JtD544LZ+z3ilnTbXcXT26qftTDyzMzUtDVYzGTYtMpDAv/AvJY+gWBApa2k6x7r3QQfML4T/IHrXoDtncsVfsuu6g27F1pvqfufF7rx9Ps/uTrvPVJi25g9j4yOSqrGrpMvVYuvnoKtI4f8nieCuqVNMar3XuqVtpf8Wfsf8A8MiD/wB7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LpZKvMZeqMNJQ0dHSCnpKaKBfde6TW9+araH/iHuh/8AeOk9vj37r3SN9+691737r3Xvfuvde9+691737r3QhdYcbnr/APxHncP+89QZ0e/de6gbM/4C9p/49QTf+/r2KffuvdIz37r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdTKvIV9e0b11dWVjwwY2lherqZqhoqbDY5MRh6aNpmJWOkpI46WmQcRQqsaBUUKPde66p6+upHMlLW1dNI1FPjWkp6maFzjqqlkoanHlo2B8EkEssMkX6WR3QgqxB917qJ7917p+2txufbh/pnsR/7sI/fuvdKzuf/mcPa/8A4krfX/vUVXv3Xug19+691737r3Xvfuvde9+691737r3S523/AMej2V/jg9u/+9vjT7917pDe/de6Gr4+f8zRx/8A4afaH/vrsz7917oFffuvdDV1PuTZ23sdmFzs2PpMjWV1UlXJVSDG1FbiZsbFFiY48k8FStRFTTrVySY/xkMXN0PmDj3XuggyLUL5TLyYuFafFS5jLy4mCOJqeOHEy5KWTFxR0ri8KrTmMLCbmMWQsxXUfde6ie/de6Mjke083tnZ3TONhp6aeiouo81Q0yCasoZQ9Z3bvOvqjWVVFIjzU83nEc1MxAKxqUeMmTX7r3ST61i27kd25nI79p4WyGXp/wCOYimrsfi5Ia0ZKoqpsrkcRhc1poqzTK1KPG6sUpzI9MLpI8fuvdILeaYGPcmRTbklM9Av2wlTHvHNioMgaSM5CDFTxFlaFZdVwjFI5PJFHpjjVV917pL+/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6ssT/tzpVj/wAGZ4n/AHj4r1/v3Xuq0/fuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdGZ+R/8Axa/jX/4rNsn/AN7DcPv3Xuiyn6H/AFj/AL17917r/9DX4+a1HsOL5N/J2fCbk3jkdyt8ku2VqsXltjYTB4KOnl33mZM5NT56i3Hkqh3p6taeGkibGqKiF5JpJKZ4lgm917oo3v3XuhZ6G/5nX1R/4kHaf/u6h9+690E3v3Xuve/de697917r3v3Xuve/de697917obKe3+y5ZXnn/Tdgri30A2HkNJB/N+b8C1h9b8e690Cfv3Xuve/de697917r3v3Xuve/de697917oafkR/zOffX/AFH0H/ulpvfuvdAt7917r3v3Xuve/de697917r3v3Xuhp6iscF3qGNl/0LV1yBcgjsbbZQBfzdrKeeASebWPuvdAt7917r3v3Xuve/de697917r3v3Xuve/de6E3ff8Ax6nSv/iNsv8A+/h3X7917oMvfuvde9+691737r3Xvfuvde9+6909bcCHcOBErvHGc1ixJJHEs8kaGujDukLPGHIHIUyKD9NS/Ue6906dgBBvzewjdnjG7tyCN3jELugzM2l3iDOFJHJUO1vpc/X37r3SR9+691737r3Xvfuvde9+691737r3Qx9e/wDMuO+//DK2f/79fBe/de6Bz37r3Xvfuvde9+691737r3Xvfuvde9+690NfdH+b6gsbj/Qd1/YkaTyKosCtz9GuAb8gA8XsPde6BT37r3Xvfuvde9+691737r3XvfuvdDR8ff8AmaeJ/wDDd7E/99xlvfuvdAv7917r3v3Xuve/de697917r3v3Xuve/de6GbKAf7L1sUk2P+mbtYKtrhgdkbM1EtcWtxYWN7n9On1e690DPv3Xuve/de697917r3v3Xuve/de697917oQ+3v8Ambfav/iS9+/+9ZV+/de6Dz37r3XvfuvdCv0bvPC9fds7I3fuKmMuHxGWY1dbDSrW5DbjV1FLjaTeeEpXIEmQwc80eYx6Bkc1FNGIpqebx1MPuvdWPU24urszi9ntt7sHaWQyu7Mg+CwVJR57HLVZfKjH1eWp6PKbay01LmsPUz+KHGUUNbikWprZqWCIsaynZ/de6l0VXVYkw0MkTTYylqK2Wo2tlBUy7eqhlqGTGZulyG35WWErX0c01HW/tq8sErxs2lvfuvdFZ7K+OmQ642/vPsPamO3nlult5bHyb7Z3PU7dqKmLbefxPamJxmV693PnFaGmqJaAqixZqmAhrlJKQQ1tNlMfjvde6JL7917r3v3XunubbO5KbE02fqNv5uDBVsM1RR5qbE18WJq6emqDSVE9NknjEMiRygxOyuQrjSSDx7917pjVlYBlYMp5DKQQf9Yj37r3Xfv3Xulp11kqLD70xOXrUrXOEot07ixpxtZJQZGlz22Nn5DcW2spR1cMkLo9FkaWlrARKn+asWAJ9+690hN3R26S+NaSfusc18o3leQm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TGbd21uHsnAZfdlJN1rsGHam2jUiDDbDx9HUY7EV2TytXWVjV1U4hxlKkNIfde6JD7917r3v3XurVf5PJx+wvlB2B8td15GfG9bfB343dx98b4SmfFR1O56vNbSrOvtq9f0cmVkjVanKrWZWoo2j5apooacspqVD+691VdJkcplKfDjK1ubqYMJj67G7axGa3FltyQbKwOWztTump2ntqXKyOtLQrX1lTUyQUiQxS1EktS0flldj7r3UKWjo52d56WmmeSIQSPLBFIzwKxdYXZwSUDEkKeLkn37r3WM43HFBGaCiMYCKIzSwaAscTQRqF02sqO6AfhWIHBPv3XuuQoKFXWRaKkDoYSjinhDoadWSnKsBcFA7hLfpDMBa59+691yWjo0tppaZdKwoumCIaUp5DLToLDgI7MyD+ySSLE+/de67FJShlcU1OHSeWpRhDGGSonv56hWAuHfU2txybm559+691nIBsSAbci4+h+lx7917q2/qDAYT+Yz8TNp/GSmyVdi/nD8Feu+2t2fHVarGU2Uo/lH8blqafP5DoGHJRMlbDuPb1SaGj27C5ljjp1SaOKaKpy0mP917qrPY/YmZ29TGfblZQVuCyWTx2frdt5/EYvcm1chnMRG1JQ5PJ7Xz8M9L99TxtJStN4lnEZankYxjQPde6W/ZO+N07q2d0xgsxlpDtyDqzckybXxsNPhdqtPVfI/sCllnl21iEhopH8VJTIpeE6SrOgWSad5fde6CBaeBFKJBCiEglFjRVJU3UlQLcfj37r3Wb37r3Xvfuvde9+690PPVOfqtkbV3TuPFRYF81urKR7EnTP7dwO51qNm42ig3NnqKmx246aqp4YqnIy4eWSqiQVIlooRFLAqyCo917pSdP/8AM3Oq/wDxJOxP/eppPfuvdBTh/wDi04v/ALV1F/7jL7917px9+691737r3Xvfuvde9+691737r3Qr43/mRu9f/Er9Yf8AvIbu9+690FHv3Xuve/de697917r3v3Xuve/de697917pUV+NrMtmNuYnC0lfl8nlNt9b4/HY6hopanI5DKV+zMZBBjqChpfJJNLJO4hhRAXkJWygtp9+691xl2VvKGPeE020tzQxdeTrTb/llwOVjj2PUvmBt1KfeDvEBjHOQIoQlaYyagiG3k9Pv3Xuntupe1Uygwj9Z9gpmm3Hu/Z64htm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17r3v3Xuve/de697917r3v3Xuve/de6fdr/8fNt3/te4j/3YR+/de6Vvc3/M4e1//Elb6/8AeoqvfuvdBr7917r3v3XuhPwmwtvVfXNd2FuXeuZ29Gu9YNl4bD4Hr6j3pLkKiLB/x3L5DK12R3Ht9KGOJJaWOljhSradmmMn2ywoaj3XumP+Edd/8/D3v/6JfAf/AGf+/de69/COu/8An4e9/wD0S+A/+z/37r3Tp99sXB7T3TjMNl937oz25/4Lj4ZcrtXC7HwuCxeOy0ecrq14aLN7gnyNXNJTU9NBF5KOKCNppHNQ5iSP3Xug49+690NXx8/5mjj/APw0+0P/AH12Z9+690Cvv3Xuve/de697917r3v3XuhQ3HWUuPo+iKysoBlaen2dHNJi9UfkyKQ917omejp45WRJZXVSI4ZGCSNZHIRmI917p47O33tXc+IxmOwS1OSq46+Krrq2r/iiJSVFLT1NJW1sbZKGB1nqneON6FBLEgR5Hm1pAre690C/v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6sqT/ALc71f8A40wxP/wLFf7917qtX37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+6907YOHAz5OGLcuRzGKwzRVhqa7A4Si3FlIp0opHx8cGIyOQxUMiy1Ihimdq5DFEzyqszosMnuvdGY+VMG3qdPjnHtjM5vO4j/ZadmmCt3DtWh2fkwf777kVYJcVjsznYmAjEbeda0amZl8ShAz+690VA/Q/6x/3r37r3X//0dcr5g8/Lb5SH/wIvu7/AN+Xk/fuvdF09+690LHRBt3V1Qf+/g7T/wDd1D7917oJ/fuvde9+691737r3Xvfuvde9+691737r3Q1U/wD2TnlR/wB/swP/ALwmR9+690Cvv3Xuve/de697917r3v3Xuve/de697917oafkR/zOffX/AFH0H/ulpvfuvdAt7917r3v3Xuve/de697917r3v3Xuho6k/4sPe3/iF6v8A9+Ttn37r3QL+/de697917r3v3Xuve/de697917r3v3XuhN33/wAep0r/AOI2y/8A7+Hdfv3Xugy9+691737r3Xvfuvde9+691737r3Tvt/8A4v2E/wC1vjf/AHMT37r3TpvznfO8z/2de4v/AHbz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dTG6RyU9MoF5JFaSNWRLkF1BF2F/de6je/de697917r3v3XurKFP/YnmqH9f5l+K5/8ALWK/37r3Va/v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XujLfIz/AItfxu/w+NGyv/ew3CffuvdFnbhWP9FP+9e/de6//9LXK+YP/ZW3yj/8WL7t/wDfl5P37r3RdPfuvdCv0T/zOnqn/wASDtP/AN3cPv3Xug6w+Gye4MnS4fD08NVkawVLQxVOSxOGo44aGjkyWRrchmc/UUtBRUlLSwzVVZW11VDT00Eck9RLHDG7r7r3Sh/0db2/5Utmf+jv+P3/ANlnv3Xuvf6Ot7f8qWzP/R3/AB+/+yz37r3Xv9HW9v8AlS2Z/wCjv+P3/wBlnv3Xuuz1xvYWvR7L5F+O8Pj435tzbdnB/wAPfuvddf6Ot7f8qWzP/R3/AB+/+yz37r3QhZahl2v0THgc5X7Yjz2f7XizuOwmD31sXfGQGGwO0psZkMnlP9H+SysOPjNRWwRUyZCaCWp/danjkjhldfde6Ar37r3Xvfuvde9+691737r3Xvfuvde9+690NHyH/wCZzb5/6jsf/wC6Sl9+690C/v3Xuve/de697917r3v3Xuve/de6GbqU2wPen+PTFUP/AGJO2vfuvdAz7917r3v3Xuve/de697917r3v3Xuve/de6Ezff/HqdLf+I3y//v4N1e/de6DP37r3Xvfuvde9+691737r3XvfuvdO2A/4vuF/7W2O/wDcxPfuvdOu/P8Aj+N5/wDh17i/9283v3Xukp7917r3v3Xuve/de697917r3v3Xuhh6+P8Axjnvof12VtC//o1sF7917oHvfuvde9+691737r3Xvfuvde9+691737r3Q09y/wCa6h/8QhsL/e6v37r3QLe/de697917r3v3Xuve/de697917oZugP8AmaOK/wDDd7E/99xlvfuvdAz7917r3v3Xuve/de697917r3v3Xuve/de6GTK/9k+bD/8AEyds/wDvE7K9+690Dfv3Xuve/de697917r3v3Xuve/de697917oQu3f+Ztdqf+JK37/71dX7917oPffuvdWBfDLcHUO29k9j1/Y1H1JW5qfvL4sY3Ep2ZgOrd0S0e1K9N8w7pyzbe7GpZa2v2pSZL+70++KHa1fiMjUUS08JzWOjcSn3XulFvVdg4Cgpourqr49xdx7e63+GlLQ0Gbg+Nu9NhZTbOF+PsOP7wd8vu+Gv2dV7si7EiWo3NPlqyoymUp56ZqT/ACKnzYq/de6A/em2evo/jjh8Hj8rs7/Sn0zujauZ3VVY7KdUmp31hfkPtmXN12Jwm6MLl6rL7th2L/AttUckUdOz4rIZvPw1OmKnjkf3XuinxSywTQVEEkkNRTTwVVNPE7RzU9TTSiemqYJUsySRyKro6kFWAIIIHv3Xujc4/wCQ27830hsnZdNuPc+zd2fGabM7j64zO0qySh29unb28t3UiZXH75wsUqRrm8PVVvnwmdhifyUrTUdVD5hBW+/de6Cbbm1Osu2dw4Cr7LzO2+uvuMnuOfMz9a0OxevJ81gNvYZ81JtyTB0OPXbu262tnqKWj27mTgainkWOqp5qeU0sC+/de6b+tdvbiwO+O2+ttv5DOYbamRqYYIu56TJQ7d2xi9tx1FSOuq7tHdkEi45Nubhx2YhXK08FcGpqqSOpEdbFQVFJJ7r3Qb4fK5HCV+MzWCyGQwuVxVVSZLE5TF1VVispi66jkWooqyhq6Vo5qeaJ1VkdGVlIFrEe/de6N38aOpOyPk7u7pf4/dKT4LaM+495ZzbHd81TgIOwYs7sHcUaZem7O3jsPctZT0mUwu2aeirKR8XRzUYpq2THVkdQK6vWal917oV/mH8lerthdNfHP4adS9l7S+Yk3RHx97j6i3t8i0Wuk2HTf6W8+mMwW0+rQqXrZNpbbpKjFY/JQ5arpoaLJGhaerJrqdPde6qJ9+690Km8j/xhr44D+ma+UNv/AEKNm+/de6Cv37r3VuH8ura+V3J8Tv5neM2XJl8zvbN7K+NtDVbG26sWVy9T1vQdgZTL9jb0p9oSpIa2Smx0D45KqCNnpRMW5lNLHJ7r3RWVyOOrqfD1kuPoqmgjWJetOr6OeKqWrWoJen3RuyBHdzSSMZJU8zF62TyMzmEzzT+691Ngmr6nIZGPFZ2myG78jS/f767IE8UmL2XiZovI+OwFdC6x/d+JSjSwsogCmOJo5I5Zcf7r3Qz9O9dbQ7g647v6+21tvMvvvDddz9gfHCIbtg27B2nlesNyUGR7rwOU2tOkb5yWTbwnyFDJHPRmhGOqFWQeqGh917o38nXPxPxmxuwu2s9snLVVXtv5Z9gfHrrLZ9T2/uqnmj6+2R8dqfdO3a7YGZ29iJMbS7lymYAyOBbP0dThBTzNTvDUilWZPde6DXd/UPxsp+kO7Z9qZvecHaHWfxL6W7Qz89fuN5cZ3Tv7uDbHXWan7A2pubwMkdNQVu+qvCbm2PlZfV97h62iyMjyV8cHuvdCJ3v0b8edtfKKm+NfVHUmY7C3vh+492dWdXdQU/YPbdJtLcUjbWoafbua7kp81H95T02KzebqNyV+4drZOGhr6HHVmMrRCFrMnRe690F2+9s/GuLG90dgdOVGVy2N218t+nej8T2bunsXLscz1VXdZbk3H2ruTbuUWWamxKZDL7dUYeomOQqsdjTBGskcslQkfuvdCL8j+jPif0l03RQY7B5hspvHJ/Mjb3WmCpeyOyW3f2JujqX5Zp0z09laPFUeDqNtvTU+LpIH3PRVc9LXSqZDivHUxUy1PuvdIjszorYmI+dR6i27RzYbZmKoumc9kcZuLdbVeM6X6jq+iNt9odu5fL70z1PDS0FbAlZlYMLJV08NNRyinkl8SmniPuvdB7210DFR/JeX43db5yXZ3WfZ26epd24HfnZG8KHISVe3fkhtjE7i2x91nVd6WoeJclPjcvmad5lrHo5lM0qMsFf7r3Rv997p62+KexO8/jp8cts7jw/aG2KXrXY3dvePYWHo1zW6sHvqDLvmtmbH2BuOnnpqLCy02h6WvaF2K1dU8lRk8kUzEXuvdVtbs2Ni+0TVVe2duYTbHZKU9bWw4LZ+HodvbT7CWjiNU+IwWzMMkVDic4IFaPHY/C0sFFkfHHSwUcWTkVsh7r3RS/fuvde9+691737r3Xvfuvde9+690Lvdn/H34L/xEXQf/vjdu+/de6CL37r3Xvfuvde9+691737r3XvfuvdCD1n/AMfDlv8AxHHcP/vpM37917oPvfuvde9+691737r3Xvfuvde9+691737r3S1robddbYqPNAdW9d9w/biRvul8eC24/maLTYRtq0q2q5IItxf37r3SK9+691737r3Xvfuvde9+691737r3XvfuvdDR8g/+ZsZ//tU7H/8AeDxnv3XugX9+691737r3Xvfuvde9+691737r3Q09Of8AAHu//wAQVuP/AN7nbnv3XugW9+691737r3Sh2jl22/uza2eTKVeDbCbjweXGax+Bw+6a/Efw3KRVpydDtncMsGPy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/Eb5i3/o4N1e/de6DL37r3Xvfuvde9+691737r3XvfuvdO2A/wCL7hf+1tjv/cxPfuvdOu/P+P43n/4de4v/AHbze/de6Snv3Xuve/de697917r3v3Xuve/de6GHr7/mXXfP/hlbQ/8AfrYL37r3QPe/de697917r3v3Xuve/de697917r3v3Xuhp7m/R1F/4hHYdv8Ab1fv3XugW9+691737r3Xvfuvde9+691737r3Qz/H7/maeJ/8N7sP/wB9zlvfuvdAx7917r3v3Xuve/de697917r3v3Xuve/de6GLK/8AZP2xP6f6Y+2P/eK2Xf37r3QO+/de697917r3v3Xuve/de697917r3v3XuhC7d/5m12pf6/6S9+3/APQrq/fuvdB77917r3v3Xuve/de697917r3v3Xul3s6JZMN2UWqIIPFsSKVRO0i+dhvvBoKeHxq15De6hrA2PqHHv3XukJ7917r3v3Xuve/de697917p17sq6GbKdd0lBLJkYsZ09sqBs7WzVkmZyNTWVmQyuTxuSgqWdKeHEV1RV4jFRQSyI+Op6SoJhknkpKb3Xuga9+690KW8L/6G/jnf/nd/KH/3p9m/8a9+690Fvv3Xuve/de697917riyq6sjqrIylWVgGVlYWZWU8EEfUe/de6HvF/Kz5UYPbmw9n4L5M99YHanVq00XW+A292luzbtJsumo6Q4+koMRU4KppqpqSGmJpaeiqqiWngg/yeCKOD9v37r3R5P5cmX3l3N8oKnvb5F919udjdefCvZGU+Um5MJvjsftXsfNZPI4KZtt7Sl2lichkqgJNjq6t/ibePQD4I6f0pM7J7r3QFZnPbt3bvHemeyeTo37T3hls5uftnf0Rigwuw3zVfNkMth9u+LxxwVXqkRkhZFo1Q08JjeGWWg917oSsl33l8/8AGzKdHblosZXdQQdg9c5Xaedk2n17gd9bkxXWm2NxYE7Ijq8Ft+lrsnRy1uaWd81ma6appI4JaGnuKqqhpPde6UfZnfu8+x03JiMvg8tJ2fv7tLF9n47DLvOCq6860w2Mw2TpsTV5frVMHFCd21NbncvnMluNcqr11RWNLV4zzS/5V7r3RcYoqOaizGNx2Ymh2xDNI3ZHY7v58hunIzHyT7e29VS+QyrKX/dlu4cSam8kUirk/de6yzSwvDg6+uwajG6FTrHr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F/dJ9+690GXv3Xuve/de697917r3v3Xuve/de6dsB/xfcL/2tsd/7mJ7917p135/x/G8/wDw69xf+7eb37r3SU9+691737r3Xvfuvde9+691737r3Qw9ff8AMuu+f8dlbR/9+tgj7917oHvfuvde9+691737r3Xvfuvde9+691737r3Q09zfo6j/APEJbD/3ur9+690C3v3Xuve/de697917r3v3Xuve/de6Gb4/m3aWJP8A2b3Yf/vuct7917oGffuvde9+691737r3Xvfuvde9+691737r3QxZT/sn/Yv/AImLtf8A94rZnv3Xugd9+691737r3Xvfuvde9+691737r3XvfuvdCF24b9s9pn+vZW/D/t911fv3Xug99+691737r3Xvfuvde9+691737r3S12p/xaOxP/DKg/3nfOFHv3XukV7917r3v3Xuve/de697917qZ2ptnI4LGdUZWvjqTHuvYNdkaGseLz0VTBSb5yyJTUebpWkpahqaCWnjqKWNxPROTT1Uccyke/de6R9P192NWbTl39SdadmVewKfFNnqjf8AS9db1qNh0+30rHxz7hn3pDQNjEx4qEenNe1UIBIrR+TWCPfuvdCXl9lb43H8eul937b2Nvjcu0tm5j5Rybv3RtvZ25c/t3acEe4dp1M1VuXN4elmpqCGOKCWSWaqljjjVGZ2UKSPde6CCXbm5afbeF3pU7Y3NS7K3NW5PGbZ3tVbdzVNsvc2Twmj+OYvbe7Z4Fx2QqaHyR/e09HUySU+pfMqahf3XupeB2ZvjddDlMptLYe/t4YvBpXyZvKbQ2PuzdeMwyYqiXJ5V8tkdvUdTDTClpmWpqjM6+GJhLJpQhvfuvdRpNtboh2PB2fLtTdkXV1VnDtal7Rl2vn4+s6jdIxj5s7Wg7CenGGfKCijkrDjlrTU+BWm8XjUsPde6XVL0N39XZHK4ai+P3ftZmcBicFn9wYWl6Q7UqMzt3AbqDHame3DiYsQaigocrof+F1dXHHDWaX+2eXQ1vde6Ysj1h2nhhvs5rqrtTBjquowFJ2sc51pvnDDqmq3bMKbaNN2kcnQRf3cky8hCYhM19sa1iBSiUkX917qyT+W3sbe1ftf5j4V8Nuvag7w+HO+qvpDcmTwG4dt4TtnOdP7ySn3pheuN7V9NHj8qcXLkUiy8WNqZZIJtEbmKWNtPuvd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AN8rgPfuvdI737r3XvfuvdKXZU+26beezqnecUk+zqbdm26nd1PHFUTvUbXgzUEu4YPt6NXnkD0YmUx048rAlYmWQqw917qxH5h7k6FyvVuJptsZLrDPb0bP4aXaE/XP90Kqrwu3qenqEzlPkZdomNsdimianSmxGQRJBUNE8NIogqJI/de6rJ9+690IPWX/AB81d/4j7t//AHnqPOD37r3Qfe/de697917r3v3Xuve/de697917r3v3XuhIzv8AzKXrH/Df3dn/ALodhn37r3Qb+/de697917r3v3Xuve/de697917p82x/x8u3v+15if8A3Pj9+690rO5P+Zvdq/8AiSN8/wDvT1Xv3Xug39+691737r3Q1N/2TlTj/v8AllP/AH31B7917oFffuvdDJUdL5in676Z7Ik3NtUYfurffYmwMVTE7mNZtHKdbVG3YcvU7yRMYw8M0e5aGspzh/4gxgDBgtSDSr7r3SO7J2Nler+yOxurs9VY2tz/AFh2DvfrXcFZhpaqfDVef2Buir2jm6nD1FdDTTyUj1VHM1NJNTxSPEVZ4o2JRfde6Rnv3Xuhn6ANuz6D/wANTs4f7frDMj37r3QMe/de697917r3v3Xuve/de6ELev8Ax7vUX/iOch/79rdXv3Xug8JsCeTYE2AuTb+g9+690KXYXUG8eru0Juod6Nt3F7vpU2FLWSjdOBn2vRQ9j7OxW+9u1dVvOOf+FrSjHZmimqq4VZpYQZGaYxxl/fuvdKXuLoXN9P4vZG5l3fsDs/YHZUO4W2V2b1jls9X7TyuT2XlP4NvXbEtFu/GYXMUmRxks1DLURV2KhVoKqlnp3ninDj3XugJ9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdWRof+xQFUP/AAZTij/7K5Xj37r3Vbnv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917p2wefzu2MnBmttZrLbezNLFWQ02WweSrMTk6eHIUUmNr4oK+geOVFnp5paeZVcB43dGurEH3XujL/Kjcm5N1r8dcxurce4t05eX41bMSTK7nz2X3FkjG29dx1PgWuzM08qxCSSR1iVgiszFVBY3917oqJ+h/1j/vXv3Xuv/W1v8A5fEf7Nn8oeR/2UT3X+R/z8rJ+/de6Ltcf1H+3Hv3XuhW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mmlSNpIvLE/ikMalls2kXt7917p+2VvHcnXe8tpdgbNyX8G3fsXc2B3ltTMfZ0GQ/hW5NsZWLN4LJfw/KxT0s/gqoIpfDUwyRPp0yI6Eqfde6M983tlbbw/ckHaPXsFSnVHyU2ht75CdffdbpxW9KjFN2FA1R2Lsevz+GRI/u9s7uiz+35qSoBrIFpI1rGknZpZPde6J37917r3v3Xuve/de6Gj5D/8AM5d8/wDUdj//AHSUvv3XugX9+691737r3Xvfuvde9+691737r3Qy9Tf8WLvH/wAQ1Wf+/F237917oGvfuvde9+691737r3Xvfuvde9+691737r3Qmb6/49Tpf/xHOY/9+9un37r3QZ+/de697917r3v3Xuve/de697917p2wH/F9wv8A2tsd/wC5ie/de6dd+f8AH87z/wDDr3F/7t5vfuvdJT37r3Xvfuvde9+691737r3XvfuvdDB1/wD8y674/wDDL2j/AO/Vwfv3Xugf9+691737r3Xvfuvde9+691737r3XvfuvdDT3N+jqP/xCWw/97q/fuvdAt7917r3v3Xuve/de697917r3v3Xuhm+P/wDzNLEf+G/2F/77rLe/de6Bn37r3Xvfuvde9+691737r3Xvfuvde9+690MeU/7J92L/AOJj7W/94nZnv3Xugc9+691737r3Xvfuvde9+691737r3XvfuvdCH29/zNrtP/xJO+//AHqqv37r3Qee/de697917r3v3Xuve/de697917pa7T/4tHYn/hlQ/wDvcYX37r3SK9+691737r3Uugx9dla2lxuMo6rIZCtmjpqOiooJaqqqZ5W0pFDBCGZiT+AP8fp7917qfujf8uAztbidiU+x6DG4/G7Sgp9yYKHFb4ylVkztHH1u5KqLemUmylGatMlLW0dVV7dFNSF0lSiZ6UpJJ7r3QOKoUBVAAAsAPoB7917pvmw+JqKpK6fF46etjaN46yaippKpHhOqFkqHUuCpAKkHj8e/de6FfedJST9Q/HN56WmmePP/ACZmjklp4ZJEmh3PtEQypI4JDIHfQQbjUbfU+/de6CWpweFrZzVVmHxdXUnSDUVOPpJ5yEFkBllQtwOBzx7917rLUYvGVlRHV1eOoKqqhCiGpqKSnnqIgrF1Ec0qllsxJFj9Tf37r3UlaenSaSpSCFaiZI45p1iRZpY4r+JJ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5FKjvrf+UxDPNl6VsVh6ecVdOZqisaqq6ceRWxMkkZjPuvdJnKZOmqkp8fiMTR7c25jnnOI29j56+qp6RqhUSqr67IZSWeqra+qEUbVldUys8hVUQRU0VPTw+690z+/de697917r3v3Xuve/de6ETqD/AJm11d/4kbY//vT0vv3XugrxP/Fqxn/avov/AHGX37r3Th7917r3v3Xuve/de697917r3v3XuhVxp/4wjvIfj/Sr1of/AF0d2e/de6Cr37r3Xvfuvde9+691737r3Xvfuvde9+6909583qsb/htPYw/9crH+/de6VXXE+Fpshl59wwdZZXEx4qnkrNs9pp2acFueOkz9FkhiqeTqo0+TWQmnDy6MnRs0AlSGUztGvv3XumvsWo2LV9g78q+rsbm8N1nU703TUddYjcs0U+4sXsSbOzybRx+dlglqENZDjzTx1OmpmHkDDzTf5xvde6R3v3XulzsLszfnV2TrMxsHclXtyvyFD/DMiYqXGZKjyWP+5Sr+0yGJzcFVSTASRq8byQF4m9cTI/q9+691Zf2p8ftg7m6czvZ+58xmMxv9Op6LsebuKuz1U1PujIUOyaetxNHHt+BlwlLhMrMIMVhaLHUNPJB5qWKOaV42im917qt7qv8A4+fKf+I47j/99FnPfuvdBx7917r3v3Xuve/de697917r3v3Xuve/de6WUn/MrsJ/4lrs3/33+w/fuvdI337r3Xvfuvde9+691737r3XvfuvddH6H/WP+9e/de6EbuD/mbXaP/iRd7f8AvS1Xv3Xug69+691737r3XvfuvdLrr7fDbFzNTV1WBx27ttZzGzbf3pszLyGmx27dsVdRFV1WKbIxRyzUFVHNBBV43K0qGooKyGnrIP3YVB917oVt49lbhpNlzbFlp6TsfqXcjy1/Ve7ux9tat8bMnp/4Xj8lT43eWFljqY8riqKhx+GyeFqK2tx0NOtPLRUv2VXRVVR7r3QQbcr9sYUY/NV0WSzWWhyeXxmV2tLRQ0ODr9m5zbUuDrquh3dT1rVUGTIqquOGNsS0UDCCqE0510q+690ksr15DUYXLbl2BVZjOYrbsKVW49rZtaKr35t/CpSLLW7sjqMFT01JmcPSSa1yNbTUNHUUSlZ56AUSzV0fuvdIrb24M7tLcGB3ZtbLVmA3PtfMY7cG3c5j2iFbiczialaz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P+98xm6/bFDh9gHdOM7dPQ9btWq7z6Kx26Yu223XU7Kp9mJtrI7lirpJqjI0VZFRzx07U9THBLUwTSU0bTD3XujDQusn8n+peN1kjf8AmSYl0dGV0dW+LtaVdHXggjkEG3v3Xuq3vfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdGU+RX/Fs+OH/AIrXsv8A96/cHv3Xui1H6H/WP+9e/de6/9DW2+Xf/ZWHyf8A/Fh+6v8A35OT9+690Xj37r3QrdFf8zn6r/8AD+2r/wC7iL37r3QU+/de697917r3v3Xuve/de6sK/l5f8Xf5jf8AjPX5b/8AvERe/de6r19+690sNvdh782jRTY3a27crgcfUVb5CSlokx0ix5GSmFHJksfPXQTS0VUYlVDVUMkM3pjOvVFEU917pH/7En/Ekkn/ABJPv3Xujt9AZyrk6/yVF1X1V8Z27TwFRJJvPtLvufYE1Nt/ZOUztHisDuuib5MbmXr2GoiyWThxb08O1pqzxxwVCSMzTBvde6EHL7Kw+9fjR2h0rT57a3a3cPw0zDdxbW3t0zV5Peu1Mp8e+xa7HYruHZEczYvEtHRbP3JW0G4Xr4fvKVf4jl5aRRQCoyLe691XH7917r3v3Xuve/de6Gb5Cf8AM5N8f9R1B/7pab37r3QM+/de697917r3v3Xuve/de697917oZep/+LF3j/4hqs/9+Ntu3v3Xuga9+691737r3Xvfuvde9+691737r3XvfuvdCXvq391OmP6/6Ocvf/0bu6be/de6DT37r3Xvfuvde9+691737r3XvfuvdO2A/wCL7hf+1tjv/cxPfuvdOm+/+P33l/4dW4f/AHbze/de6Svv3Xuve/de697917r3v3Xuve/de6GDr/8A5l13v/4Ze0bf+jUwfv3Xugf9+691737r3Xvfuvde9+691737r3XvfuvdDT3N+jqP/wAQlsP/AHurv7917oFvfuvde9+691737r3Xvfuvde9+690MvQFv9KOJv9P7v9hf++6y3v3Xuga9+691737r3Xvfuvde9+691737r3XvfuvdDFlP+yf9jf1/0xdq/wDvFbN9+690Dvv3Xuve/de697917r3v3Xuve/de697917oQe2+e2O0v/Ek77/8Aeqq/fuvdB97917r3v3Xuve/de697917r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/cVffuvdP+LxeVzuWxWAwGLyGdz+eyNLiMHg8RSyVuVzGVrX8dLj8fSRep5HNz+FVQzuyorMPde6GXb4xnWqZGfG1WK3J2NUpU4uPdlD4clt3r6jZViyD9bZA3Ssy9R+7TPumNdEEGoYVys/8Sl917p+31NNPtzqF55ZZn/0eZY65ZHka8nbu6ppDqck+p2Z2/qxJPJPv3Xug39+691737r3Xvfuvde9+691737r3Qh9Rf8AM2Or/wDxIuyP/enpbe/de6CzE/8AFqxn/avov/cZffuvdOHv3Xuve/de697917r3v3Xuve/de6FTG/8AMkd5f+JU60/95Ldnv3Xugr9+691737r3Xvfuvde9+691737r3XvfuvdPee/4FY3/AMNTY/8A7xWP9+690ye/de697917r3v3Xulr1xsev7J31tjYuMqqagqtyZNaI5GsDvS4yjhgeuymTnii9ci01LFNOYo/XJo0J6mHv3XujJ/IP4+bm6X6927Njezc3vHrebdC4+o25kqCs2vR4PdWWxtVl8Vl6HbMeTyVHMuRhpclK1VGySQuhjfyeRZW917ov3Vn/HzZT/xHHcX/AL6LOe/de6Dj37r3Xvfuvde9+691737r3Xvfuvde9+690sX/AOZYYX/xLPZf/vAbD9+690jvfuvde9+691737r3Xvfuvde9+691036Wv9LH/AHr37r3Qi9vf8zZ7Q/8AEib1/wDelqffuvdB37917r3v3Xuve/de697917oSdl9gnAYLdGxtwUAz2wN6JSy5TG+OKXKba3JjA64HsDZU07IsGVoRJLDNA0iQ5GilnoKl4jJT1lH7r3Qs7Rw+UxVF/oc3HtnEZd93PS7421R0tLjMae4Nv5zHxU+ByOyezMhAk1Fk8b9pU1W0Z6lUgFRUZ3A5aDyV9XjG917oHsDXUOy+w6ynjydPk9vR5DduyMjmvDQhcnsjctHW7F3DlaL7aesgp5qnD1lTNSzwVU4p5XSWKWQxq7e690AuWwmU2zlsttrORyx5nbmVyOByolo5qBnyGHrHx9VOtFUeuNJHjMkasSQrLyfr7917qB7917ocPjx22vTvYW2K/NVubXriLNvkM7jsPjMVuWs2rlZMfUUeM7K2NtrcSS0ceaxk0wllamEE1bRmpojMDNG8fuvdHUzdHtTbWFyG+dkd2bA7vzj9mZOv27sD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l8BVVNRSf3pppJINn1mQy2SeaSlq66oVJYZ6yrph7r3Sd+Un91/t/jcNpvuuShX4y7LWsk3dBgKarkyS733IJZMZBt6adFojD4DCKiQzh/IJOAhPuvdFTP0P+sf969+691//0tbT5cf9lW/Jz/xYXuj/AN+RkvfuvdF69+690Yn4l9i7w6p+SHUG+Nh5SDD7lx+76bFU9bVYvHZmnOL3XTS7R3JRTY7KxywOtVja6rpSxTVH5PJGVkRGHuvdP0XzI7phjjhjxnx7SOJEjjRPh38QUVURdKqqJsUKAALAAAD8D37r3XP/AGc3uz/nXfH3/wBI9+If/wBg3v3Xuvf7Ob3Z/wA674+/+ke/EP8A+wb37r3Xv9nN7s/513x9/wDSPfiH/wDYN7917oQOu/mH3llKrfu2tPU1Bi96dH987O3Ouzvjf8eNg5nJbXy/UWYqMljm3P19tXGZWGAS09PWOkFaiM9PGZQ8alT7r3RFf8ffuvde9+691737r3XvfuvdGi2bgN29o4nJbwqe0OiOk9p4Sk3VjM5nt+dl47BZHP7hqeu4Nvb9yg64xcme3vla/cmKroo8vWYbbU1HWzySu1p4pzH7r3QifIukh7B6M6a7SpNwS7r3H0pVVXxD7UyoSlwOOnxWzxWZ/wCMG8MDs3Mw4zP01BndoRZLEwSZDCU0pfbksmQSPIVMjVPuvdEZ9+691737r3QyfIE37h3uR/yvUH/umpvfuvdA37917r3v3Xuve/de697917r3v3Xuhi6pNsF3f/j07Vj/ANiLtz37r3QO+/de697917r3v3Xuve/de697917r3v3XuhJ3x/x63Tf/AIjrLf8Av3N0e/de6Db37r3Xvfuvde9+691737r3XvfuvdOuC/4vmG/7WuO/9zE9+69067653tvE/wBd1bh/9203v3Xukr7917r3v3Xuve/de697917r3v3Xuhd2D/zLzvX/AMMzaX/v08H7917oIvfuvde9+691737r3Xvfuvde9+691737r3Qy9xfo6m/8QtsX/e6r37r3QNe/de697917r3v3Xuve/de697917oYuhOOz8V/4b3YP+89d5Ue/de6B337r3Xvfuvde9+691737r3Xvfuvde9+690L+U/5kHsb+v+l/tXj/AF9mbN9+690GOIw+W3BlKHCYHF5HN5rJzGmxuIxFFU5LKZCoEbTGChoKNXllfQjPpjQmwJtYH37r3TtW7J3njXzceR2juegfbO6qTYu5ErcBlaV9v73r/v8A7HZ2bWeJTSZWf+FZTw4+fRUP9nVaYz9vLo917rlV7G3rQSbphrtn7po5tjZyPbO9oqvb+Wp5Nn7kmyFRiYtvbpjmhBx9c1VSVVMtJViOUywyxhNcbge691JzfXXYO2qzcGO3HsTeWAyG08fJlt00Ob2xm8VWbaxUW8E68lye4Kaugjejp13BJHg2mqVRBkGWiJ+5YRn3Xulj1piO0dnb16p3rt3qzK7ryO4cxUSdY4fObE3Bn8F2Rk4McA9LtuioVhnyc1MlZT1cMmIqBU00ppqmCWGVYZB7r3Sp7I7Y773PXVm4M3S7j2HDtjBZTo/cEG1aPee2MRQx5Gqqa/emx901eWq6qtkqMlkJK2uyWLylfLacsI4YYoYoovde6RfaGbqKbffdOCWjws8Oc7X3BkKrJ1uCxGQ3DSvgtz5dYKbDbiroZK2ggqDWs9fFRzRCqMVOJ/IsKL7917oJ/fuvde9+691737r3Xvfuvde9+690s9q/8WjsL/wzIP8A3uMKffuvdI5CA6kmNQGUlpjaEAHkym49P+q5HH5Hv3XurUPlE/StFvLuTbHXeyOnsfVwU+7c78QNn7ky/wAes91h2Xm6j5AUku8d5blx+FzdTgs3TQ9faG6tot7/AG9O6TZMRUtVk6Kmqx7r3ReV2F1NuLrjGbfrNufGjZXbO4dld49bbryWC3P17SUPXnyM338u8HmetsfHUJlqiGODbvXDZGDCZOjq5cZS48VFFFlAI5VX3XuhI3dtL47Z/rTsTuD43bB+Mu6Mtvmm+KM/W3WPbc3S+z22jPsrsne3WXf2Dh6/3puuPN4GDcmLw+0dwbkyhqI6vTlXyNDXwrorIvde6DLtHbfxIw+T3hS9Mx9X7t+Lb7F+RtFke19yZeiyfyQ2n3lhM3vSo6BTYuQqszT7mmx9TTU2xqPb1DTUr4XP46uqqzMRNk5KmWn917o6GH+Jnx8+Qfyq61wewtlfHLGdCdMdvZjcXzEqNiZXrHEbU2r1NtfonbfZ23ayfcGys1PHmNhZzL0ubw1XmsmZpaXIrX0klTTRNIvv3XuiY/I35ub67N+Q/Q/z32didubW3tH3R3J2HsbCR0+b/gn8A64n2DsbZ+D3crVUdZUvlds42nx25Xp5qYTGeq+1jpF8Sx+690o+xNi/Hb5o9W/Ir5O/Gnr7fvQfyF6Yo07q+RHxqfLt2Z1NvjZe7d1VZ312j0bnIIFy2NkoJmmy+VxtTTU9BTQfsU9HCn+Vn3XuqwoaqGoijnp5I54JkWSKaKRZIpY3F1eN0uCCOQQffuvdZfJ/h/vPv3XuoOTipqvHV1NWWWlmpZ0nciNvHGYzqlAlVluv6hqUi45B9+691ef8v8rWbpj+KPY+7YIoe4O0viH1RvbuiemhqKWgym4aulNDt/MUlNPJKwllhhrqaoIbQI6emjiCRxiNPde6KBrX+v8AvB9+6917Wv8AX/eD7917r2tf6/7wffuvde1r/X/eD7917r2tf6/7wffuvde1r/X/AHg+/de69rX+v+8H37r3S12+w/uF2xY/8vDp2/8AhbK7h9+691D2NvzL9c7sxm68C4nqaMCnzOBknSGi3htKprIJ9wbNzKyJIv2uQWCNVmMTPSVKU1fTGOspKaaP3XurGoc9tLK0NJntubu2lW7YzFDDmsHW5fffXuBzAw1ZH9zSx7kwNflxPjMjAh8WRx9SBJTVCSRnUFDt7r3U+ZZKaonpZ42iqaWQw1EDkCSGQANpcD+oIZT9CCGBIIPv3Xusfk/w/wB59+6917yf4f7z7917r3k/w/3n37r3SpwdFDTZSKqylRQU0OMcVrJPVJLFNPS6Zqenk+1WbUjNpLqoJYAoLMwI917rLQ1MGUydFBlsrn8ti9rUu783tvG0tU2ISfcmYxLYurzNXTxNpr6xKOXIDHvlfuEoI6qt+wgp6qrlqH917pLaZTqIhkVVDu5YMFijRDM7SOwAAVAWZjYBQWNh7917pDZzH03a0FH17ga3b+b2DldyU1J3jvrF7lxddhds7f2vJjd4w9a4XJYmth+9zebneiXL/wALq5Xw2PVxkI4hkFMXuvdCnU7pzc9EMOK16bb8FPlcdQ7XoTHT7UxOJzOMqMDk8JhduwKtFS0M2Pq6rHSUtPTpE9JNLTMhgleNvde6ALd3x86N35VVFZmdg0G2MjWYyoxz5nruNdqfaVLK5oM3FtHGmHByTU7spkiSihFVGpSWRZGWoj917ovGI+DW98I1Vmtj7z2/2HUS7U7lw1Xt+WjGxs/TT1fUWcbarUsWYrKmiqlydT4sZGEr1lSsljDQ/aiWri917qu7J4zI4TKZTCZmgrcTmcJk8hhcziclSzUOSxOYxNY+PymLyVDUqssFRTVEckE8Mih45FZGAYEe/de6g+/de697917r3v3Xuve/de697917pW1v/Hibb/w3bvW3+xw+37+/de6SXv3Xuve/de697917r3v3Xuve/de697917oZO/v8Amamdtz/uJ2V/vGxcb7917oG/fuvde9+691737r3Xvfuvde9+690MvT//AAB7q5/5oduKw/r/AL/bbvv3Xuga9+691737r3Xvfuvde9+691737r3XvfuvdCvv3/jxOj+f+YG3Ncf0/wCMrbg9+690FHv3Xuve/de697917r3v3Xuve/de6XXW/wDx+OA/7W+M/wDc1PYO5/8A+VP3H/nmn/6tN1kl90T/AMSP5L/6Xe1f9p0HTdvL/j4Ml/1GVX/W4+3+Sv8AlV7H/mhF/wAcXop+87/0/bmn/paX/wD2lS9Jb2KuoD697917r3v3Xuve/de697917oQcd/zKnef/AIkPrH/3mt3+/de6hJ2P2HFhc3tuPfu9I9u7lxOBwO48Am6M4mFz+D2qHG18Lm8Ws/gqqTG+ST7CmnjaOn1N4lTUb+6911ursbsLfdFSY3e++957yx1BWZXIUFBurdGb3DRUVfnq+fK5yupKXLzzRxzVtVVVVTVyooaaWaWSQs8jk+691Kj7V7QhrK/IRdkb9ir8rn9wbryldHvDcKVmS3TuzJYzM7q3JX1K1AebIZOswmGq8hWSMZqiagopZnd6WBo/de6yUPZ3YwzOPyT9g77+8gyJq0rot45+DIRz1e3otlVtRT5ATmSKWXCxR4h5RyaNVpjeBRH7917q3nsrYtPhNjbn31hqLDxdgdc4bsLdO285Vdg/JfJwYw0+2y+4ocFjz2NHkKUZPC0kOHSuXIMJ2SnWoSWAfbj3Xuqi852hlNz5nK7j3LsTrHcO4c7kKvLZvPZyfvnLZnMZSvmNTXZLK5Sv7AknqKiaRmklmmdndiWYkkn37r3WKTsiuO1tw7RoNk9bbbod0z4SXMZLbdJ2Wc3NT4GsbI0eOik3durMUUcL1BSWV1oPOfGqJPHG0qSe690fr4B71mzG1eyejjnaCirEzlL3Fs/btbUUmNbddVT4Iba7CpqbJ1zos1VQY+kxWRo6AuoWmjy9StyJPfuvdWFbR7Cn2qu3qKuwq5/GbQ7OwvbO36SDMHbmQoN5YYUlLVXzcFJW+WgrqagpYKujkp2B8ayQyRNr8nuvdK7ave2X2vNTx/wCHMYKGbHZttv1eYhplk3vjOzKbsqm3kmcTHSVscuqlhxxphIU8SJLq1h0k917pO5vsiHdG132Pn9mPnNmUy0+VMFVurLVW84s5S1uXllz+U7AWjMlRA9Hm8ljWpqnH2jpTGsM8M0Znb3XupuX7kzu4K+pzORpniy+X2f23szcdXhMvUYil3Bhe2UrEnoKqiWKUGhxv3NPJT0M0kyzS0dNNLIJl8g917owuV2rW57pv4jGhlpMRQbI6p797B3XjIHo6yek20+6KGGDdtNj45InqarMVM0XjpnmjRHllLyQrFO4917ovOC2mJsNittQ75x9Fgu/qyHYu2anMbJlRdz5LaO4MPVRUm4noquvqtuU6blq8VQCegkyEkkn7jxmlRnPuvdDtFiOyN2U+5YqPsPYOfyW6sRtvdHZG0Mn1vtzG1eM3J2vhMbtTMYHN0E0Mv3OMXbjyTHLYtJaaaooaulFNBVtHLU+690X/L7Zp67CHtGqzlTRdcZKkxU+P3HR9cUmKnqpKrL1u2qfEbe68xuX8Iho1xc5lcZKMKiWVJJmEbe690k93baymytzZnauWNHU1+GFDUSVeIqGyGLrcZlsTT5/D5ihrFRdVPU0NXTVKllVk8njkVJFdR7r3ScjczFBCjzF1LoIVaXWoAJZfGDcWIPv3XuuHnT0f7WbIebMbX0g2te349+6912s6sCy8qpF2B4Gpiq8/wCJVgP6kG30Pv3XumbcO3abd0FDSPV1WPydBFPHiZ0FdXYxoJKhqythyGIgLlLs5dqyji81tIljqESMR+690EcFVuPY+R3ztuCKk+83JtLcPWO7KZsVQ5+Gv2pm62hyeYoqM18EphMstBQ1EVZAsVRHoUo8ZZgfde6X2S+Rvcu4aappKvdiVOOn2z2Xt2sx1FtPa1PjZdv9uPSTdjfdUVDQLEz18tDDOKx181NIZnpZIGnmL+690mX7g3vV4zc2MkymLqsXvKu3Zk8lFLtzb1V9u2/Nljr/AHPT7aq56Z5cVSVWHSGkFJjZIYI/FFNEizRpIPde6dKDtbfj4DbO3sfX7WUbFbHS7FEmydnjcW0qvC7No9hYnMbQ3BU0JmirYcZQ0sCyCby+SIVID1BaX37r3RltkY3sDevxo+UmS7d7O2j0f0/8jcPuPq7be9t00G36eer39uzFv1dviq6+2CPsx/CafG060Gdho5aNNNI00eg0U9ZT+690hcl8UfhBTP8AImn2x0bhfmD8ntk4fd3a9XgOx+xuzth7Q35XjLHO712T13j9kVlVjC2Bxy/wuip5MbUMtfLRCfL1HlyFXRe691Urmu/vjn2x052Zt3qz4Qdb/GvJqesN3UW/Ouu2Oyd8S5TIU+5pcfjdvZ/AbopKSnSjq8LW7kmhqGkJSphhvC7aXh917oqnv3XujCdQ5X4zbPxVVWfKXbO+exev+26bcPXNdtLqPfWM2v2dsPb1E9DnKLvWg23lY/FnqamzdItFiKWSpjpfv8fWtOlVJSw0svuvdLnsX+X1uOt2Hke8/hR2ZhPnP8e8Quvctb13jJcJ8hOpGaqanXF9t9AVQGWR4wkjrUY2nNRLDFLVviqWjVZ3917oIvg58w8p8LO+6P5AbX672f23UQbK3f1/U7a3PlZtvy0dPuWroaqpy23d1U1DkpcVk6eXHR00zfYSmWkmq6VxGZvInuvdCNg+ptn9+1/Xvcc+J3LT7t7V3t3P3n8lupdjVuG25gcb1Dub5Gbr25F2D8bpazHV8tFidr1dC+P3ZjMkMpLjqSWgyiMKEZI0PuvdMvXnxBrazFdX7r35uKtoKLclN21B2DsXMbXqthbn2lmdkfFTLfJ/aBw9d99mKysx2XxVNQOavL4LDVKNKpp8fW4+ogyT+691nm+FkVFuDY2ByHeIgoOxt29VdNbZ3inSOXnwlN8jO7OuqPtbrrrTddBR7nnrKLBS4XK4dq/d1BFkZoauplp6bA1sFFNWH3XujWfE/bWyeju+tndzbQzmA3D13F8cdv7O+X/QtTtvcmUrK/bPbn8tuq+W+98fsndO58zW024Tuat2VueZWo63HU+HqFx9KkM+IyN6X3Xui5/IH4/7D+JW8Vm6j7HpO0ti9y7U2l218Xd+fY5Oh3dtr44b3xs9Xh63NvUpStRbhqKlqjb/ANyiCqko8XUVFTS4uXILT+/de6KYAAAALAcADgAD8D37r3XvfuvdCFvT/j2+o/8AxHuS/wDfr7n9+690Hvv3Xuve/de697917r3v3Xuve/de6EDqX/mavWP/AIkTZH/vTUvv3XugvxP/ABasZ/2r6L/3GX37r3Th7917r3v3Xuve/de697917r3v3XuhRx3/ADJXeX/iUetf/eT3Z7917oLvfuvde9+691737r3Xvfuvde9+691737r3TznP+BGM/wDDU2P/AO8Xj/fuvdM3v3Xuve/de697917r3v3Xuve/de6EXq7/AI+XJ/8AiOu4P/fS5v37r3Qde/de697917r3v3Xuve/de697917r3v3Xule//MssN/4lfsr/AN4DYvv3Xukh7917r3v3Xuve/de697917r3v3XuuL/ob/grf717917oRO3P+Zr9nf+JC3p/70lT7917oPffuvde9+691737r3Xvfuvde9+690tds/wDHq9t/+GJtz/3+GzvfuvdS+taLF5HcctFXbYxW88lVYqeLau1MzmdwbfoNw7nNbT/bYn+KbarcfOlXNR/fJiY5KrwSZI0cVRFUwu9NN7r3THvDbTbVz9ZgppJp41o8Lk6U19FVY7InEbnwFLufCx5rFV0UMtLWiiracV1K8dop/IiNJGFkf3Xuk/2bTfe/3f3/AAFJYN0w/wAB3PK9TU1FenY+CpzLXVmVkqVX1ZrGGmyFNKpb7ieDKFmeWnnb37r3QX+T/D/effuvdSqHJV2LrqLKYuqlx+TxlZS5HHV0CwSS0dfQzrU0lSkVUkkT6JFVvHLG8bAaXRkJU+690MGE3Tit+5qPB5XZuGwOVymP3tl4s/suTL0NPLncJtDIbvo8fUbNrWyFMYMjPQjH01LijQrTzVKGFHgRKQe690MW5tmbp3rjem6DamFqc3WRdU4mn+2p5aOGSauzPbGdw2ExFF97JEKivr6uohpcfjqcvVVcziKmhlf0+/de6BncG3cztXLVWDz9CaDJ0ZQTQipo66B1kXXHPR5HGyTUtTC45jqKaaSJxyjsOffuvdMvv3XupUVDWz0lZXwUdVNQ456SPIVsVPNJSUMmQMi0EdZUICkTTmGUQhyC+h9N9Jt7r3Qz9kbuwfeOzUyWb2fBi+3evdhTV2d7Wx1Ukab3wmyRTYHa21cttLGwUdBRUdLgo6eghqP8oqPv4o5o5YaeqqKNvde6KF5P8P8Aeffuvde8n+H+8+/de695P8P959+6917yf4f7z7917o0vxmrs3UU3ZeEyBo36lxdBi947qarpc5U5bB9j5Clqto9az9dyYkiBMzmX81Pk6fKEUNTiMdUzzus+Lobe690NlTV7X2thYty75fKS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nmpKrCUGDlbKvJBToY6xaKeH3XujMdd742D2H2PvHoPM9553uNfl71sevt2dkYvbG/tpYib5F0W8YOz/AI9bmOU7PyeZzW7o4s+sWwoK3M4TarUeGrCZpUjSorH917qrqso6zHVdVj8hSVNBX0NTPR11DW08tJWUVZTSmCppKulnCyRyxurJJG6hlYEEAi3v3Xuo3v3Xuhi7/wD+Zwb2/wCo6h/901N7917oHffuvde9+691737r3Xvfuvde9+690MPVX/Fi7u/8Q9Vf+/F257917oHvfuvde9+691737r3Xvfuvde9+691737r3Qkb4P+/X6cH9Ousr/vPbe6PfuvdBv7917r3v3Xuve/de697917r3v3XunXBf8XvD/wDa1x//ALlp7917p03z/wAfrvD/AMOncH/u2m9+690lvfuvde9+691737r3Xvfuvde9+690LmwTbr3vMf12btO3+w7Swh9+690Efv3Xuve/de697917r3v3Xuve/de697917oZO4TePqe3/AD5fYv8A8de/de6Bv37r3Xvfuvde9+691737r3XvfuvdDD0MdPZuLP8A2b/YH+89e5Ue/de6B737r3Xvfuvde9+691737r3Xvfuvde9+690L2U/5kLsf/wAS92p/7xmzffuvdSet+0cHs7Y/bPX+4dkpuPGdq0exYJs9isxDt3d+3zsXeEW7FxlFlaqhyMM2KyhTTkce9Mparp8ZXLN/uONLV+690LWzvkn11tJclj06FhqNtZTuzqrvZ9tR9l5+Whx+4ett+5LKTbVoP7y0eWRsNV7WzGR2xE08L5BJWjyNRX1i+egn917rFsj5Mbc2fVds0eS673Bv3a3deb2HuLsGk3P2QtLuLM5bY3e2L7XiqZK/F4UYdWqcVSZfA/cRYBKuF83kKpKpqYRY0e6901RfJhshX9kZzfOx6HsLO9obW35tPMz7gygoMTh8ZnOwP9NO0KPA7a21S0ONFLTb3Mmdz1NU0cn8SSSSGkkxFRI1d7917pS5v5JdWbjr/klNkekcvSr8la3sDPbjz1F2ZFPvDb+X3H2ZgO39oYLF1dfgnxkmExeZwtSMhE2KjrckK1J3rKY4+ngf3Xug07l+QWe70TKZffWFxVTvjMb0q91LuamUJ/dXDZHK5/K5XrfaUtQsuUk2/VVGVx1clLnstkpqSsoJqiknifLZ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5RsdU4Onz+Zx+ApsduDdMGJrwk1LFX1UMlQi1EMMzg+eohiqJZUHuvdG93x3N0Vi/jfRr17kcRtjOUmwaai62x2KZcV2Psjs+gx1PRSJLuamgpMhT5NPuq6oq93DRTZJRVvHUzVFQKV/de6n/I7ePx03b03V5PG7n2pvPd7Y/bMHVtZTZOkq+1KONspBLUw7njkH8WpKOOgatOXosxFFEKplIRa9qYn3Xuq0NZ/w/wB59+6917Wf8P8AeffuvdGN+QjkY347/Tn45bNP/r2Z737r3RcGYlSDa1vfuvdf/9XXZ+ZOwN64X5D/ACL3dmNs5bGbbynyN7goqDL1lN4aSqq6nsDMVVPBExNyXjp5nQgWZUJBIsT7r3RTffuvdCl0hx3F1d/4fm1v95zMI9+690Fvv3Xuve/de697917r3v3XuhB6y/4+PJf+I+7b/wB56qzQ9+690H3v3XuuLMq2LG12VR/izGyj37r3XNFeWWGnhjlnqKmQQ01NBFJPU1MxUuIaanhDPI+lWOlFJsCbce/de6G3rruyt68wtRtms2dR7poo85PlKdavOVO3KzF1jrDTV9BVrHQ1nniD0ySLERBLFJ5QZW8iCD3XuggyuUr87lsvncrLFPlc9l8pncrNBEYIJsnma+TJ5CWCBmcxo00rlE1nSLC5t7917o1XxdnlqsL3htrEVe1dk5LLbGwuS3z27vjszc+wts7a6JxG7qWg7C62q6DZ2NrspkY97ZjJ7YxFbBiVkyc9Kk2OooWgyOQ1e690PtNsba2/vjh2j1ftXf8AsHM0G3aKb5R9RV+2Npbo2psdt8dPdfUeF+YfSu09xd2tS70yWUbauS2bvOoAgqKSVcXqigoV8xT3XuqyffuvdDF3/wD8zg3t/wBR1D/7pqb37r3QO+/de697917r3v3Xuve/de697917oYOq/wDix92/+Ifq/wDeew9uD37r3QP+/de697917r3v3Xuve/de697917r3v3XuhI3ub7X6d/w67yw/9i1ug/8AE+/de6Df37r3Xvfuvde9+691737r3XvfuvdOuC/4veG/7WuO/wDctPfuvdOe+Od67wP9d0bg/wDdtN7917pL+/de697917r3v3Xuve/de697917oXNhf8y97y/x2dtP/AN+jhD7917oI/fuvde9+691737r3Xvfuvde9+691737r3Qx9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adqi1SYochHTZKl917pTdq7N6lx2f7I2r8VaHsmTqxcbtXufdc3ded2dRbv2rjcdt2GnxPX88tLULTVB2xXbpyeLV0rq2uyNVVmFGqxSRVdX7r3RZvfuvde9+691737r3XvfuvdCDvP/AI9zqT/Dr7Jf+/V3MffuvdB97917r3v3Xuve/de697917r3v3XuhA6mNu1esj/38PZP/AL01L7917oL8Tzi8af8Aq30f/uOvv3XunD37r3Q57NxfWsuzlqc3Jto5EyzNlhnY6GTLPG9dULUikrmYVlKsFKlK1GtCAXdmaE/diUn3XugJjN40P7wuim1T4RUD0/8AKQKf9vX/AKvx+m99PFvfuvdc/fuvde9+690KGO/5ktvAf9/Q63/95Pdfv3Xugv8Afuvde9+691737r3Xvfuvde9+691737r3Txm/8/jP/DV2R/7xlB7917pn9+691737r3Xvfuvde9+691737r3QidX/APHy5P8A8R32/wD7z1Nmx7917oO/fuvde9+691737r3Xvfuvde9+691737r3Svc/8Yzww/p2r2Qf9vsPY3/FPfuvdJD37r3Xvfuvde9+691737r3XvfuvdcW4Vj/ALSf969+690IfbfPavZp/wC/g7z/APejqffuvdB97917r3v3Xuve/de697917r3v3Xulrto/79Xtof12Ltz/AHju7Z/v3XukV7917r3v3XuvXIvY/qVlb/FXGllP+BBII9+6910yq6sjqGRgVZWAZWVhZlZTwQR9R7917pT56TEdiyGv3NXrgN9R42SA75NHPWY3edZTSx/w9uz6LGxSVklZ4PLA+5aGKetkCw/e0mRe9RH7r3QUZ/AZja+WnweepYaXIQRxVKGkyONzOMyOPqGZaPL4TN4aWejrqKfQ/hqqWZ0Yq6ErIjovuvdKftqskx+N6ayEIgM1B8ZdnVsK1UMdTStLR9o75qIlqaab0SRllAeNxZlup4Pv3Xulpvx6mTfu/GrKeekqf78bwWWmqZa+eohaPcdSgSeoykk1TI4AGqSoleVj6pHZiWPuvdJX37r3XvfuvdG9zvXXXNH8GevO2aXalTD2pnvkXvrrrK7ubc+TmoaraW1dmUe6aakXaTRiliqJZc3TwGpSW6x0KnQ71UjRe690UL37r3R/fjj178WNx9FZ/LfImLcuyKvcHbv+i7bvfm3s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ayBnFFjqJBJU1JpqZ6ycRISL6Io3c8/QH37r3Ri/lBt7P7Zh+OuO3Jhq/B17/GvZtTFSZGNIp5aQ703HSx1SxozEK0kUigNZgVIKj37r3RWT9D/rH/evfuvdf//W1pvlgAvym+SygBQvyA7lAUAKFA7GyQACjgAD6D37r3QAe/de6FDpL/mcPV//AIfm1v8A3cw+/de6C/37r3Xvfuvde9+691737r3QgdZ/8fHkv/Ef9s/++rzPv3Xug/8Afuvde9+690MvR+/MBsDc2ZrdwNUY+LMbf/hVJuWkoanJz4N48pBX1dFNQUCPVGmyEcYWaWmSSRJIYF8Rikmki917pr7m3dg98b+qNwbeaeox/wDA8NipcpVUc+Pqc9XY5pzJl5KSqCTqvhlp6OE1UazmKnTyKgCRR+690F3v3XulFtCsxeO3btfI5xag4Wiz+LmzP2kWJqKr+CtVrBm0gps9Q5ShmL0bzxtT12NqqaZWaGop54ZHib3Xuj75v5FVHWG4PipnavN7A39u7pXadP2PkaPrKagxPXklf2H2rWT7p6Bx2xdj0eO2Ft+jymw5KGr3Xk8dtipzE+WllosrWVLwrT433XuinfIbrfb3U/cO8dm7Mzs+6NghsHuvrTcla0pyef6s7E21RdhdX5jMpPRY546+p2/lMbNXxNQU5jqGlTwx6dI917qP35c9u71v9fvaH/3T03v3Xugf9+691737r3Xvfuvde9+691737r3Qv9Wf8WPuv/xEFV/78Lbvv3Xugg9+691737r3Xvfuvde9+691737r3XvfuvdCNvb/AI9fp/8A8R7lbf8Ao2Nz+/de6Dn37r3Xvfuvde9+691737r3XvfuvdOmD/4vWH/7WmP/APctPfuvdOm9/wDj9N3/APh0Z/8A920vv3Xukv7917r3v3Xuve/de697917r3v3XuhZ2H/x4Hd//AIZ21P8A35+E9+690E3v3Xuve/de697917r3v3Xuve/de697917oYO3f811R/wCIZ2P/APHXv3Xugf8Afuvde9+691737r3Xvfuvde9+690L3RX/ADMvF/8Aag3/AG/1/wDR9lLe/de6CH37r3Xvfuvde9+691737r3Xvfuvde9+690LeT/5kRsj+n+lvtL/AN47Z/v3Xugk9+691737r3Xvfuvde9+691737r3XvfuvdL3tX/mafZ3/AIkXfP8A71FX7917pBe/de697917r3v3Xuve/de697917pYbX/4tO/8A/wAM+C//AKGuG9+6902bWkq4t1bUkx+Zott167p22aDcuSqVocbtmuObgFJuXJVzKwgp8fJprJ59LeNI2cAlbe/de6RHZNDTYfsHdeJosHXbZhpciRFg8lg5Ns1ELRwpTZKto9vSVFYKWhqa5KqegjhrKiFYGjEMzRhQPde6QFTQUdY8MlXRU1VJTljBJPTRSvDqILCJ3UlblVuAebC/09+691Mu/wDj/tvfuvdWV/y++0OwNnVI6q2Vvv5H9HZH5Kd47B64273d1J051b2Z1/Q7mj2zW4BcXvat7QWCSmlwS7gp87W/3cyEdZT4uWprZk/apX9+691XNm8KNsZ/ce1oM5gd0QbU3LuPasG6tp1dTkdqbrg21m6jBwbq2rkK1VmqMXkkpxXY6eVQ8lPLG7csffuvdLndhb/RH8fLXv8Axn5LX4/P95tpX9+691G6i6nyHffbHWvR1Bk4sHP2zvLE7IqM7PCs6YHC5Nmm3PnkpXeITy0OLiraunpRIrVEsaQIdcij37r3VpvzI3HiN3fJ7s2rw1KkWL2VNhep8VII6qlWZOtcSm28tVLh6iGCGgl/iC1tNNDQwrTP4hJA0kMiSN7r3Rbffuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdLLAG2xO1bf8r/AFB/tv4puD37r3SN9+690droPZGN2/sGn39PX1eQ3F2lj9wY6loKWspUwO29kbX7Ihx8EmQpJaA1FRma7Nbbr2vDkVgpqFYNUUlRUN4Pde6Gb37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Trhb/wAQNv8AnVbkv/rf3YrffuvdNXv3Xuve/de697917r3v3Xuve/de697917r3v3XuswqKhV0CeYILAIJXC8fT0g29+690TT5z4F85tDrzsOYefKbZy9X1zlMnUVayVtXgs3Ry7n2VjFpzGZHioJ6LcLmZ5tKfdxRBQNPv3Xuq1Pfuvde9+691737r3XvfuvdDB3z/AMzRzn/aq2Z/tv7j423v3Xugf9+691737r3Xvfuvde9+691737r3Qw9R3+y7mt/z5LcN/wDW/vrt737r3QPe/de697917r3v3Xuve/de697917r3v3XuhV33/wAeN0l/4ZG5f/fp5/37r3QVe/de697917r3v3Xuve/de697917pc9c/8fjt/wD7XOJ/92EfsHc//wDKn7j/AM80/wD1abrJH7ov/iR3Jn/S62v/ALToeoG8/wDj4cl/1GVX/W9vb/JX/KsWX/NGL/ji9FP3nP8Ap+nNH/Szv/8AtKl6SvsVdQJ1737r3Xvfuvde9+691737r3S/x3/MrN4/+JB60/8Aeb3b7917pAe/de697917r3v3Xuve/de697917r3v3XulJuz/AIvEX/ht7H/94bG+/de6Tfv3Xuve/de697917q/j+Xbl9oZf4N9z7QO4Mpitx1m9sLtDM1W8cltvHbAwmJoNwJ2Vg5Ns4372bJ1cytPWvNLJBS06T1LiFGkWeap917owtJ1r8cWoop8t8p5sPX6B93jKbozfe41pZhJ4mWLKYeQw1Cn9QeEFdJvcgE+/de6fdv8AVnx6pc9QVY+WVHWRE1xpKWk6J7CORmC0UpCVKGZvDaPW9mX1MAiglh7917qLhtr/AB0wcNX/AAf5h5OimydHjKWfIRfF7tdMnTJjM/Q7qx9TiKxm10c8WQx1FULKtyPGFYEE+/de64dstu/rB9s/wXdWyd59e9m7V3Fu7aG79rbHoNt4PNQbzzGPyG+ceuAmkqJKKqgq8fjpXhMn7KzaFETtPBD7r3QYY7uDe+JrKrIYyTAUOQyO6n3jl66m27j4qnN5U5uXctPBmbDx1FLTZCV6qliaMNGbRiQwjxe/de6z4HufsTb0eGo8NXYhYcPRbWxGJo59r4LILGNqx19BgJUWrgctUiDK1tI8xOqSOWx9ao6+690GO5/kLvfbh2zt3aOX2xFQ7VokgrMNR7V2zlNqpn8ZuPHZvF5iSjrYJopM1TVOGo6irradlR5r+RXn87v7r3RYaqrmrKurrZvGJq2rqq2cRRrFF56yoapn8US8IutzpQcAcDge/de6wa2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de6APvyFhmOjMjjsZRy5ylrt/5evytfLPiMe+1djvjtzyY+t3DRSwSwfwlFymTqJopUlpoa6CSFzLJEI/de6Jn30kEHenc8FBOavHU/aO96bF1pjMbZDE02fmgxORkhZVMb1FMsU7xFVKM5QqCth7r3QRzVCU6eSeWOCPUieSZkjTVI4SNdT2F2YgAfkmw9+691DTM4yRI5UymPeOaaKnikSspmSWeouYII3DWZ3sdCjk2Ngbe/de6yHKUKzT07V9Gs9L4jUwGpgE1P52VIPPGTqTWzoE1AXLAD6j37r3XcOSoqiXwU9dSTz+Jp/DDUQSy+FJPC03jQk6Q/pLWtfj6+/de6x/xfHfbxVf8SoPtZ5fBBU/d03280+op4YptWlnuCNIN7gj8e/de6zJX0skkcMdXTPNL9x4okmhaST7STxVXjQG58b+mSw9J4Nj7917pYdc0GL3bvfauHqqulmw9Xl6mTKMKmEU1TS7cxdTuSvwL1YDrFLkVomxcLFTpnqI7qfofde6MdutN/bRoJd0fxul+z772pLV71jxO3qPGY3Vm9z03YEu0moaymVYPRFgcwk+Pgp4087UVNJJHBU6/de6Bj37r3Xvfuvde9+691737r3Qgby/49zqb/xH+S/9+pub37r3Qf8Av3Xuve/de697917r3v3Xuve/de6X3VH/ADNPrP8A8SFsr/3paX37r3QY4n/i1Yz/ALV9F/7jL7917pw9+6910VBIJAJW5UkAlbixsfxx7917rv37r3Xvfuvde9+690J+O/5kxvD/AMSf1v8A+8pur37r3QYe/de697917r3v3Xuve/de697917r3v3XunfNf5/G/+Gtsr/3jqD37r3TR7917r3v3Xuve/de697917r3v3XurSfj/ANP9Y9hVHRm3Nw1nX2yMTvDqrEx723rjNw4ui3ZSZXcO++ztib0p4pqiorljyybQlwu5awZSmTGUmOxEr1K0dVWUElT7r3QZde9Z9D7jwXSOdmpMPDkM7vP44HOYvNdvbSifAbJ3Z332ns7sfJb+jnjxxyNIYMbs6kq5Isdj5cdDPjp5poYKq9f7r3TL1R1d0PWYnbU+6q6omo9/9ZbGx+fg3N2TsrZm99j77fv3pnbO9Nz4SCTHV2LocPVUO491x7YzL1+YSuoIcnJXUeLkw1Y4917qZ0P091PuGu7m6339mNn2pe5Ooevsd2HU702jt7ceB2pLuzP0u7N09f8A8bzkOFqxVJQUMdXNMaykjhljH3NMsyVR917rJtrqb4+0VTuzNy5kZdP9B1VunD7Qzu/du5WDZeW3f8IMl2hQ53c2cw9DimzUlNvmWPA4/H4+LHzY7IUtPBkzNJV0kVZ7r3Sgpfjh0dX9k7uxO6974vb22Zeytg0Oyc1s3uPqfKYzK7cru+tp9V9n7Mnx0iVS0OYoMTn6/ceNyTZOenTHURyNdQx0EiTv7r3RQOy9rbR29jOosxtPIzzHsLqHBb63Ht+s3Dgt0ZDZu5pty5jamQwdblMFBRhDVJiYs3DQ1dDBVUUFfFSSmr8C5Cs917pMt/zLXD/+JV7H/wDeC2N7917pJe/de697917r3v3Xuve/de697917ri/6G/4K3+9e/de6ELtn/manZn/iQN5f+9HU+/de6D/37r3Xvfuvde9+691737r3XvfuvdLLbl/7sdr/ANP7jbdv/wCjs2fb37r3SN9+691737r3XvfuvdPG3szLt3PYXcEOPwuWlwmTo8nHityYih3Bt7JNRyiX7HN4PJpJT1dLLbTNBKhVlJHBsR7r3TJGnjjjj1O/jRU1yMXkfSunVI5+rH6k/k+/de6E/Ydd1/msltTaXcdFJVbBo924zJpnqNcr/GtpUtVkqb+9VDr2/U0WQqsHl6WAU+Yx9JWQ1MRCZHFyw5CDTVe690rd34vpepoOgJtz7f3vtykrOocHQboyGFz1Hub+5uJw/ae4JYINl4PNNSDKweOTIVFZFncmJ5VqIKCGtpnx8uYy3uvdB5unH1FVuncQyOZ2dR7rqt05uPI7TO99sT5Shyj1klRW49q1Z46KWohlMlO9LHP9yJEZTToRb37r3U+q61y1TUVkexMniu36TD0FbV7ly3VdHu3PY3bFRiSf45R5tMvisfVpDSqUlXLpSPiquNjJj6+rSOZovde6D+eCemkMNTDLTzBIpDFPG8UgSeJaiBykgBs8bK6G3KkEcEH37r3R1twZjbc/8vHrPb0W8tmS7vxvyq7H3HW7Bj3DTyb8pttbi68xeCxu5ajbaKXiofu8JVwySyyK37tI8aSRzl4/de6JJ7917o0MOQwsPwqyeMfcu2TuOv8AlPgaun2YuZgben8ExXUWTjrd1y7dC+RMSKisp6JK1ns9SzRIp8cjL7r3TBvLM5fMfFzojF1e9Mdl4NjdtfJGkwmxqndeMrc7s7Bb3wOwMtRVdJtkTy12PxOTy2Mz06n7WOA1YqKgKZKwvN7r3TLuyj2n2JuTM5/au9MThnyFVXvi9n77xdJsN8VgsZTxU+2Nt4rcmMeq2/KlBjIftXr8tXYlqg08bLDJU1RiX3Xujr4rbEtT/LnToOu3J15tbtnNfNqbu7CbU352d1519HnOsKPoak6/qt14Tcm9cnQYmshXJyrCI6aveRkvMiNEC/v3Xugh352VtPrj4dYX4o7X3rh+xN57t75m767W3Ds6LKpszZFHithx7J2t1DR5fO0MC7hrnlZ81k81hyMfTyRx0NJUZOMvVL7r3RHvfuvdHl2R2ltXtj4v4b4y7131S9Z9gdO9nZPtT49773WmQquv89jt4wQY/e3S2ercRR1D7cqzXAblw+fyMVRi55RU0GRlxKGCsm917o1vVPY2P2h11291tshet8z3x8xuzul/jVvzauM3puDdvU2wdrbqrd0/d5ej3jtiqooq85errKuAY/FbjytFTUDxNV5aaVpcYvuvdVCbhxD7e3BntvyVUFfJgc1lsK9fSpLHS1z4qvkoGraRKgCQRTGPyRhwG0kagDce/de6PV0z8gdwYbofuHL7n3ntbJV+yKP4u9fbN2DnazB0O5N47E2tvnclc2N25jVpJKiqlwVNkXj/AI2b1GOppKdUd0SONPde6DbNdjZXfPxf7Px+Q3Ht7E42D5LdMbn2f1FSbioKOn29j6bq3fmC3nuHZOya+qNYIppq7b8ecyUMcsuQqmSprpZZ4pZffuvdAj1RTZfJbsqcDhYaGprNybM7GwggySu9IzVGwMlUUspRPrNDURQVFLcEedIjxa4917o4PxkkwOS+Gnze69m3t1ngt79pZ34yw9fba3r2Js7YuRz7dcb0ym5N41lHU7zqqGkhhpqGvidJ6iriWZhLBCXqAsMnuvdFl7U6mx3WG2tjVWT7V6935v7dyZWpye0ett4Y3sOj632xt9afC4Gn3fvPb71OJkyORkE4o8Zi6+daOio45JnIrYIoPde6A737r3RsettjRU1ftLfXQPyn2t1fu6DZsEm+6vcm+t6dF786wzDqMNumlod1R0lMNxY+tQNX0abOrMlkGpnekqMetREgqvde6b/mF3PjO+u7q/sDH5FNz1n9yestqbn7GG3xtOXtzeuytgY/a+8O1W2saekfHQ5nIUs81BST0lPOlEKb7ilo5zJSQe690V4wvUfsRaPJP+zH5JoaePyS/tp5KipZI41uRd5HVVHLMACffuvdWK/PXcHUXaXzz7Ozk3Z9AvV+68V1pR4/tjr6npu0MJjq3EdK4PapysuGwE6VVZQ02YoJqXIwwaK2OAPVU9NUlYKeq917oiG78rhc9ujM5La22abaO3auvZNvbZpq2trjisPABSYqmrsplp5pKisaFI3rqt5QktQ0sqpDGyxp7r3V5+dzmd+D7fF4bexG0d25f41bT7Bx1Ri66l2DuSi3R2Vl+itw929u0uI7IxuIXPY8QbnqazDxJjs/FTpQUcUeQpazTIze691U/wDMPa3X20vkx3HQ9S7o2fvDq7K7yyO7ev8AMbDr8XXbZptsbyYbnods0CYl3Wn/AII1U+FaCUJIPtdZXQ6M3uvdFpZVYFWAZWBVlYAhgRYgg/Ue/de6sn+H/dc+6v4r1L2HuHN5LNU2CkyXU2WydXj61Fg2xQ1GSzmwMjWZBoq0wnHxyVOIcT1JgNKKGOnjp5I3p/de6OV7917qTRG1fjz9LZCguf6D7xL+/de6R/yfY/7MF2hY8fxHbn9P+eHxYP8AvPv3XugI1t/X/eB7917r2tv6/wC8D37r3Qp4zsygptudNbUy2zKjNYfqHfm9t+1FOu9RjqXftTvPOYvPLisjjZcLVwUKUMmKjhjqHWvM0M86GKIMdXuvdKaLvKHM7cTE9nbJyXZG56bZ3yG68xXZCdh02zty4fZXyT29/At24hqGm23kIsm2Lmlr8jh2y81RHE9ZJTxRU8KIffuvdF02htrO7P63xPWe0E25viXZ3cUvyB6ZrpdzT9UbzxPccmFxe2Uw+9aTOU2UwOZwUtJhsUaajo83hax6lJv9yVOJIoW917oNsH3/ANJYjG716lzOxe1Ieq+wOnOnNg5vZW68rgatOn+5uksr46Ldu2lxlHQZRqOVv4pPlxQzYeqmqczmUqaCrU0qR+690pNq9MdDblzNLLs7C4Hf+NxkWIkydDtff+6MzTtiMluNEp9x57BVs67hoBN54cc6V4pBDrjgmp4a1wT7r3Qp752HtHF9gbo7O3dsHbm3dxT9iby3hJv/ALBzm4cLjsxuiLds2UrsvHiN15JMTkp3qKinl/htNQTh5JIyKdlkKt7r3RZd/wDyfxVHVbgwPX21ttbupK/D5PC1fZO/KPdlbk8pk8wlTR5vN7b2dUZClxQx0sE4hpYN0YavqJ9LVdVDSvOMdRe690Ssccf0/qb/AO8n37r3XRAYEHkEEEf1B4Pv3XurAt99e0fyO2Dt3tzaj1uQ7Zqdn7WxO4Y465a1d/bp2BteDaO5cBW4enE32G56imx1LlMNRUzwLkqeUaKVq2uph7917ogsVLVT1kOPgpqifIVFbFjaeghgllrZ8jPUijgx8FJGDI87zMIkhVS7OQgBY29+690KM+3YtlbQ3XTbpzNFQbt3DRbYpcRsWgSPMZ6lp5MrSbkqMnvKopZlpsIsdNCYf4bUPJlRUuiVFBSwXqD7r3QT+/de6ON0t8dtld0Yvr7buK3eMD2VujM4GPeB3TnX21jtlbLz/deM62PYu28HnMBDhd0Yyix2RSpnp4uwsdlpa9K2kgxJp8b95X+691J290JsLcfWvY/YU2L7E2jVbF273Jhptlbh3Zhptz0PYvWFXtOtGcy1PJtihf8AhFNBuR8Rn8MYIKqhrxjpTkmGT+ypPde6ZoPj3t6k23tSmzeR3LNvDsT45dwd/wC3s5g2x77V2lWdO1W82zHW+6tt5Gmjq6uqdNkVVFkK+PL0TYytr1jbH1i48/xL3Xuhm3F8Xfj3mt49h7Z6s3r2WtRtHuLa2xqXA7y/g8251oqPqjsncm9+vbDEYekym8sxn+vUpdmLQSx0c0GbxVLUg5Q11PQ+690D+G6o6KzfXGQ7Er9w782Vi8xQ7Uw2FqazJYjev+jPdVfuXL4HI7y7Cw2GwtBkM/tCu/hiCkqNvwQZGlmGUgho81PhvFkPde6SPyi2Vhetezq3rnbdfVZXbmwMn2lsrb2TrqujyFbkMFtb5B7zweHrK3IY+Gmp6iaSngjeWeCmhjkYl0ijVgi+690XH37r3Xvfuvde9+691737r3XvfuvdLLrX/mafUf8A4mDqb/34uM9+690jffuvde9+691737r3Xvfuvde9+691737r3S+xn/Mrt7/+H91b/wC89vD37r3S06m7m/0V4HdOPocFVybhz+7OtNyYreuJzdHiM/tOm69fMV9RjMOuQxuRgY5OurcXNUyTRNH4aBqaSCaOrcxe690L25d14zf/AFzld0H470VNT9c57I74z+5uvMzjdm9Wba3B3ftTbm0tk4+s65nxNUFiSr2Z/EVxNJlPt6uefMSR09FSTLT0fuvdOnaHcW44KLdW4M/1XtGs2b8lNr1Oar46DfdLvPYVN3WNiYmlruytmzbIqBFgt0YePJTTZDbOVqJ6ujpdxVtDXRLSZCm0+690na75W/Z7jylX1/tTcWwtn5jHdaxZDZ8G/qTcIyFZ1R0/VdKbTwuWyGZwTQVm1jhMrnaKv21U491rKWvenqaqQU9K8XuvdAd2L2bUb8oNn4OmweK2rtnZdNuj+BbVwCVMW38LVb03jW70zVLgafIS1NVDQwSVkWOoIautqpkpKSnEtRLLrc+690F3v3Xuve/de697917r3v3Xuve/de6ML35DDDjfj8IYYofJ8etozSeKJI/JNJuzOmSaTQBqdj+pjyfyffuvdF4e+lrfW3v3Xuv/19ab5YG/ym+Sx/r8ge5v/fjZL37r3QAe/de6FDpPjuDrA/8AZ+bW/wDdzD7917oL/fuvde9+691737r3XvfuvdL/AK1/4+LI/wDhgdsf++tzPv3XukB7917r3v3Xuve/de697917r3v3XuumZVUsxCqoLMzEBVUC5JJ+gHv3XuhApuqO0KvsGk6mi6530vaNbW0mOp+uqjaedpN7tW1uPXL09PJtergStjJo3WrYyQqEgvM5WMFh7r3Rl89S5fu/4Z7U3vSYynq878OtyN1bvnLU9LlmyNR0r3Pm6jdnTeQy2Sr6yeCRcRucbrxBSnp6cRwZDFRKkmiWQe690BHff/M3d6f9RtD/AO6em9+690EHv3Xuve/de697917r3v3Xuve/de6G3pmnx9VSdyQZbKNhMZ/oaz1VXZVMXVZt6SHGbrwuUCRYqidJp3qHgWljWNiytKHCSafG3uvdICOLqhoq/X2ZkoqqinjjWmbr3LlKmARu1dVR5BKo00awMFRlnmRi7FANalffuvdYIpOo3+yZuy8yizy06Vi/6Ns0ZsZHPOql6iI1Q8rRxMZpI6cyMiizBdcev3XusxTqYThB2blDSSpI9HXjrnOmOsGsR0qxUiVDVKmdiPF5IVDC7AlLM3uvdYrdViKpduxsoslM9jT/ANwsgzSQ6QDURVCVhpyNZWNF82t2NkVjx7917rPVYTbVVgqnObU3VPn48bJjFy1PXbayO3XpFyhmjiSnlq3lWeWN40EiLZArkrIzI6D3Xukh7917oRd7G+2OoB/Tr3K/7z2xuc+/de6Dr37r3Xvfuvde9+691737r3XvfuvdOmD/AOL1h/8AtaY//wBy09+690572/4/Pd3/AIc+f/8AdrL7917pMe/de697917r3v3Xuve/de697917oWdif8eB3f8A47O2r/78/Cn37r3QTe/de697917r3v3Xuve/de697917r3v3Xuhf7c/zXVP/AIhrZH+91Xv3Xugg9+691737r3Xvfuvde9+691737r3Qu9F8dl4s/wDVg37/AO+/ynv3Xugi9+691737r3Xvfuvde9+691737r3XvfuvdC3kz/xgjZI/p232if8Ab7O2f/xT37r3QSe/de697917r3v3Xuve/de697917r3v3Xul52rz2l2af+/ib4/96iq9+690g/fuvde9+691737r3Xvfuvde9+690sNsG2J39/js+nH/AK+2G9+690j/AH7r3Shps+JMRDtjceOg3VtKCaKSmwtfMaeu2+DlGyeRqdhbiEctRgayqM1SJ5qNGgqGlJr6SujXwn3Xugx3Vt6o2jnZcHNkaHMwtjsTnMRmaCamkp8zgM7SCrxle0VLJIIKhGE1DkaRmLUtfTVdKSxgLH3Xuk/rP+H+8+/de6UVDvTe2K23uDZmI3zvnDbK3a8Eu7dkYXeu6cPsrdstLEYKeXde0MbVxY3JukbGNWrqWUhPSDp49+690m1IRVRFRUVQqqq6VVVFlVVHAAH0Hv3XuhL3W5HUnx+/7XPyWP8At9y7R/4p7917qx/4ydebd+Onxi2D80tx9M7f7S7e7S7qrNn9MSdwYvcx676cxOzaXKZzbXYWD21jKvHNmslnZ8Dk6qkyazRtBFTRpj6yjZat6z3Xugozudzm6s/uDde58pPnNzbrz+a3TuTM1MNJTz5bcG4snLmczkZKbHxw08RmqZpJPFBEkaX0oiqAB7r3TX7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6Eyg6uydX03vLumpz2DxeL2pnOsMRRbSq/O+690UPauTymI2/uqihQhKXGvNh8gKSaoBNatPUSQhYo4ZKn3XumPBNbY3ag/rX9Pj/AG+Wz/8AxT37r3SJqFlennSB/HM0Mqwyf8c5WQiN+b/Q2P09+691ZviavB121tjZXaVJHQ7Py2ydvVW2qGHGpi4calJTthtz4fwQs8b1FDn6XMUWRqI5ZfNWxVMryySO7t7r3UrWf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+69064WQ/fngf8Wrcf+87arB7917pq1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvdB/wBwbZn3t032ztynZlnj2Hmd5Q6akUy/8YuRez64SalbWGo8RVR+MWLarA/2W917qlT37r3Xvfuvde9+691737r3Qv8AfBv2hnP+1Vswf7bY+NHv3Xugg9+691737r3Xvfuvde9+691737r3Qw9Rm1F3N/j0luEf+vrt737r3QPe/de697917r3v3Xuve/de697917pabF2wN2Z2kxLTLAtRIEMjDVpUKXchbi5ABsCQCeCR9fYW5x5i/qtsM+8+GZjEBRAQuoswVRU1AFSKmhoM0PU8/du9mj78+7G1+2xvV25L93D3Lo0ohjiikmlfw1KtIwjjbSgZdbUXUtagxu7Nsdfybe62x+Rz8NBT4na2XpcZVfbS1DZanqN95evqKxoon/yfxzyy03he7HxeW+mVQsff119x2jV05dJqD/xNg9SP4f8AP1mCPux/cuiu5rW595FUxsoFeWd1FaorGlJScEkGoXNQARkoX+5vVP8Az2UX/ntqv+jvdf66e5P/AEzp/wCy2D/N09/wMn3Jf/CzR/8Ajtbt/wBbOvf3N6pP03lEfqP+LbVfjg/2vfv66e5P/TOn/stg/wA3Xv8AgZPuS/8AhZo//Ha3b/rZ17+5vVP/AD2UX/ntqv8Ao737+unuT/0zp/7LYP8AN17/AIGT7kv/AIWaP/x2t2/62de/ub1T/wA9lF/57ar/AKO9+/rp7k/9M6f+y2D/ADde/wCBk+5L/wCFmj/8drdv+tnXZ2Z1UDY7xjBsDY4yqBsw1Kf1fkEEe/f109yf+mdP/ZbB/m69/wADJ9yX/wALNH/47W7f9bOpFHjur9r1VPm6fda1MuOqIK2OmjxlR5ahqSUVCwRl3VQzldILMACbnj2X7rvfuNzDt82zSbD4IuUeIyNdwlU1qV1EKpYha1IUEny6GHIPth9y/wBnucdt9y7P3Y/ecmyXVvfLaRcu7lHLcm1mScQRyTSrCjy6NCtKyopNWIHQC5vKRZfKVldCpSOeomlRSdRUSSFwNVhe1/rb3MXL23ybXs1tYSkFoo0QkcCVUAkf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9+x0/wCr/mnuV/P/AH9fc3v3Xug51/7V/wAne/de69q/2r/effuvdd3P9T/tz7917r1z/U/7c+/de69c/wBT/tz7917p0wZb+N4exN/4pj/6n/lLT37r3TnvZj/fPd3J/wCPnz/5/wCrrL7917pMXP8AU/7c+/de671MPz/xP+9+/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v8AvA9+690LGxHb+4Hd3P8AzB+1fwP+fnYX37r3QT62/r/vA9+6917W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917oYe3WIj6qAP/NGtj/0/6avfuvdA9rb+v+8D37r3Xtbf1/3ge/de69rb+v8AvA9+6917W39f94Hv3Xuva2/r/vA9+690LvRbt/pKxnP/AC4N/fgf8+/ynv3Xugi1t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v8AvA9+6917W39f94Hv3Xuva2/r/vA9+690LWTdv9BOyuf+atdofgf88dtD37r3QS62/r/vA9+6917W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917pe9qs3+lLszn/moe9/wP+enqvfuvdILW39f94Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917pYbYZv4Tv7n/mD4PwP+e1w/v3Xukfrb+v+8D37r3Xtbf1/3ge/de6UU9FV9gYPCbQp2Vt1bfrMmdimepMcWYps6UqcjsGWWsnWngaorIlqcNIqIBWz1ENQxjrFmpfde6AtZGZQbSIT9UlieGVD+UlhmCujA8MjqGBuCARb37r3XLW39f8AeB7917r2tv6/7wPfuvdCbu0kdR/H0/k5j5J/+9LtL37r3VjfRdRTfJb4fUOzNu0VQO8vg/Hm5YNp4x4pZ+0vj72rvCbcdbnMNgkq2qaqr2pWxVj186UbtEaiKBbDLQiH3XugRp6qKrp4KqlniqaWqhiqKaogdJYKinnQSwzwypdWR1IZWBsQQR7917rNrb+v+8D37r3Xtbf1/wB4Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917rFMgqIZYJC3jmje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00jcLHErSyNxc6US5P8AsB7917ovnyB79ounMbWbb2rk6Ss7grGqcd4qKpiqf9FkSKIq3M5ySEOiZ0Fnp8bjA4nopketrfA0FJT13uvdVNElizMSzMzMzE3LMx1MzE/Uk8k+/de669+691737r3Xvfuvde9+690L3exv2fnPz/uL2b/vGyMcPfuvdBD7917r3v3Xuve/de697917r3v3Xuhg6l/4A9yj/vyuf/8AezwHv3Xugf8Afuvde9+691737r3Xvfuvde9+691xZFcWYXHv3XuhF3xjaNdk9NOIxqm2ZuN5Ppyw7OzkYJ4/oB7917oL/wCH0v8AxzH+2H/FPfuvde/h9L/xzH+2H/FPfuvde/h9L/xzH+2H/FPfuvde/h9L/wAcx/th/wAU9+6917+H0v8AxzH+2H/FPfuvdL7rKjp4967dZEAYZrE/0/5X09g/n7/lUNx/55p/+rTdZH/dJNPvFcm/9Lra/wDtOh6xb1fXuPJmwH+WVPAFgP3jwPajkxdHLNkta/oxf8cXon+8vP8AUe+XM8ukLXc7/A4D/GpeFekn7FHUEde9+691737r3Xvfuvde9+690vsd/wAyu3iP+z+62/8Aed3X7917pA+/de697917r3v3Xuve/de697917r3v3XulTvGRZczTskMcIXa2woysRch2i2HjY3mfWT6nILNawueAPfuvdJb37r3Xvfuvde9+691737r3Vm3w87Ig3LsOu6wyNREm4OvHq8zteJmqfLldh5vISV2epYmlvCr4fLTmp8Sv5Z4sm7pF4qCol9+690cvbbr/AB7GWZf85Vfkf86+b37r3TBE6+KO7Lfxp+R/qffuvdZNaf6pf+Sh7917r2tP9Uv/ACUPfuvde1p/ql/5KHv3Xuva0/1S/wDJQ9+691OxmayO38nQZ7CVooMxh6pK/HVY0usVRCCNE8THTJDIpaKohf0yRM8bgqxHv3XuoHytweNpN8bS3vjsdFhR2vsLGb0zGKWJ6Z491tVSR52velkAMRqYpaF5NeqSWcT1ErNJM59+690V2lmSvlq4MfryM9BR1uRyEGNjkyE2PxuMj82UydfFRh2gpqVPXU1EoWOJfVIyrz7917rICCAQQQQCCDcEHkEEe/de679+691737r3RwfgH4T8vun/AC31L/f+SCxkBEy9a5cav2/xpLA6vTzzzb37r3RLZzUHFVDVYK1Zoqg1alVQrVeFjUAonpFnvwOB9Bx7917pe78N967rt/zvsl/7kH37r3ST9+690q9ib83X1fvTbHYGyayupty7XzmJydDR0WQyuPi3IlJlIauXZ2YGGZZ6mgy3jWiq6MB/Kj2CM4S3uvdGq+bGb3h0tumTtPa+5Nz7MqN/bXxvykwWyt51uczOR2VuuoacdjdQdi7QqVFWm3M1PVuv28IptFfDDNTyU8eHZj7r3VJ/zu2HtHrj5b9y4Hr6qoshsHLZPAb52ZmMXR0mPw+fxe9drUeYzebwlFQEwJSSZ85qGIwBYmMTPCixMg9+690Ur37r3Xvfuvde9+690IPVcOeze9ItlbU6/wBx9rZ3euMbb39w9lDIf3yrqWbLUmUosjhKuhpq6KianyFFRPJW5KgnoVjDpUKmtZovde6H75D9Cbs+O2+qLZe8EoKbI5fauD3jDiKfcGC3FlNtwZ0SrLtjcddtyWailraCeGWBqyikalrIxHVwFFmaCD3XugI9+691737r3XvfuvdK/d6OtN1kXjZFk6mheNmVlEyDuTeyGRC3BAZWS44upH1B9+690yUedz2OppaLG5vJ4+jqGmeanpJxHeSenFNJLTVBUzUrlQt5KSSJyVUliVW3uvdNKqqKqIoREUKiqAqqqiyqoH0AHAHv3XuuXv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XuhNx//Mm93f8AiTeuv/eV3T7917oMvfuvde9+691737r3Xvfuvde9+691737r3T3nmV6jGFY0jA2pshSqFiCybNoFaQ6ifUx9Tfi549+690ye/de697917r3v3XulNnN67y3PQYLF7k3bubcOM2vh8dt7bWOzmeymWodvYDDrKmIwmEpK+WSOkpKRZ5lpqaBVjiV3VFUMQfde6TPv3XuhB6y43Hkv/Efdtf7z1Vmh7917oPvfuvde9+691737r3Xvfuvde9+691737r3Stc/8Y2ww/p2j2L/vOxdke/de6SXv3Xuve/de697917r3v3XuhR616d312vlaXDbSxUs9flcT2TkNtR1FJlNG7sj1VsWTsPdW09ry0VPOKvLrjxTiGiWxM1XRxu0f3MTH3Xum7cHWO7sJVb1jpcZW7lxGwctJg9y7o29h9xTbeoa6LKUuAn8s+ToqWoij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3mT/AFH+9e/de6hVOf2vi5MqNwbkw+2qbAYmDcGdr84aqioaHCTlVFTR1UkXjyNSC8UYxmMeormlmp4VpjLUwJJ7r3VWve/Z8vbdZR7pipajGbdp9y7sw2zMFV/btVYTbNFi8J9stbLTXV62tctX5JhI6fdSyrAVp1hjT3Xui/e/de697917r3v3Xuve/de697917r3v3Xuhb7z/AOZm5v8A7Vmzv/eKx3v3Xugk9+691737r3Xvfuvde9+691737r3Qv9TG1D3H/j0xnh/t944H37r3QQe/de697917r3v3Xuve/de697917r3v3XuhR3wf9+R0uP6bL3H/AO/Pzvv3Xugu9+691737r3Xvfuvde9+691737r3S861/4/Tbv/a6xP8A7np7CHPn/Ko7j/zzT/8AVpusjPumf+JEcnf9Lra/+02Hpu3r/wAfHk/+ouo/63N7Vcn/APKtWX/NGL/ji9EX3jv+n28zf9LO+/7Spekp7EvUIde9+691737r3Xvfuvde9+690vcd/wAyv3h/4fvW/wD7z26/fuvdIL37r3Xvfuvde9+691737r3Xvfuvde9+690o91/8XaH/AMNzZP8A7xOO9+690nPfuvde9+691737r3XJUeRlSNHkkdgiRxo0kkjsbKkcaAszE8AAXJ4Hv3XurVeiOgJukJMxmd119Jkews1hItv1WKxbyS4zY9HPWpkM9iqjIm0dfk3enpKWaamH21OI6uKGaujqUni917o5/VsmKo8tl89kJcRLUYzBZHG4PBV+QkpK/L5bdNHLg6isoKeCzzR0GOevnm0urJI1Oy6gGA917pR9j5vA7mrcxvjCZrH02W3p1B1ZlMxjYtw0Yz+A7N2xv7bEWbxsNdQLTSSVyUuBXNR1cccMzEvLoidVHv3XulRke1I977LyWzt45TbNJuPfXWGyKAb8WGliii3d173bnd602K34MJA5oTnqOqgnyWQWDQKh0qZ0ClyvuvdQNtZnYe2MP11jNw5jaLzZvE/IfZe+9w7Jel3Zn9n4XsHC0eE2Juaqkwul56ijZ6/RFFK8qUsk2gPIEjb3XukrtTIY/ZeC3vt3J7l29X1W+8r1Li4E2pmo8xt6jh2N2NDvHJbuzOS0RJDDBBC9HRRsgqmWsmZoY40kv7r3T7maTasnau7t/wBVvTr/ADOEn7X7A3xhMNiN10OS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Tlp8BkY8nSwR5yjinlpHEsaSRzpDJoZQdDC6n3Xug5jVlRFZgzKiqzKugMwFiwQXsD/S/Hv3XuhC35val3nB13TUm3KbbkWwetMT16wpq+Wv/jtRQbozO663cs/kii8ElVUZmUNTJrVNGryMXNvde6WG5e19u762TsHC732NkK/fPW2Ci2RhN/bc3lS7bhz/AF7Q5SoymA29vbalZhclHVVuJ+7qKOgy2PrKFmohDBWQVU0K1Xv3XugTdw7FhFFCCB+3CZzEptZtH3LyPYm5szm30va3v3XuuHv3Xuve/de6FbJH/jB+zB/39bsw/wDro7S9+690FPv3Xuve/de697917r3v3Xuve/de697917pc9oG/ZvZB/wC/gb1/96aq9+690hvfuvde9+691737r3Xvfuvde9+690rts/8AFq33/wCGjD/72WI9+690kffuvde9+691737r3Xvfuvde9+69112tHXR7spWzNVFkdx120Nn5vcWVhGSkXL12fxC5jF5CfJZRQ+QqjiZsbFksjE0kVRXR1LRzT2M0nuvde3Sf+MUdDD+mY+Rf+87i2p7917oOPfuvde9+691737r3XvfuvdWK/A2nv1r8/a3GrJkd0R/HjZeLoNvReOeTIbSyu68pPvzOpjY0apl/g8VJRVRmiIiiDlJvVPDb3XuksHWwte1v8Pfuvdd6x/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3XusUyQVETwTxLNDKpSSKRFdHUixVlbg+/de6OB1f80u2tsQjYncGazXyG+PmfoajbnYHUPZNXTbjqsntmvRInqNsbzzKtlaXI48xpUY5ZsiafUpQfbyGGrpfde650mR/l15h6jC123Pl31HRVdPVwUXZdXubaPZNNtWog1Q4rJZ7ZtB99WVlJIhWevSkgqKhXAiiIjL1Ke690k+2umMt0PJ2LtCv3Ngt8YXcWA6G7G6+35tuJ6PFb6643Xk9xjb254sTLPUyUEkslNUQy0clTKVMfkjlkhljdvde6LbrH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de6Fzo/C0eb7Bo6qvXy021MdVbujpGhkkhrspjamCkwkFU6MoSKKrqIq1g2oS+D7dkKSsy+690czWo49XAtzyeP6n37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3TphnH35+v/Fr3D/vG3Ks+/de6a9Y/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3XtY/wAf949+6910X4Nrg2Nja9jbji4v/t/fuvdVi/LHPbiyfd+88Nl8ruWrw21MlJiNmYfcFJUYum21taeNMnjcdt7Fu3hNBKkwqqfK08ca5hZBmGQPXt7917oFqv8A48rb4/7OneH/ALqcH7917pLe/de697917r3v3Xuve/de697917r3v3XuhZ7w/wCZl5r/ALVmz/8AeNl44e/de6Cb37r3Xvfuvde9+691737r3XvfuvdC51S1qHuAf6rprOj/ANfHA+/de6CP37r3Xvfuvde9+691737r3Xvfuvde9+690J+9z/vyumh/TZe4v957Ozvv3Xugw9+691737r3Xvfuvde9+691737r3S662Nt6bc/7XeJ/9zk9hDnz/AJVHcf8Anmn/AOrTdZF/dONPvD8nf9Lra/8AtOh6b96G+4sn/wBRdR/1ub2q5P8A+Vbsv+aMX/HF6IvvG597OZv+lnff9pUvSV9iXqEeve/de697917r3v3Xuve/de6XePNusd3D+u/euf8AeNvbq9+690hPfuvde9+691737r3Xvfuvde9+691737r3Si3Sb5aL/Dbuyh/65OO9+690nffuvde9+691737r3Ry/hftPEZXd29t6ZnFU+SbYO3MO+1J6pqWeDE9gbi3LAmEyTYqoDGaSHEUO4Z6Op0laSrippwUqRSuPde6sCMgPJuSeST+ffuvdPm2X/wBz+Mt/q6r6/wDavm9+690wROPHH9f0J/0L7917rnrH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xulf17I3+kHYIjDmQ732mEC31ljn6fSE083J+lvfuvdBh2zvvsXE9qdlYym39vrHU1DvjcdPS0FBvXcdNQUdImRf7OmoqajqUijiSHxiOONAqjgD6+/de6C7K7z3nnaQ47Pby3fncc0sM747N7pz2Wx7zU7+Wnlkoq+okiZo2AdCynSwDCxAPv3Xuk95D/Qf7z7917pd5fZDYfYb7/fdm1K6ij3DQbSbCUQ3QM7U7lqdrxbwymNw5rcZDQZBMRRzQx5iso66Smp6qSOlWWSaRFb3Xul9TfHne9R2biup2zmxqTceb2V/fjHZOtzGXptqvSJLU0VRg6rMtj9UGRhraKsxc0U0CxJWwvTmbXa/uvdZcd8cuw6jE4XN1uUxW0clPsXcna0WHmpN91O+9pQ7A3fidtTY+vw23sLWS0244snlcfJS0ELu8WlpJ5Kdo7e/de6OXuP5D53qfcOU7f8A9DPxy372ti+wMB0r2rvzbVfu6p3f2Bvyu6pmmw8mx8lLioqfbqiKhqsdmaUPLOKqmagkp0aSOeP3XuiK9/bOzXX/AHLv7b2enxNXX1WXfdkNZhJK2bEVuM3kWz9HPjpchDBMyRNLLRylohpqIJowW0En3XugeaYIrO7IiKCzMx0qqjklmJsB7917o8/xZ2NuHsLoT5J0/S2MhzndO649t7CqJs1U1uHwEPSubKS7ij2XuOaFsVLmK2oWtiqoJ6uNkigppCyFYhN7r3QQ0fc1RtiDI9d7825u+r2VgurI+ltxdbNn8TgK7FbnwuG2/wBf78zS5BsdUmGWei25NSx0MiyxU01Q8yO5aY1HuvdROg6Wm7WwXdXSGNwuaznZXUG09+baeDatRt7a2V7c692b8k6XtYTdf7XnpMpQUmZwNXkanD1eG+6kiSmq8YkM81Rr0+691L2137h8VR7ex0OyRVbS2xuXZWe2xi1q8XT5Y4ZdpZLZ3bu3tx59qAT1n95aTK1RiqFSCalKwRTmrigjjX3XuoOb7zn3M2YrM5ha2pzO4ei811RnsqcxDJPl905XfGD3HDv2taemYssWM25iMQ1EukssRkWZOAfde6AbWf8AD/effuvde1n/AA/3n37r3Rd/k3ShsR1hlbEO533giTWU76lxVZjc0jJQeQzxrfKsvlMSxOQRG7SrOqe690Uz37r3Xvfuvde9+690v95SyS7e6nEkjyCn69yFNAHZmENP/pV3PViCLUTpTyTSyaRYandrXYk+690gPfuvdPu18TBntyYDB1FTLSQ5jMY3GPUQQfczoK+rSlAghJVTIxYKnkdIwxBkdEDOvuvddbo3xQ4nGZ/aW1cXXUFVuPE4rb29MjmqY4nK4ulwediy2Q2XDhKGqqaZ6h66gof4plZJT5vtzHT01MJp3f3Xuk91e0tXueq2xDBJVvvPa26sJDSpVmhRq7EYh9+4uonqVBIjhqcLFJIv0eMPGf1+/de6y+/de6XfVpt2d1wf6b92cf8AbbipvfuvdBriv+LXjf8AqAo//cdffuvdT/fuvde9+691737r3Xvfuvde9+690JOP/wCZP7tH/fyevP8A3l90e/de6Db37r3Xvfuvde9+691737r3Xvfuvde9+69075k3nx3+G2Nmj/10aH37r3TR7917r3v3Xuve/de697917r3v3Xul91t/x8WR/wDDB7X/AN56uzI9+690gffuvde9+691737r3Xvfuvde9+691737r3Srf/mXWIH/AH8/sL/3h9le/de6Snv3Xuve/de697917r3v3Xuve/de66P0P+sf969+690ve0zfs7sc/wBd+bvP+33BUe/de6V/S3bydST76lbB1GWO89o0W2fuKDLriKqlTH75w29pcbkkqaasp8hhssuIOKzWKngC1EE+oyGOKSlq/de6z1Hb9Hm6BcVuXbMT4nDbI3jtzZODwTYmmwm1chuLdeb3TgaSGk3BRZOebD4KXcufmxaS1RzEdTXSOc01LFT0UXuvdAb7917r3v3Xuve/de6WG3TbbPaX+Oytv/8Av5Npj37r3SP9+691737r3Xvfuvde9+691737r3XvfuvdCj2N/wAWXqH/AA6uj/8AfgbgPv3Xugu9+691737r3Xvfuvde9+691737r3Ttt7/j5Nr/APh1bY/931P7917plh/zUX/LNP8AoUe/de6ye/de697917r3v3Xuve/de697917pb0R/4xpukf13913/ALxtvdfv3XukR7917r3v3Xuve/de697917qVQ0NdlK2jxmMoqvJZLI1VPQ4/HY+mmra+vrquYU9JRUVHTK0ks0sjKkcUalmYhVBJA9+690JuG6W39lZczSV2MTZ2TxUGGelw+/xXbJyG4K3P10UGMxWEbPwQ06yvTNPkvLX1FLTfa08rLO0z00M/uvdM3ZGGyW3c7hcFmaZ6HLYvrPpimyVBMNNRQ1Y6fwUktHVRnlJY9WmWNhdWBU8j37r3SHpqaorKmmo6OCaqrKyogpKSlponnqaqqqZRBTU1NBECzySOyoiKCWYgAEn37r3Vgu0dlVXSce3Nh7fwB3f8qd0jB7mpsNnEgrsB0JNLjZZ4Nx5LGFWjpslDSZCJKmmyHmZqingmanhWmpY8l7r3SWQYvK4veu1Nq7zmg62imkrvk38mK55qvJ9nZOsl11uydk1knnlqaCqmn8IWLyvk3lA0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e/de697917r3v3Xuve/de6EDq6Pas2+cLHvMYxsE65IOmbaNcG+R/hcxw6Znz/smmap8QkWo/YY2We8JkB917oRO+qLav8Tww2pSYNstQUeWm3j/AHQgoZqKioH+0bblRnm2+pooZyFryHJWUxaPP+39r7917ovQIIBBuDyCOQQfoQffuvdd+/de697917oVu8Oe1N4f41lHx/5Caf37r3QfVeez1emJjrc7m6tNvhRgBU5fIzfwHxukkZwhklP2hVo42Q0+gqUUixUW917pXU3bm+8fnMduiu3BWZyfCU1dFHR56WsyeLlo66lEGUSagikRvJUIkRmqYHSpd4oWMpaJLe690Z7PrvXG121uwd25LDT0vX1FmJ6vZ+28fPRw0B3zi4Nt7onXO5evnao+xVkrC0hdW+3MUAQOZz7r3U7sHYh7X25hJ6KtO287icpu2FMTuTCQUUj1r1sOEhoqipoqh5KCF5sbO87JBUAg0zlEsb+690VzY3VO598nLtG+P21BhKn+G5CTdDZCinjzYXyS4UY6gp6mpE8AH+VF4lSIlFZtbBffuvdDX1P0jhsjR7wj3bhjntx4DN1mDrcOMnlaGmw1HBQ0lTj8pQSYaenkq5MmatnoJWZ4pYotUUTWlYe690WnduHo9v7q3JgsfWNkKHD57LY2jq5GhknkpaKvkp4FqpaYCKSZFUJNLEqo7hnREUhR7r3QwdI9e7U3jHubJbggqMwMI2FghxK1lbjqaJcnFUyTZDIHEyR1T3kgEFLonSMesyqzPEE917oNuytt4/aG+txbbxU082Pxk9B9uKuaKoq6Vq7EU+TqcbVzQqoaWjmmkpHJUNeM+RVk1KPde6Q/v3Xuve/de6X0LnO9eVlLNVKa3r/KplqBKrLWkfam76mDE5ajo8dPC5MVFl1x80CQVESLJk62R45XlDR+6913vH/j3OqP/DCyf/v0Nx+/de6QHv3Xuve/de697917r3v3Xuve/de6VGyP+P02h/4dGA/920Pv3Xuk9Vf8Caj/AJby/wDWw+/de6we/de697917r3v3Xuve/de697917oUdkm2xe5R/Xae2P8AeOyMOffuvdBd7917r3v3Xuve/de697917r3v3Xuve/de6FjtU3TrH/DqPZg/9yffuvdBP7917r3v3Xuve/de697917r3v3XuhV6V/wCZiY3/ALUe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FJAhlq8jk8hVskNNS08YaWoqJnWONFZ3YAE+/de6JZ3T2fHv3MU2H29LMvX+1pqtdsQzRzw1OXyFfTU1NuDeeTiqkikSfJvSQmCleJDSUcVLSuJKiKoqqn3XugV9+691737r3U/GYyvzNdBjcZTPV1tT5jFBGVX9ump3q6qaSSQhEjihjkmmldgiRqzuQqkj3XuhY31t3F4TaXVdZujdWNwNWvXVfX1e1Wo8lU74NDP2ruWmxtZisDJHBBVRVmkGllavijK65JHigTzH3XukLJvXYeL65Ws6/wAvvTA9vybrkxuXn3Jt3GQyxdfT4ZKumzHWuewFZWxYLKRZJJKPIVU1TLXTUzwyY2TGBa1ar3Xug03fvbdG/wDONubeWVfPbhlx2MxdTmKijxtJX19Niab7Wknyk2Ngg+7qmF2qK6q8lRO5LTSubW917pM+T/D/AHn37r3QsbTodq5bYuXx25aBqWjyG456aXemExmLye8tqZiLEU1Vtf7WCunpHqMbVxDL09ZjTWRQT6jV3asx9KF917qVufK0+b3BlcnRU70mPnqFixdJL4jUUuGoIEx2Fpat4AEeaKkhgjmkRVV3DOFUNpHuvdPfWH/My+u//D72h/70NP7917oN8XzjMcf60FJ/7jr7917qf7917r3v3Xuve/de697917r3v3XuhHoP+ZRbr/8AEj9ff+8xub37r3Qce/de697917r3v3Xuve/de697917r3v3XunXL/wCex/8A4bWz/wD3kqL37r3TV7917r3v3Xuve/de697917r3v3Xul51x/wAfDkf/AAwu1B/t+sMwPfuvdIP37r3Xvfuvde9+691737r3Xvfuvde9+690qW/5l5iv/Em9gf8AvEbM9+690lvfuvde9+691737r3Xvfuvde9+6910fof8AWP8AvXv3Xul32h/zMzsT/wAPrd3/ALv6j37r3SF9+691737r3Xvfuvde9+691737r3Sv28f9+32h/jsvA/8Av4tqe/de6SHv3Xuve/de697917r3v3Xuve/de697917oTew/+LL1J/h1kn/vfZ8+/de6DL37r3Xvfuvde9+691737r3XvfuvdOuA/wCPj2x/4dO2f/d9T+/de6Zof81F/wAs0/6FHv3Xusnv3Xuve/de697917r3v3Xuve/de6WtEbdb7oH9d+de/wC8bc3T7917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1bS0elg6tZlsQD7917qyHYPyb2j2D8e/klszuev29j+426OrNq4Lsd66LB7v7lwlFj8lHs/ZuaraPxz1lfQ5CtjgqaYymPI09czPA6Gut7r3VcFNVUJ0UtJUUn7UIZKemlh/bp0bxKyQxHhARpBAtfj37r3WWGrp6k0i09TFUNkKmKjoFglSZq6snk8MFJRrGSZZXf0JGl2LcAE+/de6bNx7v2RsqY028N1U9DXxVkFLV4DAQx7p3VSA1MUNe1XiqWeGlpJaWOUTyUuUyNHM6grCkjhlHuvdFk7N7yrN40FbtPbWLXbuyamalatjqjFW7l3V/DamOsx9TuOvOqOCJKiJauHGY8JDE/jE8tfNTQ1Y917oB/J/h/vPv3XuuvKP8P8Ab+/de678n+H+8+/de6d2aLEbVzO46wamySZLZO3KLyEfxPK5rDSU+eq6iLwyLJR4vHVBmqkdk1VFRQQ3KTuye690hs4qphOro0VUSPrjLoiKAqqv+nvfjWVVsBySePzz7917pO+/de697917r3v3XuhgwYxm3dmzUVRTz1GY3pRUG5amamrHjpaT+HZCSh2VjK6C1pY4sdU5nJOYmRjU19GkhdaGSKT3XumPyf4f7z7917pc9YP/AMZL674t/v8AraPN/wDs4Kf37r3Qb4t7YzHC30oKT8/9M6+/de6n+T/D/effuvde8n+H+8+/de695P8AD/effuvde8n+H+8+/de695P8P959+690I9A//GIt1m3/ADUfr/i//Zs7m59+690HHk/w/wB59+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3XvJ/h/vPv3XunbMPafH8f8AMNbP/P8A2adEPfuvdNPk/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3S864k/wB/BkeP+YD7T/P/AH7HMe/de6Qfk/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de6VLP8A8Y8xPH17M7A4v9P9+Rswe/de6S3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3XRfg8fj+vv3Xul32hJ/xkvsTi/wDv+t283+v+5+o9+690hfJ/h/vPv3XuveT/AA/3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7917oK/fuvde9+691737r3Xvfuvde9+691737r3Qo5E/8YV2eP6do9kH/b7T2r/xT37r3QXe/de697917r3v3Xuve/de697917r3v3Xulv2b/wAzK7F/8P3eX/vR1Pv3XukR7917r3v3Xuve/de697917r3v3XulXtv/AItm+P8AHakX/vXYk+/de6Snv3Xuve/de697917r3v3Xuve/de697917oVNyH/jEvVo/puHsz/eWw3v3Xugr9+691737r3TrQ12PjoMriMxhaXN4rMHHTyoZ58blsbkcQ8xxmXwWapLvBURJU1ULRzx1FJNHM4qKWYrEY/de6N18Uvi9j67szYHee7999KZH419c7yi3XvN9/bhjodxV1Ht3GS5mh2puPrgU1WoyYrUiJoFqZhVrB56OOrp6imSf3Xujjdv7o2t8pugN9d+yY3K4Ttb46dgUey6itpsVhaGj7F6M7a7QqZOqju/HwSNUUuSwVPWyrNUKSrVaV3NT97qpPde6IRrX+v8AvB9+6917Wv8AX/eD7917r2tf6/7wffuvde1r/X/eD7917r2tf6/7wffuvde1r/X/AHg+/de69rX+v+8H37r3Sswjj+5nZXPBrerPwfxks57917pIOIpUeKVUkjkRkkjdA6OjjS6OjCxBHBB+vv3Xujy9E7x3J2r8ePlN0F2FurNZTYuwumMP3J1jnty1VLlcT1Bm+pc6a+l2vQz1miuSn3B5KahoYEqnWngpaqCniEcgi9+690RxZAVBPFwDY/UXF7G3v3Xuu9a/1/3g+/de69rX+v8AvB9+690O/wAf9wS0O5c5tgTUiUW7sRDUCKpmip5p8/tSSWswsdDJKLySPTVWTgWkRgZnkjK6pIkjf3XujRicEAgggi4IB5B+h9+69135h/h/tj7917r3mH+H+2Pv3XuveYf4f7Y+/de695h/h/tj7917r3mH+H+2Pv3XunHEyg131HGOz5+h/wCedq/fuvdN3mH+H+2Pv3XuveYf4f7Y+/de695h/h/tj7917r3mH+H+2Pv3XukL2V2pB09tJt7Lj6fNZwZWkxW0sNVu0eNqdwSQS18eSzoieOd8dQxwGaphpmEs8jQUolplqGq4Pde6qDkkeWR5ZCGkldpJGCRxhndtTERxBVW5P0VQB9AAPfuvdKSr/wCPMwP/AIc+7v8A3VYT37r3SY9+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eO4cbHNJI/oj3BgKGu+2gS5GljiXkcECxW6XLy2917pPZ03w/Wf+HXeWH/seN9n37r3Sd9+691737r3XTMFUsxsFBYn+gAuT7917oZdwU/2FLs/Fyx1MWQxuwdoLloqqnaB4cllcSu4pYIXY/uwRpWxx08oADRKnFwSfde6Tfv3Xulv1kbdk9eE/891tH/3oKf37r3QdYz/i24//AKgaT/3HX37r3U737r3Xvfuvde9+691737r3Svw/X2/dxNt1Nv7I3fnX3fJuWHaaYfbWZybbol2ZQpk94RbdWihc1rYmmljqMktNrNLE6yT6EYE+690ucRtDdlX0rmcnS7Y3BUY3M73xeUw1fDhsjJR5jF7D2TubL77yWIqVj0VVPg6S1Tmp6culBEySVbQpIhb3Xuka3WnY6YfJ7hfr/ey4DCs65jONtTOrh8S0eGodxuuTyZg8MBXHZPG15Erranq6af8AzU8TN7r3ShfobvKOlWuk6Z7XjonydFhErH673etK+ZyeWTA43ELUNR6DVVFdLHRQU4OuSd1hVTIwU+690jX2XvGOmjrZNp7lSjlxlNm4qt8FlFppMNW7nk2TR5eOdotBpZszDLiIqgHxtWo9KrGdTGPde6gZ7AZ3auYr9u7nwuX25uDFSxwZTB57G1mHzGNmmp0q4oa/GZBI54WaKSOVVkQEoysOGBPuvdNPv3Xuve/de6dswbz0BH/PN7Q/95Oi9+6900+/de697917r3v3Xuve/de697917pd9c/8AHwZD/wAMTtL/AHnrHLj37r3SE9+691737r3Xvfuvde9+691737r3XvfuvdKl/wDmXuJ/8SXv/wD94rZvv3Xukt7917r3v3Xuve/de697917r3v3Xuum/Sf8AWP8AvXv3Xul12f8A8zK7D/8AD53b/wC7+o9+690hvfuvde9+691737r3Xvfuvde9+690rtvG22+zh/XZuA/3jt/ap9+690kffuvde9+691737r3Xvfuvde9+691737r3Qmdgm+G6n/w6zjH/AK/me9+690Gfv3Xuve/de697917r3v3Xuve/de6dcAbbj2yf+zo21/7vaf37r3TND/mov+Waf9Cj37r3WT37r3Xvfuvde9+691737r3XvfuvdLSiP/GONzj8nffX5/223d0X9+690i/fuvdGZ2dFlcf1jSYzPQVuMiqNzf3t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LaX1/wCPmwP9P+drF7917pP1LgVE45/z0v8A0OffuvdYdY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvdCdstx/cjuH62/urtr+n/PxcR7917oMdY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3Qq9puAvWt7/8AMp9nf0/6affuvdBVrH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de6FHppwewccOf8Aiyb1/wDeHyPv3Xugu1j/AB/3j37r3XtY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3XtY/wAf949+6917WP8AH/ePfuvdChkXH+hfaH1t/pQ7H/p/zym1ffuvdBfrH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de6WvZUg/0kdh3vf+/m8f6f8APR1Pv3XukVrH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917pV7ccfwze/wBf+PUiv9P+etxXv3XukprH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de6FPcjj/RN1f9bf3h7L/p/XDe/de6CzWP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+690OHXEUFbszcRFODNg927crpJ5paUhos5h8jj4hSUzfu6onpf3ZR6VEqrwW5917o43xm3psuiqO0ekuyqrdmN2N8ndtbT60Of2dhYty5Tam/8dun7jrbcTbdKSzVUUdbXSxN9rBLKsjRHxiPXPB7r3QNdmbByvVPY2+Osc5k8TmsvsLcNRt6uzGDMn8KybxU8VbBWUsUxZ4WeGaPz0ru7U8wkgMknj8je690iffuvde9+691737r3XvfuvdY5ZYoIpJ55EihiRpJZZGCRxxoNTu7twABySffuvdGH2R8S/lB2NS02R2j0RvyoxVZS09ZR5bcMOG2JQVdLWRmWjqKM78rMbLPHKg1pLDE6FSrarOmr3XuhZh+J77I2vvzEdyfI/wCOHUu4KzJdfwVe3Zd3VW/c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qCKszGH3PtmhmYVOUxtPlcfQNEjw5LLbWrVy4heVuYZBjf4qKea+nyOsL6Y5nli917pB5uTVhusit+eu8qbkDkN3rvlgf959+690ntbf1/3ge/de69rb+v8AvA9+690pNoYeDcG5MXjsjFUT4aN6rL7ijpqaapkfbO3qGXP7hhMdNaQCakppYNcfqQuGUFgFPuvdK7LZapzWVyearhAK7MZGuytd9pS01FSmtyNU9ZVmno6RY4okMjsVjjRVUcKoAA9+691A1j/H/ePfuvdLbrNx/pI69+v/AB/W0f8AeNwU59+690HeMcDG48c/8AaT/rQvv3Xup2sf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917o5/TvyXwfXB+P+Pqa3edNt/r7P7g3Fv+mw23Nr12SFdU5LKCjPXuWyNfBVU38XxWR/g+5vFU48VlIFpqla6GngUe69067U7h2FQdSQ4KqoM/T7W2VkV21g6rH4dKzM0+Z73+Ne7+ve6NzTYjMZ2WhLxZWemkoKehlokyFHRwtP8Aw+tknmf3XumTIfJHa2U2XFsqXH5vHU8eI7g2++cx+3sGu5oqbPdC7A6z2Ll8FnabI00+O/i+Q2O9HvLFI0sEmByddRNNlZZVeP3XuhBzvyp6pyu+sZupsbv/ACFHR/LPovuupgyO39uR1dR1/wBa7Dp9pZ6iX/c1UKMophEGNoixp3plj8lZT28K+690Bm2e58NtHbnVtNgstujG7n2HhsBsyPL0m0NtW29j9vfJCf5B0HY236iuydR99llqZjEMLV01PD5OXybw3jPuvdBj2hunZ+6szg67aO18dtsUW0cJiNzVOH2/jtlYzd+66KSdq/eMHX+DqavGYKWop5KSkrKTFTClqqmmmyqwUcuRmo6f3Xug21j/AB/3j37r3XtY/wAf949+69065dwJsf8AX/j29o/+8pRD37r3TVrH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917pdddyD+8GQ+v/AB4vaP8AT/n2eX9+690hdY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3SnaQf6P8AFfX/AJmTv3+n/PFbO9+690mNY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XFnBVhz+k/717917pddnOP9JPYX1/4/jdn9P8AnfVHv3XukPrH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917pWYBx/dzsz6/8edgR+P8An721j/xHv3XuknrH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de6ErsBx/BuqPr/wAy1T/ed+Z4+/de6DXWP8f949+6917WP8f949+6917WP8f949+6917WP8f949+6917WP8f949+6906YFx/eLbP1/wCPo21/vGdpz7917pnhceKL6/5tP6f6ke/de6yax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de6WVG4/0dbm+v/H87B/p9P7u7n9+6909db7QhzuQi3Bn6eZdjYOt8mZnNN5Uz1XQolWmysYXkhV6quLwwzsrsaSnleseOVYhDL7r3QtV9fW5avrcrkpvucjkqmSsrqjQkfmqJjdiscYCqqiyIigBVAUAAD37r3UT37r3Xvfuvde9+691737r3XvfuvdCLh0pX66zLbu3ZPtjqWHdsc3YVHiJYl3VvKSDBx1W3NlbbgdQZZK2ojYzK1RHEiJ91MDHStLB7r3U3J5fJDJ7M3HuLZlJW71rKJaH40fGmhWSTBbHwDSMaffG96dmgfxA07VM01S0M1dNA7u9LTUskmJ11rpupoc02a3htvbm8Icl2JlIJMh8j/khkHJw+w8RcJV7S2lVp9ssZjWm+3jjpvt3dqdYIFpI6S2D31vqJGmza7Z1LPPR5faXxd2nlZUweBSSSj358jt+UbLTzTSz0whl+3MsKx1dZCESkRFpKRYZ4gMR7r3S9kn3fRbv29V1W3qDM/I3M46joOpepqKjpRs7427MSkT+FZvOYsL9tBlYKXxy0lLLEEokVampTy+CBfde6mbBhxTP2Ntrbe4ajJ7Qj2T2lP8lfkS0MeVrt6ZWu67yYfaPXqV4kkrcfS1NQlXUiAGauC+fUIWplyOuvdBrVV2KyGK2jn8/tGqpOuaKq+0+O/wAd6JXnzXZGZnk8UO895wRfcyTxTvUCSSRxOJfMY4/uUqWbO+690uqSn3jj9419JR12K3L8nNzYmeo3du+pmp02H8bdiLAXraanrWaamppqamlbz1F5AgkZFaoeokfKb691L2vJs5doVNBsNsnlNv4rfWcoKne2YNQMh2NuT+B42q3Du56epLmCF5ZFhpYPKzCFFee9RJK7+691O9+691737r3Xvfuvde9+691737r3XvfuvddmOmqabI46tevjocxispha+XFVZocjHRZahegqmpKixW+hyGikBjlXVFIDG7A+690U7c3QW9MS2RqttvQ75wmPpK3JvXYeanx+YhxWPoZ8pW1OQ2plJVq0kp6aB5apKE1kKG4jqZ1Gs+690BYlRgGU6geQRYgj+oI9+6906YVYZ8ziYJokmhmydBFLDNGksUsUlUiSRyxvcMrAkMpBBHB9+690bPO0m8+w873Bna3tnM4rK4vtebqHE129ewKvEbYG0t6bc7E7E3FtrJ7gzM7FEr22lHQ0GLD+Ouq6zxOrSOl/de640/U/ZcmZ6y2ttfsvP4nfXYWCym08rT7nrd/bRxkG7Oseytz9Z7C6vkq6iiWsx8z0OzokwuO3HSUDU00ZptFOKcrD7r3TLXdZdk7YyGQ7KwPcUcdJjKLBVFZv+XLb523u/bm08/19t/enWY3ZT42Cunjqa6gy+EwxoMDkMvFQ5GJqeaoWghp6+b3XupHafXm6Oochu2XrHtbObi2RtfduEzrT4LI7joNyYvJSQ4vJbb7C3nt3BrImAFbUvRybfyWZlpZqvxQmALVR+CP3Xuit5HL5LLzpVZbI5DJ1MVLS0UdRkauetnjo6GBaWipElqWZhFDEqxxRg6UUBVAAA9+691xosi9BK80VPj6kyQTU7RZTEYrNUuidNDOKPMQzxCRf1RyhNaMAysD7917pe47c+YyHXnYW16+ohyGEqTS577euoKGqqqPMZfL4jDZevxWUljNVSNWUlDRU9WlPMiTLTU3kVjTQFPde6ad5dibt7Aqlrd3ZOHK1a5bc+cFRHhcDi5f4nvLKLnNyzNJhqWnZo6mtD1n27EwxTzVEsMcb1NQZPde6S9EKKapWOvq5KGmMVUzVMdK1ayyxUck1LD9ujKT5pljh1XsmvWfSp9+691E1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3S13W4/gfWh5/48at/9+TuH37r3SK1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AqUrQErcc8cg/ejjl4b9aq36lBHuvdLHrjaG7N05eozG3Mwu3qjbklPVvueeuylDUUeSyImipIcbV4qKWoNVLGlSxZdKrGr65FLxrJ7r3TBu3Fbg23unJUudrzV56KrTJVGZp62rrP4jUV6rk0y8GSqljnkaUyCRpJVWUSalkVJVdR7r3TLUZbK1eVfO1WTyFTnJMiMvJmaisqZsrJllqhWrlHyMjGY1AmAmE5fXr9WrVz7917rPl9yZ7OzVE2ez2XzNRkMxkc9VS5fKVuRmrc/loYY8vmqh6yR2krKqOlp1qaliZJFijDsRGtvde6Eds8u2m6UzcsL1VJQ7TrxlKKOGjqZchhKrsncVHncbHDkP2C1TRyT06+X0guCeB7917oPtzbfrNq5/K7friXnxlUYUqPGIo8hRSotTjMtTIryDwVlM8NXTkOwaKRGBIN/fuvdMXv3Xuve/de697917r3v3XulLsvjeO0z/ANnLgv8A3aRe/de6YKnmonP/ADel/wChz7917rD7917r3v3Xuve/de697917r3v3XuhM2Yf9+R2+P67V21/vHYmI9+690Gfv3Xuve/de697917r3v3Xuve/de697917oU+0TqTrY/wDfqdoDj/A1I9+690Fnv3Xuve/de697917r3v3Xuve/de6FDpv/AJmBjv8AtS71/wB52RkR7917oL/fuvde9+691737r3Xvfuvde9+691737r3QnZA/8YZ2iP8Av53Yp/8AXV2t7917oMffuvde9+691737r3Xvfuvde9+691737r3S07JN+x+wj/XfW8D/AOvFU+/de6Rfv3Xuve/de697917r3v3Xuve/de6VW3TbGb2/x2rCP/XuxXv3Xukr7917r3v3Xuve/de697917r3v3Xuve/de6FHcZ/4xR1iP6bg7J/3k4b37r3QXe/de697917r3v3XuhY6upZQm8ciZUalTB47EfaMZA4yGR3NQ5KlySW9J8UFBV05Dc/5QCPoffuvdG/8AihDhqn5QdBQbg3JU7SxrdmYSWLM0Yj+5fP0sctXs/AK00M8YTMZeOhxEuuIho6pkDRsyyL7r3SM7tyOZy/d3dGT3Htuk2fuKu7Y39UZ3a1DkI8tTYPKtuSoFZRJloUjSrJYeSSrSNFmd2lVFVgo917oM/fuvde9+691737r3XvfuvdGg+L2zNpHO7l787WlZOnvjbDgt8Z3FU0NLW5Xf2/6zIMnWHXeKx9QwV/u8hAJpmktGzJT08pWCommh917oHOxu1+yu39w5rc/Yu891ZyfOZrKZpNvVm6M3W7V29Hkqt56XC4LAySrRQ09FCUpIGjpUZkTU3qd7+690ybdpqWi2R2NT0dNT0sCVnVgSGmhjgiVf4nm/SscQAA/wA9+690xUdZlMPkaDPbdyuT27uXCzGswG48FX1OIzuEyCqRHV4vK0LJNC/wCG0NZlJRwyEqfde6sV+bnaR7i6V+Hm/BtCkz/8X2XURZjveonp4txrv7EY0YbsPqDL4bEwxU1M0mQp2y0jO3jklo3FFEkcU7t7r3Vcvv3Xuve/de697917r3v3XuuLNpUtZmt/ZRWd2P0CoiAkk/QAC59+690c7rDZuX2Ft7M0edmpRmdyZLBZKsxFKWnG34sHQVkNLQ11ep8UtY7ZGcVSU+qKExoqzSsz6Pde6X+s/wCH+8+/de69rP8Ah/vPv3Xuvaz/AIf7z7917r2s/wCH+8+/de6c8RIfvW+n/Fsz/wD7z9V7917ps1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvdS6GA1tXDTtLFTRMWkqaudljp6GjgQz1tfVSyMqJDBCrzTSOyqiKzMyqCR7r3VTfbXY9V2lvnM7p15OLByTtR7Qw+UktLgdqUn7GExzUUTGCCoaFVqMgKdVSWtkqKhtUkru3uvdBr7917pVVckf8AcjAxeBfKN1bukNT5JNZjbEYRVg8V9FgQW1Wvzb6e/de6Svv3Xuve/de697917r3v3Xuve/de697917oUu5zfsXMH/q27TH+22fQAe/de6C337r3Xvfuvde9+691737r3XvfuvdCr1gQKLtkEXLdRZoA3I0n+92Da9h9bgEc/19+690FXv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917pcdcG29Nt/9rzED/b5CMewrzr/AMqtf/8APPN/1bbqe/uwmnv3yl/0uNs/7TIem/eDas/kT/Wtqv8Arcfb/KY08u2Y/wCEx/8AHB0V/eEkEvvJzG4xXcb3/tJk6S/sR9Qx1737r3Xvfuvde9+691737r3S1of+ZcbpH/Z79f8A/ug3N7917pFe/de697917r3v3Xuve/de697917r3v3Xun/c3/F0i/wC1Bs7/AHjZ1APfuvdMHv3Xuve/de697917rPS1VXQVVNXY+rqsfX0VRBWUNfQ1EtLW0NbSyielrKOqhIeKWKRVkjkQhlYAggj37r3VvOyt5f6Q9kbX36aWnoqjcVHUrmqOkglgoaLc2IrZMXnoqNHVVSGeSNchTQI0ghp6mGFpHdGY+690uNsVcE2axbRTwSJM1Z43jlR1kEdFKHMbKSDpIsbfT37r3TBHXU/gSX7in8ZZYfJ5U0ebV4/FrvbVq9Om978fX37r3XM1sAZ1M9OGjkjikUyoGSWa3ijcE8M1xpB5P49+691jXJ0TiRkrKNxCrvMVqImESRnS7yEN6Qp4JP09+691nFTGXWMSRGR4zKkYddbRAgGRUvcrcgXHHPv3XusyOda/T9S/1/r7917rv5XPq7+32SQONu/+87TH8+/de6Lxcf1H+3Hv3XuvXH9R/tx7917r1x/Uf7ce/de6fNsbq3NsjP4/dey9x5Xam5sUZDj83hqhIauFJreemqIZ1kgqaaXSvmpKuGWCXSvkjbSLe690bjGZDZPywxPYablwHVfU/wAhsXjtsZzb/ZKbsqNkbY7ZylTkZcdl8fuba1T5aZaqSNIlqa2EVNQJJ6d0tHEYH917opu79rZrYm7Nx7J3LFTU+4dq5SXD5iGjqhWUYqoo0nWSjqwqeSKSOSOSNiitpYB0Rwyj3XuknWsPs6vkf8Bp/wA/82j7917pX7zfVu7cxYgH+N1//W8/19+690mtQ/qP9uPfuvdG62HJV9K/Hbs/d27aqlkqvkdtmj2R1V1jVZOlqo83gp3kXMdxZ7AhWeFMdFKzYmfWp1hI5dLVlMY/de6KICAALg2FuSOffuvdAL8l9zb5qMjt3beSrKl9hJgNtZPbUsEMdPQbiyFLgY6bKVWUqIoo5a2uwtXUVuHj++lmemjDvTGOnrR5fde6K37917oc9hdrbkw+B7Ew0NPhpMS3T+6cFFQfwqkpoxHvHcOzNkZupqayiWOrnJpKf7mCCSpMEWQkkyCRCqd5G917pI5DsevzNXvWtzuB2/nJd8yz5LLtkjuGRqPd2ThSXNb4xNRBkI5YMnkq2nhyVZeRqWSWCCAUq4+mgoovde67zvZ+4c5kcfkxTYjDTYvbu7No0NNgqSehxVLtfd4zKVmBpMM8slJBTUke4MtDjkghQ00U4iQ+OKFY/dep05z9xbimyOLyseL27R12L3M25RJQ0eRpYa4TVONyNdgMhRR1XgfHVNZi4qyaFY1ctLPEsq0rrTp7r3Utu2a2DF0dXRUGIg3LU5jdNZl0/gytiZP4pQbLrcXu2ninmdP4nPk9uS108aQrSqzNphaGqMEPuvdIndG7pt1U+DgqMNiMa2AGbp6KfFvmw7YnLZZ8vR4SSDJVtTAtPjnlmSkeGGOeRJD97NVukTx+691BoPFhsHnd2ZGMy0MNPU7UxuOlpmel3NuDdmIqqAYWaqMsPihp8f8AfZKrliMkgWnSFESSpimj917oPs1/xZ+tR9dPXmUW/wBLkd6b5uTb+v19+690we/de697917oRdoQ0tDtrdeanSCatzklDsjDJIatJaSmoqyj3luvJQaVMLurQ4OlGqRXWOomGllkNvde6xe/de697917pa9am3Y/Xxte2+Npcf1/38FP/T37r3QeYznG48/9MNJ/1oX37r3U737r3XAyIpKs6BgFJBYAgO2hSQf6ngf4+/de67ckIxUXYKxUWvcgcCw9+690YXeG2urqPq6hyuDmxBzlTNj6igy9HlHnz+Q9UscmOyeIv6YxEYDrmBLPLUyIqJTxrTe690Xz37r3Qh0P/Mp90D/v4ew//eb3J7917oPPfuvde9+691737r3Xvfuvde9+691737r3Trl/8/Qf+G5tH/3lKL37r3TV7917r3v3Xuve/de697917r3v3Xulz15/xf8AIf8Ahjdof7z1plx7917pDe/de697917r3v3Xuve/de697917r3v3XulMx/34GLH/AH8jfh/2+y9n+/de6TPv3Xuve/de697917r3v3Xuve/de64twrH/AGk/717917pcdl89j9gH/s9t1/8Au9n9+690iffuvde9+691737r3Xvfuvde9+690q8Cf9+52X/jtDA/+/c2v7917pKe/de697917r3v3Xuve/de697917r3v3XuhJ3+b4fqn/xG0Y/22+s77917oNvfuvde9+691737r3Xvfuvde9+69077dZU3Jth2jEqrujbbGNmZFcDOU50lk5F/6j37r3TJF/mov+Waf9Cj37r3WT37r3XeltIbSdJJUNY6SwAJUN9Li4uPfuvdT8ficrl5DDicXkcrMJqSnMWNoaqvlE9fKYKGEx0qOdczgpEtruwI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0m/J/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de695P8P959+690KHckn/ABkPL8f8u3an5/7NCg9+690F/k/w/wB59+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3QpdZP8A5H2tx/zSXN/n/s68J7917oLfJ/h/vPv3XuveT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvde8n+H+8+/de695P8P959+6917yf4f7z7917r3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3S366k/3+e2+P+X5iPz/TIRn2F+dM8r3/APzzzf8AVtup3+7MdPvxymf+kvtv/aZD037vmDZ7IkD61lUef8Zj7e5TGnl2zH/CY/8Ajg6LfvAyCX3j5jcee43v/aTJ0mPJ/h/vPsRdQ117yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3S1oX/AOMc7p4/5jfYH5+v+4Hc3v3XukV5P8P959+6917yf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3Xun7cr2ykXF/9wOzz9fp/vz6Dj37r3TD5P8AD/effuvde8n+H+8+/de695P8P959+6917yf4f7z7917o2fxc7IOLyOT6trRKIt8VsVXsypjmWI43sJaT7GloFClSf49GlLj1Ya3WsgxwXxQtUv7917q6Stztd2DubsTD5LD0dJuCPt/bGCyO6cUKXHfxrYUeX3NBioshhY2jpXrMJS28eSgAlqaIU0FSGenill917r0W7qObJbe7p2xTpV03+iLsnbtXtzLY9KBHl67Qw43CZvHzTVEMprsDWUFFGaV5Vk8BfifUPfuvdSI8lSVWydqybXpZMVhoujvldjNv42WrpZ8zSY6gqamg22MnUa2mlr540SoaVyWlkkcqzrdj7r3SvytVlq7s2lpayVsDicP2R8fc9tjOV2WgyNDvCtixuLoMntXamMmkVcclPHUVtZV1GKjYTCCVcjIYTFo917oGKWCObrTeHXNZDXQbxrcLW99BauGhdanJYXcC0wxdPl4Zml+5k27DUucXOiqZphLCxd3X37r3RcDX00bgSVNNGyumoPNGhW7A+oMeP9j7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657h25XbryeM3F0xUZPrTN9i42o+x2N1PUTVW5+nMAu8994/b0eQ2ssdVJjMWlTkfuhamY00lPFO1e1NSz+690gtp9DZjfO1Nj5vbWdpq3P7xy3amOG16uhrZsxOOs6Ta9WybUx2C/iGV3DkK2PcbzHF4rEvVRQ0c9R45IFlkh917pq/0P1Nd/Fjgdy42u/gewup98V9Pk8fmMXWTRdj7W2znctSY56OKto3GFn3NTRTfc1sFRUwoZ6eldyYF917pd7f+Le6cj2BtbZua3LtzFYnM53b2Czm68cMpnKPb+RznbVd042Cp6UQU5yGS/i2LyS0wpZTj50hMv8AEY6cSTx+690EG8Ouc5s3DbU3FWvBW4LelPkarA5XHRVlZi5RjJo4K7Hy7hpI5cPJkaV5BFksZQ5OpqMfMDBXJTy6Vb3Xug/9+691737r3QlbO/48rtz/AMNfbf8A78HE+/de6DX37r3Xvfuvde9+691737r3Xvfuvde9+690KHZpJTrm/wDz6zaP/wAce/de6C/37r3Xvfuvde9+691737r3XvfuvdCb0/8A8f8AY/8A7U28/wD3isj7917oMvfuvde9+691737r3Xvfuvde9+691737r3Ql5A/8Yd2kP6dl9hn/AG+1tr+/de6DT37r3Xvfuvde9+691737r3Xvfuvde9+690suxjfsTf5/rvjdx/2+4aj37r3SN9+691737r3Xvfuvde9+691737r3So28bY3en+O14R/69mL9+690l/fuvde9+691737r3Xvfuvde9+691737r3Qm7hP/ABizrQf0z/Y1v9vh/fuvdBl7917r3v3Xuve/de6GvrRTTbU3hVS4+kIyWb2jiaHLurffRmmp8nl8riqeQGwil8dFPMpX1NFEQfSR7917pT62/r/vA9+690cPqDG53tH4m/JPq/HYau3bmOsN49Q9y9ZbewuFlzW6afL7pzVbtTf8u28fi1NXKpxtNKakBJVUVU11BluPde6WHUfQ2P6txVH2n39tGqn3dLkUfq7p3OefGVtHlcHUwVw3nvWAI/gkpHkpKujpZkkWENBJPDJPURRQe690MWe7SXejxTdidedX9hVVFVZCbEV26tn0eSr8RSZGbzPiKSpqvJemSyD1L5JSiyVEk0o8nv3XuomO6e6V70jpqep2Pt7q3NbR3LgtxZuu2DjnxlDv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r3Xvfuvde9+691737r3Tnlv89Q/+G9tP/wB5aj9+6902e/de697917r3v3Xuve/de697917pbdfm2dr7f88R2YP9v1xlQffuvdIg3IIUgNY2JFwDbgkcX/2/v3XuhI7c31Q9k9g5zeOLwB2tishTbcx2K282QhyhxGL2xtah2rj6Na+Cmo1dFhoU8S/bgxxlYmeZkaeT3Xus9V2flaPsKu33tCE7fEyrjoMNXyUu4cfV7bTHx4eXbm46Orp46TI0NXSxLDW0FRSmnkRjE0bIB7917pO793Djd37v3DuPD7fi2liMzWtVY7alLWJX0O2aJ4Vjh2/iaqOnpQaKjA+3oUNOrR06RRsXZTI3uvdLrf3Z2I3lunbm/oNv18G7KPbexcXnaXM5TH5vatRm+v8AauP2bj8njcYKGCY0VTT46GqbGVk8ohmvE81XSnxe/de6SO094tiuy9sdhbsp6zejY3fuE3tuelyOSkGR3c9FuOLP5uCvzFSk7+fIFZVlqpEkbXIZGVzcH3Xun6k3BhJ6eg3NujB1mcxU/bfZ2cq9vpl4aaXI1NRtDa9dQ46vzD0kganapMSVrpSK8kPlEQhkZWT3XulNtzv/AHx9p2Bt7fe8N/7h2v2ZhEx+fiodztT11Bl8VVpkttZrGRV0c0Cw07o+PqcbCKeKbHVNRSo8NoHi917oJdpZ2LbeZXL1FE2REeI3PQxU0U9PSla3NbYrMJjK7y1dPVJajqamGsZPDqkERjV4WcSx+690revezazZNJuHAZDGxbo2XufF52HI7XrZoIUoNy1+2arAYHf22K+qp6sYvO4tqhZKfJU0HlaESUjkwTMB7r3QYe/de697917ri36W/wCCn/evfuvdLbsk37F38T9TvXdJP+xzk/v3XukX7917r3v3Xuve/de697917r3v3XulTgjbbvZH+O0sEP8A2LO2ffuvdJb37r3Xvfuvde9+691737r3Xvfuvde9+690I2/TfEdWf4dcIP8A1+M57917oOffuvde9+691737r3Xvfuvde9+69054M23Btw/03Lt0/wC2zcHv3XuoONpTWzUFEtTQ0bVctLSrV5OqWhxtKah1iFTka1gwhgS+qaUqQiAtY29+690cLP1VFQZiL+HzZGhl2HtSo6k2fgqrH1WOm21RUm4K+ozu74KmGqvTZPIpVVkNfSvHIy1VXU1I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rCFZt3YLchoXKRAwNEFYK814/de663BsTsnrTc3VHXO3d90G4qjNZKqbZdZjsFSy4baO8971G2a18FPkc1GajHbihraXbVRlYhEJMdE2LraaaYVqD37r3QGL3J2etE+PG9M0aSWkwlDJG86SO9Ht/AUm2MbTNPIpkKfZY/HxVA1f5QaSklqPLLSwPH7r3Uxu8+15NxY/dc+88hV7gxdTkKyhyFdBj68xVmT37UdpVVY9NWQvDJKNx1U+ahkkjZoathNCY3VCvuvdJHMb33Tn8dTYjK5eafF0tZJk1x8UdPRUlTl5qOHHTZzJwUKRrV1708EMDV9UJKgxqEMhXj37r3SY1n/D/effuvde1n/D/effuvdCTs9z/cvtr/DbG3P6/wDPwMV9ffuvdBtrP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6E/s1yE66HB/wCMW7S/3uo9+690GGs/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917oTOoHP8Af3H/AEH+4beX0v8A88XkPfuvdBnrP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6EqvkP+h7af0/5mV2F/7y+2PfuvdBrrP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6WPYrn/AEh7++n/AB++7f8A3oKj37r3SO1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvdKfb7k43ed7D/frwkfX6jdeLNvfuvdJjWf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+690Ju4XP+i3rX6c57sU2545w49+690GWs/4f7z7917r2s/4f7z7917r2s/4f7z7917oyONqqCXZOzI8RSV2JoWhypyePrFVzkdx0U0UFZu9K+EqtTDWLM1FSIYUekWjlgYy3NTUe6911x/qz/tj7917p5wO+dz9dV0u5doby3PsnLihqMdLltqZ7L7fyVXj6mRJ5cTLNh5YpKiKWWKGQUza1aVI3CeREI917qzTfDbgwmzen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mgiNLV+690SlVCgKoCqoCqqgAKALAAD6Ae/de6U23D/km/B/XYHH/oy9se/de6TXv3Xuve/de697917r3v3Xuve/de6j7zpIh/CN0UlNW02P3ABg6hKkmalp90bUwlDS19PQV4jjDRVdG9JXwwyAyI7VcQaWOm8p917ppzT2xXXfF/8AfhZS/P0/4zZvU/8AE+/de6TktVDAjSTyRQxopZ5JZEjRVXkszPYAD8k+/de6F2alqdv7YwG3KgVdHka5ZN4bkx8wyNIYq/NLp2zS5DH1qx6ZqbDLSSqNDCJqufSwaWZB7r3TH7917r3v3Xuve/de6WXXRt2FsMn/AJ7Tav8A7vYPfuvdIDG/8W6g/wCoKl/60L7917qb7917r3v3Xuve/de697917r3v3Xul/RH/AIxbuYf9n/sY/wDru7i9+690gPfuvde9+691737r3Xvfuvde9+691737r3TnlTeah/8ADf2r/wC8vR+/de6bPfuvde9+691737r3Xvfuvde9+690tdgG2dr/APwyuyh/t+ucqPfuvdIr37r3Xvfuvde9+691737r3Xvfuvde9+690o2/48XG/wDiQ98f+8dtL37r3Sc9+691737r3Xvfuvde9+691737r3XTfpP+sf8AevfuvdLTsb/mYW/P/Dz3R/7u5/fuvdIz37r3Xvfuvde9+691737r3XvfuvdKjBEf3f7G/wAdpYO3/o1ttH37r3SX9+691737r3Xvfuvde9+691737r3XvfuvdCJvo3xPWH+HXaD/ANfbNn37r3Qd+/de697917r3v3Xuve/de697917pywn/ABftu/8Ahybe/wDd1B7917pY9UwtLubF0gWpWbclNktnYeWlEk7zZ7cuJbD0GLko6YmZ461qlaGQhGVBPrIbRpPuvdCXrH5uD+QRyD+Qbe/de69rX+v+8H37r3Xta/1/3g+/de69rX+v+8H37r3Xta/1/wB4Pv3XunWjYf3f3TY/XO9d/wC2FDui/v3XumrWv9f94Pv3Xuva1/r/ALwffuvde1r/AF/3g+/de6Um0dn7s7B3DQ7R2Jt+r3XurJx1s2NwFBV4iirq6PHUj5CvamlztTSU5MUEckzIZgxVTpDHj37r3TZmMVlNvZfK7fz1BLic7gslW4fN4qeakqKjF5bG1DUmQx1TNj5JoDJBKrRyeKV1DAgMffuv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FVFVZ7F5eioJ9o7u7b3FvWjm21NDkNEGSqDkErMtDk6GWGaOqjFPNRVdFVDKe691Oy+/+k5sv2bujH1uUw25t4bx+VFBjsrt/b+RqRUdddkbH3ThNkU9Zt+rrcbjMfCf4vi6WmoqWOaWRop1rJ8bToktT7r3Tc2Z+LiUtbTNtcy11Vt2DEPkqSfsY0dBmcbjOwsedz7Xp6vKxOtTkpI+ua6cZZKmlgqJa4RUH2qyUy+6911unevX2Ym+MmzevK3IyYrZvbMNauPr6HNU1Vj6Lde99s1eObPVmUr6ynrM25ppo8vU4enoMa0kKGkoYkPkm917op1z/U/7c+/de69c/wBT/tz7917r1z/U/wC3Pv3XuvXP9T/tz7917r1z/U/7c+/de69c/wBT/tz7917pYUDH+4O6uT/x+GwPyf8AnS7l9+690j7n+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/259+690bf5wOW+Q2ZIP/MAdKfS4/5ozgffuvdFIuf6n/bn37r3Xrn+p/259+691PxmWyuEroMnhsnkMRkqby/bZDGVtTQV1P54Wp5vBV0rJImuN3jbSwurFTwSPfuvdDX3rlstmIumazMZfLZmsPSW2kNXmMpX5WpWM7nzM3hjnyEkjpGHd3WNSEBZiACxv7r3QC3P9T/t/fuvdf/R1P8A5EyX+QPepI5/0x9nfT6f8ftXe/de6BzWP8f949+690verHH+knYf1/4+3Af+7OP37r3SC1j/AB/3j37r3XtY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3XtY/wAf949+6913rX/W/wB9/h7917oSomH+h6v54/0l4q31/wCeWrL+/de6DXWv9f8AeD7917r2tf6/7wffuvde1r/X/eD7917r2tf6/wC8H37r3Xta/wBf94Pv3Xuva1/r/vB9+690JPbzj/SPui55+7pfwf8AnWw+/de6DbWv9f8AeD7917r2tf6/7wffuvde1r/X/eD7917r2tf6/wC8H37r3Xta/wBf94Pv3XuhI2A6/wAK7R5/5pvUf1/57LC+/de6DfWv9f8AeD7917r2tf6/7wffuvde1r/X/eD7917r2tf6/wC8H37r3Xta/wBf94Pv3Xuva1/r/vB9+690td0sP4D1tz/zBmQt9f8A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APe7xZ9+690Hvv3Xuve/de697917r3v3Xuve/de697917oSexjddgf4dabWHH+vP7917pCQn/cVlR/XK7Z/3ihzPv3XulPsPedRsbNSZWKjFfDVUL4+rpRVPQzCJquGtiqqOsRJPHNFLAhUtGyspdLKzLJH7r3XLfu96zfmYgydTSChho6M0FHTNVyZCoMbVktdPVVtfKkZlmmklZmIjUKoVLMVaR/de6RHv3XujNYbe3TGMy2BmbAQx7cwVXumpyeCn2Tt7eddvSDNVVdUbRNZnNxGlqaKXHY6qxmGyNDDO1Os2NfJUtRV1VfPKfde6Vmyd79S5uRcDTbbO2cxW7EyuPhzeJ2BtuqqcLXUOz+sKjICgnfICpnlkXam+KGGtqZjJI2RNTUkHN5bxe690E/b269i7uzG6MztWhw2Ngyu6Frdr4jB7CxWwIdubWXLZ5/4VkKDCy1FPUVUtLPg5Z545/Gkyz08EaU0ELy+690CPv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917pW7/N9+76P9d57qP8A63qj37r3SS9+691737r3Xvfuvde9+691737r3SkwJtj93/47ajH/AK8+N9+691nxn/HobqH/AFcdsf73W+/de6Snv3Xuve/de697917r3v3Xuve/de6EbPH/AIxn12P6ZzsD/eTiffuvdBz7917r3v3Xul31kjDfe2siJlgTbteN2zSO2jVFtCJtzPSxtqX92o+0FNAOS0kiKFckK3uvdCVLO0jyzMqRmSSSZlDMyoZHMjKHckkC9rk3/r7917o8nx927kOtesd0drZSKXF7l7RpI9m9d08reGvi2ZFUxZbMboSErrjSumjp56aT6+KmpZQVir4zL7r3Ul6qSV3lleSaaQhpZpneaaVgoUNJLISzGwAuT7917rj5/wDD/eP+N+/de695/wDD/eP+N+/de695/wDD/eP+N+/de695/wDD/eP+N+/de695/wDD/eP+N+/de695/wDD/eP+N+/de6cqWY/wzNn8eTB/j/m9U+/de6k7d3RlNq5aDNYdqVa6niqYU+9pErKYpV07U0muF2U6lDa43VgyuFYG49+690rqjtfM5ehmw+7tv7J3xt6eRJ/7vbn2vR1eKpauFTHTVtFTIVjSaFWkELujldRt7917plpc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09Z7h7YxVHPR5PEQTLVHFbel8sLRjRNWUUbEA1TUvuvdIzaXWed3ltndu6MVW4OCm2dWbPpa3G5KvkpMzlId47gTa8eS29ReJhWU+OrajHQ5do31Uv39CWRhUAj3XuhH3B8Z95bVos7mdwbm2JRbYw1TvCOk3dSZXNbg21umi2ZnNubbyOX2fkdsY6tOQppK7c1HRr4k8sFRTZClrYqSqo5IffuvdB9NtnKbPl7N29mkoxkqDZ+CkM2PyFBl8fV4/M7s23nsPk8Vl8ZJLT1VHXUVRS1tLUQStHNDJHIpKsD7917oNffuvde9+691737r3Xvfuvde9+691737r3Sw3L/xZevf8Nn1v/vfZw+/de6R/v3Xuve/de697917r3v3Xuve/de6V/X3G/tjn/s8dsf+7uD37r3SEx3/ABb6H/qDpv8ArSvv3Xupnv3Xuve/de697917r3v3Xuve/de6XdGf+MZbjH/Z97KP+22/n/fuvdIT37r3Xvfuvde9+691737r3Xvfuvde9+6905ZT/PUX/ah2x/7zVJ7917pt9+691737r3Xvfuvde9+691737r3Sy2L/AMXuu/8ADN7F/wB56+yg9+690jffuvde9+691737r3Xvfuvde9+691737r3SiYn+4+NW/A7A3qQL/QttHagJt/sB7917pO+/de697917r3v3Xuve/de697917ro/Q/6x/wB69+690sewud/b4P8A2eG5f/d1P7917pH+/de697917r3v3Xuve/de697917pTYT/iw9hf47Vw3/v0NuH37r3SZ9+691737r3Xvfuvde9+691737r3XvfuvdL/AHub4rrX/DYCD/188z7917pAe/de697917r3v3Xuve/de697917pxwvGd2+f+zhwH/u4g9+6901RcxRn/m2n/Qvv3XujB4qsq8hs/aVdUKs32lPk9sivWWsqGmGDq1qqKhrpqglEqKSjraaCOCIhUo1pLC5Pv3Xusms/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917p1pHP8A3N9Oc51//AMm0O5T7917pq1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3S5xdOtXsfJjce6pNq9ZQbkFV2C2PmjTP56CnxCT4TbOBp3Q+aasqEZSskixRhfupVkWmsvuvdOGTy1StRtLMZjaVM2YNOtJ8fPj3SCR8ZtrHPM0lPvfe0DsjMzOklTJJUtHNVTI8srxLFJJQe691io6bMx5rdGFw26qeq7FrKd63vfvevctiOtcMT46rbO2aiLwhapRAadUpvE4aEQwimNMzYXXXujF7Y6k6pzOzerYHpszRfGjPdU7l37V71gyOYxeWqO29oVWazO58NuWhxqNRVy4nHbX+2ywqaVZQZ/9wtRFSwxrTb690GGw6Grz3a/Vb75gaXsre+b2Xitp7FwNHTU+J6A6rrclTx1G6JsZXwVFNR19Ljmaox9NVUzfakCrq4zOIoo/de6U+ztq4eXbvYuO21umPOJW7e7izXc3d+Rr6Fq3LbLoNk7gjxdPtjDVVQZsx/FPFJmTT0kj6MfQCu/eTIQpH7r3QDVtdhanDbbzGY21U0HWNDViHpLpKNTU5zs3OVLinpt5b1gp1leqjqnmUgFZRUeURRCanl/3Ne690qaOm3bHu+sVKvG5v5A5zGz1O4NwVVRB/cn48bKanY14SuZpaeKsippWFTUhpBGrmKIzNNJJk/de6hRjaku1ctQUOWymD6DwWVhm7B7AljaHe/fu94maqhw2HhqWEjRM/keio3kMdNGXra1zIWZdda67rsjVyVW09zbm2pTVGcmpvsvjz8eaINJiNv4mR9cG793Qv4mMJaM1M01V45a+WNpJGgpYCaTfW+myT+My5fdmBxG44Mt2LlKSorO9e7K8NPhuv8CUIrtsbbdBFZ0WFqcR0/iZmh8UQplpmbD+690KGXamXJVS0UryUSmFaOWVdEstItMi000iHkM6BWYH6E+/de6bfIf9UP8AePfuvde8h/1Q/wB49+6917yH/VD/AHj37r3XvIf9UP8AePfuvde8h/1Q/wB49+6917yH/VD/AHj37r3Uugk/3IY/1D/gfRf0/wCVpPfuvdSM5J/ue3BZgP8AfwZ3+n/O2m9+6902eQ/6of7x7917rjJBj8hBV4zLwCsxGWoq3EZam1IjzYzK0r0FcsErKwSURyM0MhUhXCsQQLH3Xuia7+oGxe+9649jk2Sk3buKOnkzX2H8YqKE5eZ8dV5Q4mKGkNRNTmKaVqOFKdmYtAoiKD37r3SS9+691737r3Smw/8AxYN4/wCONxH/AL0tGffuvdJn37r3Xvfuvde9+691737r3Xvfuvde9+690rtyn/cP1/8A4bPrP/e+zh9+690kGbSrMQSFBYgC5NhewH9ffuvdDTtw1+1drd6bFyEWDGX3jsrC7VmUb96/iTb9ZhOzcHvermyiS5IeQLHh56YpTszrKwupVX0+690rNx76Gf3d2XuWWvpKbZXZncjb6kiG/NizZikiGRzsMtRLHDlohPkIsVnMljxHO322qqmk1rNFDKnuvdAxvjEyYncleRjoMZjcw7bh29BR1NJW499tZmZ6vCy4+roKzIQyQiEiMaK6coyNG8rSI59+690kvfuvdKXZBtv3rs/07H69P+23nQ+/de6TXv3Xuve/de697917r3v3Xuve/de697917pW0P/HiboH/AGduw/8A3Tbk9+690kvfuvde9+691737r3Xvfuvde9+691abLlv7nfHzG7Xy23PkzvvJ7g6HpN0Qdk7Z6b6kk2nicZlOt83RYnbEm/M/gcjuaLC4DGZjI4GryjZhZ4KB67+GCjx0sdM/uvdFX+ZBv3nW3NGSOuekVJx4IoCR0xgQfsQSSIf+OVyfTbk+/de6K17917r3v3Xuve/de6Gbt83ounf8Omdtj/14Mt7917oGffuvdf/T1MPkGzDvzvDn/mr/AGX/AE/57St9+690EGtv6/7wPfuvdLvq9m/0j7F5/wCYrwX9P+djH7917pCa2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de6EiJj/ohref8AmpGM/p/zzFWPfuvdBvrb+v8AvA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917oRu22b/SLufn/lKpP6f862H37r3Qc62/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvdCLsJ2/hfZ3P/NOqj+n/PYYb37r3Qda2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de6Wm6GP8C645/5g/If0/5+DnPfuvdIvW39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917qfinb+KY3n/lPo/wP+VhffuvdTt0u395txc/8v3L/ANP+dhJ7917pi1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de6EHabN/dDtLn/AJhvb/8AT/nusZ7917oPtbf1/wB4Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvdCP2Kx07Bsf+aa7W/p+POPfuvdMG3sSuco8zQR5nA4vIiowmSpYtxZjHbdoq6jx0OQpsilPmMxJDSLUxmrgkjppZkaaMTeItLGkUvuvdOP8AcTJf89L1x/6M/r7/AOuPv3Xuvf3EyX/PS9cf+jP6+/8Arj7917r39xMl/wA9L1x/6M/r7/64+/de69/cTJf89L1x/wCjP6+/+uPv3Xulz1vtCtoN3UdVPuTrswpjNzI5TsvYcpT7ja9bTo7RwV7vpDOutlQ6Vu7WRWYe690hv7iZL87k64B/I/0n9emx/pdckR/tj7917r39xMl/z0vXH/oz+vv/AK4+/de69/cTJf8APS9cf+jP6+/+uPv3Xuvf3EyX/PS9cf8Aoz+vv/rj7917r39xMl/z0vXH/oz+vv8A64+/de69/cTJf89L1x/6M/r7/wCuPv3XumbNbcymChpKqplxVbQV09ZS0uSwWbw24ca9ZjoqeeuonrsJPPGk0aVVO5jkZSVcFQQGt7r3Sf1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v8AvA9+690rN/Of7+b45/5jLdP9P+d7Ue/de6Setv6/7wPfuvde1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de69rb+v+8D37r3SkwLH+H7uuf+Ybj/p9f7zY337r3WfGu390d08/8vHbH4H9a337r3SU1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/3ge/de6EbPMf9GnXnPP8b3//AE/rivfuvdBzrb+v+8D37r3Xtbf1/wB4Hv3Xuhe6+xyUeDzW5alFmlyM391MMhVWWndBDltwZF2VlZJUg+2pIAVdXSqqGsGhRh7r3Qv9W7Rn7B7J2Ps+KjlrKbLbjxkmbVKZ6qng2zjapMjuOoyGlHWKA0kckBllGjXJGhuXVT7r3R5eytw1W4t8biqqieWSDH5OtwuNp2WOGnoKLFVLUbU1HSwgRxRtMkklowAdQ/AW3uvdIbWf8f8Abj/inv3Xuvaz/j/tx/xT37r3XtZ/x/24/wCKe/de69rP+P8Atx/xT37r3XtZ/wAf9uP+Ke/de69rP+P+3H/FPfuvde1n/H/bj/inv3XunKlc/wALzXJ/zuE44/461P8Ah7917pt1n/H/AG4/4p7917r2s/4/7cf8U9+690IvWuwJt/ZidshPPhdh7cikyu/93Flp6TB4Sjg+8qaOnrHFvvqmMaIVQM0SsahkKoqye691I7K7On3/AC0GIxuNpMB13tarn/uBtemx0FFLi8f9uKGnrMk662armiDSyLqtEZXS7sDI/uvdBlrP+P8Atx/xT37r3XtZ/wAf9uP+Ke/de69rP+P+3H/FPfuvde1n/H/bj/inv3XuuaWYTPJLDTU9NTVVbWVdXPDS0VDQUNO1XX19dVz6UhgghR5ZpXYKiKzMQAffuvdEn7z7qxu9qKl2Ts+GrG1sZmmzGRztcklJVbty1HSyY3GVVNiyb0uPpY5600a1F6iYT+aojpntSw+690WvW39f94Hv3Xuva2/r/vA9+690rdlsTl64E/8AMIdgf0/54PJe/de6SWtv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de6UFS7f3Vw3P/ADEG5fwP+ddiffuvdJ/W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvdCP2y7f38yvP/KBtn+n/PLUXv3Xug41t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v8AvA9+6917W39f94Hv3XuhI68Y/adl8/8ANMMv/T/npsQf+I9+690G+tv6/wC8D37r3Qm9aVW3Jf79ba3LuiTZMe9NjTYPE7regymSxVBm8XuzEb3x+M3LTYNZKxMdlGxBxs1VTUtS1PJPFLJTvTrOye691wxe4Jeu6bfmLxuTx2Yym7ttVGxJ63ESyVGNoMHX5Siy+ZrYaupgVZ5KuGlShjSK6rFPUtI0U8USN7r3Sm2NVbRz3Vu9euspubD7L3XkN9bH3xt/L7ioMrLgdxUu2MBncBW7VrMxhqeqfHVMYzLVlDUVUIpZP8ogmmhkeBm917oG66COkqGggyFNkQhYPU0cdUtKWU2tC9bHFI/5ufEF+hVnDXHuvdDR2vX0OYOElw+5dmZXb+L2L1ngKCohw2Ood0x1O3eu8ZiMvjq8w0QyMhXJQVSCpmdg4IJl8JNvde6QuzK7CYKPK7qygosplMQaKj21terlzNMmTyeWjqEnzlVXYCajq6eDFQxNNHLS5CmqVrpaF4WaOOcL7r3Sr7AzO1d3bM2DuTEw7Ywm7sPh6bY29MBj4Nx0WRmp9qRfwnYudoTk66so6ujfBR0FBUSIsdalZRzSVHkhqKdh7r3SU25uOv2xgavK4Ldddgd0Ue9NoZbBwYqfI0WUpzicHnqOqz1HkKNFji8QyC0jq04eRKhlVHjE1vde6Vu6N0bC3J1tHVUGKTa/Zcm7NtR7vwmNiePaW5aDEYLNw4zsDbNBHCIsVVsax6LP4xZ/tzKaSrx0MUVTV01F7r3QMa2/r/vA9+6917W39f8AeB7917oQeqGY9lbCF/rvLa4+g/Obg9l+6DVYSj+g3/HT0LuRZPC5rsH9LiA/slXpMZ+Qtk6og8GaS1rW/V+PbWyim2wg/wAC/wCAdGHua4fnfcnXgbib/j7dMutv6/7wPZr0AelBS7v3VQ0uYoaDcebx9DuHG4nD7gocfk6ygoc7isDQnG4XHZijpHSOqhpYC0UEc6sqBnsPW1/de67TeO7YvtPFujcMf2C51KHRmsin2SbowMO1dypSaZP2xkcXTU+NrglvPSxR08uuJFQe69021+XyWUaJ8jWz1kkXnIlqG8kzvVVT1tTNUTN65ZHkkYtLIWcjSpbSqge691A1t/X/AHge/de6V9Ex/uFuTn/mL9kf0/50u4R7917pIa2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de6etwOf4jH+P9wu1v6f88rRc+/de6Zdbf1/3ge/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/wB4Hv3XuhH6kY/6Qtvc/nKf0/GFqT7917ph2bvbcmwc9Tbk2vkDQ5KCOWmlV4oqmiyOPqQBWYvK0M4MdRTTADyRSKRcK66ZER1917q0DZnycqsvF1VuTC4yHbOyNvV2Tg3Ts/bNTO9bX5KpH22fx+dOSkaKrSGKSDKYlWKl2l8k1StS8wpfde6ECqqOm9zVlflsd2zFt163LZDIV2P3LtarofD/ABOrOQ+2xUSrRQiOLyPEiwvKqhAuq1i3uvdSqWo6X2tQ5LdmR33iux46SkjXBbGx9PFj8nl8rNKaYxZSiqpZpBEhKyM0sUccUWqdxORDTVHuvdF335vvJ9hZmlzORxmIwqY/C47AYvD4Raj7HHYrGGR6an89US8rhpZLyBIk06VjhiRQvv3XulZQdb0eV2L/AHq28KzeJx+z8zuHen92t07b/vD19msdPOsWPzHVlZS/xWsxSRLSyS5SgrXeTzM8dOkcV2917qNjti4Iby2d1tnqzM0W4d5YvZyvuSiqMe+H2vu3sXFwZfZ2Em29PTGXJUarXY2lr6uHJ07+WaQwpoh9XuvdRDsuhxmM6xmz9JmafL7q7N3NsbdNFSZrG+CjpNrZ/C4WtTDGTHuYavVlJ0808lRETCjiKzOo917p0TbnX8GG7MytTjt6VSdc752XtB3g3hgaI5GDdG58xhsvXfZybcn0yUEWLApUE+ipd2eQwIVRfde6etv9X7WzGa6vp5MpUQ47enVmf33l6CTeu1KPdrZPC0W4aiKPbeDqMe07UEj4an1lqaodUlqbTf5Pq9+690Ce0sNnN65XbW3dvY58juHdVVQUGMx8Hk0GqrEEs09RKquYqWmiElTV1BUiKCOSVhZD7917oxdTt/459RV8+F37Wbq783rQZWfE7nw+w6yo2ZsTZ7U1YlFlaZMv56atyOToytSvjirTC0i+GeGkkUOfde6D7tzqiHZuL/vvsjcdF2B05uWrqaLau8aKdDk8ZWy0b1y7T3tjCkUtJkYESRNbQIJNA8sdNO4g9+690jtxVC0+787NJSUWRiGVycc1DkoWqKGrhqNcE1PUxRNG+kq5s0ciOpsyMrAEe690p5O/M9sjF4/M5nK4jGYLHZLZ393aKrptwZrLZWbq2lnraTa2IaXI/eV8VYlSkOcqslWFf3KGKWuo1NKje690UbIfJPcdZlawnam0slsyfFbOwsPX+6YctuLbrU2x98x79xWSyCmqp3kyFXUnIU+Vmg8EFRT5PIwpSwRzxrD7r3Sbxfd2WxWR3JkodnbKqJd3yPUbnirV3lUR5muqto7q2hlcjVTfxkVCz1qbuyFbPJFOhWpgpDB4YY5YZvde6wYbunN4ClixOL23tan22ItzLWbUZ93z7eylVuNqCWPLV1JUZd5BW4+TE4mShrIJYpmNHCKt6pGmWX3XupC95Z58VvDCVu2Nn5PF71zO+89kqStTdiJR5Df+b2vnsjJi5MfloHj+1m2njkpGkaSRopKiOqepUwiD3XumSp3Rkd4Sdk5/JRUFLNNsrbOOpaHF0iUWNxWG29uXbe29uYXHwAs5hocdSUtHHJPJLUSrGJamaeoeWZ/de6DHW39f94Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvdK/crt/Buvuf8AmEK38D/nvc57917pIa2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/wC8D37r3Sv6+Zv7+7I5/wCYv20fx+M1AffuvdIXHs32FFz/AMolN+B/xxX37r3UvW39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917pdUbN/o03Hz/zHWy/wP8AnQZ/37r3SF1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v8AvA9+6905ZRj5aLn/AJcO2f6f885SD37r3Tbrb+v+8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/wB4Hv3Xuva2/r/vA9+690sdiu38bruf+YO7E/A/59/k/fuvdI7W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvdKFmP8AcnHc/wDMe7z/AKf88ntb37r3Se1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de68WY8X/3ge/de6V/YLt/f3e/P/MX7l/A/wCdzN7917pIa2/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvdKbCO38C7A5/5hXD/0/HZ23T7917pM62/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917pf73YjF9a8/8AMARn8fneOZ9+690gNbf1/wB4Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva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AJ+52QRb/wAPKt/Pv3XuknJvzc82SpstPWUNTWwTZGpnaqwOAqqfMVeZUJm67c9DUUrQZaorgF++nykdRJUWHmaSw9+69077FydfmO1dq5bKVUlZkMjvLFVdZVSkapZ58mjuQqgKii9kjQBEUBUVVAA917oOPfuvde9+691737r3Xvfuvde9+691737r3QixH/jEtav/AH8XGH/12qu/v3Xug69+691737r3Xvfuvde9+691737r3XvfuvdCH2ub9g7lN7/5TSc/62NhHv3Xug89+691737r3Xvfuvde9+691737r3QhbFNsZ2V/j17OP9vu7D39+690Hvv3Xuve/de697917r3v3Xuve/de697917pY7mP+4Prwf02lX/7zv3Ne/de6R3v3Xuve/de697917r3v3Xuve/de6n4r/i6Y3/qPo/8A3IX37r3U3c//AB8m4f8AteZb/wBz5PfuvdMfv3Xuve/de697917r3v3Xuve/de6X+1f+PS7O/wAdvYD/AN7fG+/de6QHv3Xuve/de697917r3v3Xuve/de697917oRewjddh/wCHXG2R/vM/v3Xug69+691737r3Xvfuvde9+691737r3QhdWG29aE/9Wrdf+87Srh7917oPffuvde9+691737r3Xvfuvde9+691737r3QgVp/4xXtkf9/A3wbf+S5t737r3Qf8Av3Xuve/de697917r3v3Xuve/de697917pV78/wCP53rb/nr9zfT6f8Xuf37r3SU9+691737r3Xvfuvde9+691737r3SjwZtQbs/8NyMf+vLjvfuvdZsaf9+nugf1r9tf9DVnv3Xukt7917rmscj6NCO3kk8MelWbyTen9pLfVvWvpHPI/qPfuvdZRSVTJWSCmqCmP0/fuIZClDrm+2T7xgLRXk/bGu129P149+69121HVrI0TUtSsqTyUzxtBKJFqIp0ppadkIuHWSSONkPIZ1Ui7AH3Xus1FjMhka2kx9HSyy1ldVNQ0sRCxCSqQBpYjLMVRfGrB5S7AIvqcqvPv3XulrmlkfrrryMRSiR85vxY42idXdvNjISI1Iu1pFaMlbjWrJfUrAe690gkpamSmlrI6eeSjgZEnqkikamheS3jSWdRpUtcWBPNx/X37r3XCaGankMNRFJBMqQyNFMjRSLHUQrU07mNwCA8bpIht6lYMLgg+/de6HegmnfaGx/TPDRJhsqtHDLG0aeRd25FMjUxauH8swYmQE3AVbgIEX3Xuj29J46u606Xn3mhx+G3v2fuGkbBVUi4+o3KnWkWGMtBk8XJd5KSOWqWeR4yqsono6g2l+38PuvdN4fSAoYAAAD6fQf6/v3Xuu/If9UP949+6917yH/VD/ePfuvde8h/1Q/3j37r3XvIf9UP949+6917yH/VD/ePfuvde8h/1Q/3j37r3XvIf9UP949+6905Usn+4zM8g/uYb+nH7tTz7917pt8h/wBUP949+690PuD3Nltm/H+pr8DmZtu5vdfbAx9Pk8CkdNmq/EYPAioq6PJZZlMqU8U6N4hTMpDMY2JSadT7r3SC2f2luTZu4spuGac7ootzOI9/4DPuMlQ72xzp9tUx5Na0SD7lYCyU1QVOgBYnWSn1Qt7r3Qobs6T25Jkt103V/YOA3VlqKB91YPrbGuuSzK7RbxfdUkGfiqpYp6umlkdaamKmSSAQeRy8okPuvdFym81NU1VFVRT0ldQzvS11DWQS0ddQ1MTFZKatoqlUlikUghkkQMP6e/de64eQ/wCqH+8e/de6zU8dRVzLBTRvPM+rRFEut2Crqc6R+AASx+gHJ49+690EdPvLJZvde4d2V276uh+P/TeYvHQbf3AiUXYe/MCkM1NPRwUdUsNa9VWTRT46oqYzDJTrRweOxraqD3XuiP7v3PkN6bnze6sosUdbm65qpqeAD7ehpYolpMZi6VgqloaOljhpIWkBdo41MjM5Zj7r3Sc9+691737r3XvfuvdKrZptlq3/AMNLfv8A7w2RHv3Xukr7917r3v3Xuve/de697917r3v3Xuve/de6fqg/79fED/q/bjNv/IfivfuvdMPv3Xuve/de697917r3v3Xuve/de697917oQ+1TffOUN7/5Dtu5/wAf7sUd/fuvdB57917r3v3Xuve/de697917r3v3XuhF6+NqXsj/AMRplh/68eJ9+690HXv3Xuve/de697917r3v3Xuve/de697917pd7pP+/X6zF+BtnNcf0J31lb+/de6Qnv3Xuve/de697917r3v3Xuve/de6X/VX/Mytg3/57Tav/u+p/aW9FbVx/RP+Do+5ZbTvlq3pLH/x8dJXMNqrpzYC8jHj6e2drFLKMf0R/g6Meem1c0XrUArNJw4fEeHTV7MOgh1737r3Xvfuvde9+691737r3Sto/wDjxNx/+Hbsr/3T5/37r3SS9+691737r3Xvfuvde9+691737r3XvfuvdPWfP+5CL/DC7YH/AK7FH7917pl9+691737r3Xvfuvde9+691737r3QidUG2/wDAH+hyn+w/3DVHPv3Xug79+6907YHN5HbWaxe4MTJHHksPWw11J50MtNJJC12pq2AEeWnmQtDUwMdMsTPG4KsQfde6O2aqgrqbH5nD+RsHnqJMthzM4knhpZpGhmx1XKqqrVFFOk1FUlBpMsTlCyFWPuvdYvJ/h/vPv3XuvGS3JFgOSSfp7917owGKpMbWdP7n2SlViJN1Ue2KLvKKkVlp8/FLR18TZDEwyVMIFVB/dF0rJqOGr109TrleEj1H3Xupe+d4x4rafVeIgrckk24fjp01V19IsO2Ztq5Ja6syYrMrNTCiFbDmFkgo6lcp92+oQ+PQup2k917pe7kyAquy9p01LULl8Vj/AJpHC5qXMYrCY/J7VrZM/T0G39kbehxrzeTbWQx33szSVDXnraXS0cDRLCPde6B7OZSTbOyF3btKsSgyOQ7g7Hxe+90wQ0DZHE1NC9NPsPbiVMsci0ePqIpsjVKqpEktRGiXfQie/de6dOos3j8duiXfW8K7bVHT7tz+B2hI+4KaGlwWQx++aoZnf2cX7KB6egaDHJFPT1TRRUqGr0CSESRBvde6QGBz+9Ojuwq2XbmVeg3VsbM5ja1ZUSqtVR5yixuSFLW0GYpdX+UUOQWnhqCgkV/81PFJHNHFKnuvdPvavbNJvjYE+wNoddYjrTb2S3Bl98bqwuBzk+Tx27N419GsFLUNTVdLTrSUkDqJYaNGaESLCyongS/uvdL7Kbp2vj95drbnw26thfZbhw+zo9o0sFbV7coYpMFV4A5mfI1UWGdcaAtNXM1OlKxqo0nEjJ5AX917oOe5OyutkVus95ZbBReLdiVeZrdu4rIZehmkydVX10M++9myUccUi43KVGP3LXVGMyUrZOnpKPFyUBmWV6T3Xui6w9nYzEVGHilzu35970nXHc2I3dvvFUNXLjN1Vz7RyVR0rTZOZ4C1bnMbltElPmkp4x45sZT1MjHGM0PuvdKWPsXqMR7afNjbOWoY+m+m8ZuilocTNBLWbjxPe1DundmHfBSYJKaSsjx4nmr5hO0c9JFJTRVLtWtHD7r3QAdhZuiyWE23j8hk8Rufe2Ky24/4lu7BQmOjyO0azGYg7SxVbVT0dHPV1FHUR5XxyTx+SCCSKmZmSOKCk917oJvfuvde9+690otv/wDAXe3/AIY//wA0Hbvv3Xuk77917r3v3Xuve/de697917r3v3Xuve/de6Vu4/8Aiz7B/wDDSrP/AHu817917pJe/de697917r3v3Xuve/de697917pWbBNt9bK/8O3bf/u5hHv3XukRQf8AAGi/6hKb/rSvv3Xupfv3Xuve/de697917r3v3Xuve/de6W9Gf+Mb7hH/AGe+zTb/AMgOdv7917pEe/de697917r3v3Xuve/de697917r3v3XunPK6PLQ6GZgMBti+oBSH/u5SmRQATwGvY/kckD6e/de6bPfuvde9+691737r3Xvfuvde9+690r9kf8AF6rf/DR7B/2/9wslb37r3SQ9+691737r3Xvfuvde9+691737r3XvfuvdKBv+PLxw/wCz63j/ALztbbHv3Xuk/wC/de697917r3v3Xuve/de697917rx4BP8AQe/de6Vu/v8Aj+96/wDh27j/APdxN7917pJe/de697917r3v3Xuve/de697917pSYX/ix79/8NjEf7f/AElbf9+690m/fuvde9+691737r3Xvfuvde9+691737r3S83ob4zrn/DYcY/9e/L+/de6Qfv3Xuve/de697917r3v3Xuve/de6ccMbZvAn/q/YP8A920Pv3XumxOUQ/1Rf969+691y9+690PdDXxZfbW3spTpDA1HRU21cnSwqyCGv27QRUtBVgTzTSutZQCnmeZgoapSrCqERR7917oytJsPY2YwvXe2mxVPjt6b56s2nvzBVeEzG6W3nmMrQ5Hc2Q3xBX4jMPW4dKPMYjCx0OANJQmVcoUkSGeLy0snuvdcdrdXdaVe/dobbrcr2RuSg3X2Jv3aeN/hFLhcKJ8RtDr3GbtEVf8AxmkgrFy6VmYixsgp6bwzvSy1EEKxTQwSe690w782PhqPr7aW6aHH5rCZ/GdddEybko3x2JosHmT2JjdwumcqYqemgrDmzJhg2SrJVip5xJGkdNHIjSSe690D1G5/gO5Rq/5fGxTbj/lS3HY29+6901a2/r/vA9+6917W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7w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7917pl9+691737r3Xvfuvde9+691737r3S62wf8Afq9kD+uAwf8AvG88d7917pC+/de697917r3v3Xuve/de697917r3v3Xul/v03XZH/iPttj/eZ/fuvdID37r3Xvfuvde9+691737r3XvfuvdL3rM23jRH/q17o/8AeVrffuvdIL37r3Xvfuvde9+691737r3Xvfuvde9+690u6w/8Yy24v/Z970P/AK7+AHv3XukJ7917r3v3Xuve/de697917r3v3Xuve/de6U+9+d67xP8AXdm4/wD3cz+/de6THv3Xuve/de697917r3v3Xuve/de6UGFNqHdH+O34x/68WP8AfuvdZscf9+tuUf1r9u/7wav37r3SZ9+691mp5Y4ZVklpoKyNdQamqWqkhkDIV9b0UsMotfUCki8gXuLg+6905YTJQYuvkqamjirKeoxmdxU8DxxSBIc9hKnCSVMKVAZfLAKgzwFhxIim4IuPde6HrDfIV8JuLIbrptqa8zuLsHrbsXdSzZyKfFVuU6+3I+5nx+Ax1VQSHGUtbUSsyBJZZKLRFHRSRUyyU8vuvdOWP+SEFPpmrNn5OXIU1Nu2gxldj96mi/hdLvPrvCdfZieClrsZWRTVIiwkMkLVizUwjleJ6WR0gqIvde6DXfeajzexusmhpDRwYh+wsRBrm+5q62Gr3nLvJa3KVOlfNVocw1FJUaQZkp45SqFjGnuvdBL7917rwBJAVSzHhVFrsT9FF/yffuvdGBrKSnw5p8BT1P30W36c4l8isksseQq46mSqyVVStPFBIKY1Usy0SyRK4pxF5B5NXv3Xuhu+MdNX1Xde2Kig/iiQYyg3BW5yox0jwxQYSTGNQSJlnWWJGpZqqaliMUutWlMTeJtF1917oWqutnra2uramoSpqq6ura6qqUEYSpqqyqepqalBGFULI7M4CqAAeABYe/de6j+Q/wCqH+8e/de695P9qH+8e/de6UEu2s9HRUtetJFVw1cWGqI4MbXY/KZKKDcVFLkcDPVYnHSS1MSVUME7xl4hbxur6WFj7r3TV9nktE0gx2TaOmoUytVImNrXjpcTIuuPLVTpGRHSMLFapyIiCLPyPfuvdZZcZmqd6SKow2bp5cg8seNinw2ShlycsBCzxYuOWENUshZQ6wByCQCLke/de6wtR5JErJJMblYosbUfZ5OWXF18UWKrdQT7HKyyRhaae5C+Gco9+NN/fuvdZv4bkv4IdxinLYVc6u2jWJLTuwzbYw5haL7NWM/NONYl8fjJ9GvX6ffuvdO4wWep4MtRthcxPO2SxuNpjR4rIVkWQr6eprY5aXFy00TLVOpgnulOXYeN7j0tb3XupexMXksnuvaop8bWT0tXuSixi1r0k0eKWvYs/wBpNlJUFOsqKrSNDrMulToRmsD7r3Uzs7bWa2jvnPYvNzU9TU1FW+Up6umnNTDUUORY1FKrPIqukkSERSROoZdIYXjeN3917pA+T/ah/vHv3XuveQ/6of7x7917r3k/2of7x7917oHvkL3hW0mF211PtuixmFy23MRmcfvPdOIE1Nmq2m3FXffDaVWXhURypDpfIVVPUO8gqHpGaH/LoJfde6Krv+wzeOsAB/cnrfgAAX/0e4y5sP6nn37r3SJ9+691737r3Xvfuvde9+691737r3Sn2ibZSs/8NXfP/vE5D37r3SY9+691737r3Xvfuvde9+691737r3XvfuvdPlR/x7WJ/wC15uH/ANwMX7917pj9+691737r3Xvfuvde9+691737r3XvfuvdL7s433pkz/0xbe/95uk9+690gffuvde9+691737r3Xvfuvde9+690v8AYhtTdhc2v11lB/t9w4vj37r3SA9+691737r3Xvfuvde9+691737r3XvfuvdLfc3/AB7XXP8AhtzMf+9rkz7917pEe/de697917r3v3Xuve/de697917pc9Ym3Y2wj/Tee1//AHeQe2p/7I/YejDazS9jP9Jf8I6S+U5q5T/Vz/vXtNt3+4cf+lHR1zn/AMrFd/8ANV/8PTd7XdBXr3v3Xuve/de697917r3v3XulTSf8eTuAf9nTs/8A3jE5337r3SW9+691737r3Xvfuvde9+691737r3XvfuvdPGd/4Hx/9qfbf/vN0nv3Xumf37r3Xvfuvde9+691737r3XvfuvdL7q8231gj/jkv/dRUe/de6QPv3Xuve/de6FfpSauHYNBj6Nl8OaxG58dkopXSOnqaCDbtTm1inZ3j/TU0dPPDZ7+aOIhJCPG/uvdGBQrLSUNfA6zUGTpIq7H1kYfwVdLNdRJEzgG6srxyIwDRyK8bqroyj3XuuiyjksABySSOPfuvdSIaSqqJYqenpamoqJ5I4oYIIJZZppZWCRRxRICzMxICgC5JAHv3Xummpz20qD7lMnu/CUNRTVk+PNP4s3kvJW0kUE1ZTpVYSjqqceJaiPU7TBWYPGjNJG6j3Xum596bBQlP77YxpBHEQFxG7mjeeSoaB6RZlxunVGFEjysRBoZSkrG4HuvdSshuPauLp4Kqs3Rg5oajJJjE/hGRpc5PGdVqqvno8Y8kyUtOCDLIY9TXCwpK91HuvdI7L9t7axmUp4MRjxu7Drjlerr4a3L7dnqMrKpJipBmcaskMMBsjiSjkMttaSIDpHuvdBvurtLce5qKfDRJR7f2/USI1TiMItRF/E0hlSamXO5KqklqawK8cU5p3lWkE6LPDTQuF0+690G3v3Xuve/de6WHYXO/N5n+u6M7/wC7OX37r3SP9+691737r3Xvfuvde9+691737r3T/gf+A28f8dmf/L3gD7917pg9+691737r3Xvfuvde9+691737r3XvfuvdKncH/Fp2N/htar/97bMH37r3SW9+691737r3Xvfuvde9+691737r3So2Obb12cf+zq29/wC7eH37r3SNof8AgFR/9QtP/wBah7917qV7917r3v3Xuve/de697917r3v3XulnSH/jHmeH/Z57SP8A6w817917pGe/de697917r3v3Xuve/de697917r3v3XunDJG8lGf+rJt3/wB0FN7917pv9+691737r3Xvfuvde9+691737r3Sr2abZes/8NTfY/2+x8iPfuvdJT37r3Xvfuvde9+691737r3Xvfuvde9+690+t/x5+PH/AGe27f8Aeds7b9+690xe/de697917r3v3Xuve/de697917ro/Q/6x9+690qt88723gf67p3B/wC7ab37r3SW9+691737r3Xvfuvde9+691737r3Shw5/3Db4/wAdtYof+xEwJ9+690nvfuvde9+691737r3Xvfuvde9+691737r3S33h/wAW3r7/AA2Qn/vWZY+/de6RHv3Xuve/de697917r3v3Xuve/de6cMObZrBn/q+4T/3aw+/de6bU/Qv/AAVf969+691y9+690Y2sx2O2yJ6TAYWXE4nP4/A1UeWqFy8tbuTFS46HLUkqVuXdtNNNK4qHgo0ihleOJnRjBCI/de6Z9Y/x/wB49+6917WP8f8AePfuvdcHnjQXdggsTdiq8AXJ5P49+69091cuGwWEzseWzEiVhzfX0dZR4nGRZiXEvVYzP1Yp6x5qyjjeoihYPUwRSHwOUp5HFR9xHS+690kzu/ZiPIv+/tqlSohSOYUmExwmpC9qmoakM9YUkC8xxedgTwzgc+/de6zJubZUkEFQ2V3FSkzSw1FCdt0FdW6YysiVcTrk4IBFIjaFBlaQSKwZBGVkPuvdd/3v2dQwU1cFyW4KqakmqEwNTRDGUVNWpI9NDRbiyEFT5JIiyipK443lgKR+emmkk+3917oJcpkqvM5TJ5mvaF6/MZGuy1fJT0lJQwSV2SqnrayWKioUjgiVpXZhHDGqLeyqAAPfuvdQffuvde9+690+5/8AzuD/APDG65/3jYGMHv3XumL37r3Xvfuvde9+691737r3XvfuvdCt05m8LiN110O6o8pU7Qy+zt9UG5qPEVVZT181Amza+sjmoUpqinR6iOSMLGZiQFeQIY5GWWP3Xuh5Rd1DdWGlqcNjc/3jl4YMd1x13i/sJNodQ7egtFjs5Voj/YrIsQWbHRtJ4YYylVMxdokX3Xug1zfY+P2rhsrtPZUlTnt37ngmg7L7JyFStVPmc1kIZIc5idpS00jNJRQyySQ02Rmk/fu9QlOkhgqE917qXRYGpxO0cFlN2UOYzmwsTuaoouvdoQUU04392LloRTSVeTqKUVEUdJKaeVcZSMxElOs7U0EslRWtlPde6VMEW6odyVMdJJRZzvLM0LrmMwZETaPR+1DC3npaesHlhgnhgkcVFQGkMYdo4jUTzSPXe691DiiwMW1s9RYnJZGj6nw9Yr9g7+0mm3V3Ru6JWqKXa2A85YrAzM320TOY6eN3qal3keSST3XuhI3RAKPcWZo9EUP2dfPSeKGR5IovtT4PFHJKSzKunSGYkkC5J9+690w3H9R/tx7917r1x/Uf7ce/de69cf1H+3Hv3XuvXH9R/tx7917r1x/Uf7ce/de69cf1H+3Hv3XupVCwFdQ8j/gbR/kf8rK+/de6lZKnkrs9l6SCE1M1VnsvBHTqodpnlykqLFpPB1Xtzx/Xj37r3RXu2t31m897V1XNn8juPG4Okodp7crsjlanMhcBt+M08IxlbVs0n2dRUtVV9NGT+2tRpHA9+690Gvv3Xuve/de697917r3v3XulDij/ALhN1j+uPxf+8bhpffuvdJ737r3QtddUGzMpicrjNzfw6nrMlvHY1JHlajLUWMymL2fBi89l961OEfKTRUaTtJSYmAS1Sy38vighlmlVD7r3SxbCdQ1tLhTnN20kdFR4HbEFM+2Fp8XlcVQVWbxea3PV7ogbCPLnsgkWcydLDoMFXEuNW8VSqrRw+690n8hF1zhNj7plwNRR5nN7np9m4aDG5urgr9xbHMZpNx7gyGOngxUdHUNPWY+aj++ocijU9JUmilgqTM9UvuvdAp7917r3v3XulPuA/wC4rZH+G1ar/wB7bM+/de6THv3Xuve/de66JCgsxCqoJZiQAABckk+/de6XOaEW2sPFtenaB81k0pcjvKqhaujqaEjTUYzYdVFLoUNQuoq8pHo/4GmKnlVZcYrt7r3SH9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Sooz/vytxj/ALOjZZ/22Jz/AL917pL+/de697917r3v3Xuve/de6dcDR4zI5zC4/N5lduYauy2No8vuFsdVZdcDi6qsSDIZk4miKzVX2sLPP9tEweXToUhmB9+690aiX4zbKqdmZfeu2e7MzuzF0GD3FlsfU4n44d1fwbK1G36KeaajO5WpmoqeITwGCqq5HKUwDySAiNlPuvdJP5YVBq+5q2pZFjafYnUUzIs0VSqNJ1RhXKrUQEpIBewdCVb6jg+/de6Ld7917r3v3Xuve/de6FjtI3pOqv8ADqfAD/bZzJ+/de6Cf37r3X//0dSHvzGUUHbfbldDuTCZGok7V3qrYqig3JHkIlqtx19RNNI+Sx1PTaad0WGYLUli7qYlkjDyJ7r3QK+/de6WPXhtvzZx+lty4b/3Pj9+690jvfuvde9+691737r3Xvfuvde9+691737r3S8iP/GMKwf9n9jrf+g7U+/de6Qfv3Xuve/de697917r3v3Xuve/de697917pd9mm++tw/8AURTf+4EXv3XukJ7917r3v3Xuve/de697917r3v3Xul1sw2x3YX+OxZh/69OKPv3XukL7917r3v3Xuve/de697917r3v3Xuve/de6Ve4v+LPsP/Da1b/72+YPv3Xukp7917r3v3Xuve/de697917r3v3XupuO4yFAf+m2l/63r7917qZuLncGd/7XOT/9zX9+690ze/de697917r3v3Xuve/de697917pb7aNtsdij+uBwv8AvG8ceffuvdIj37r3Xvfuvde9+691737r3Xvfuvde9+690u98m6bJ/wAOv9uD/rcffuvdIT37r3Xvfuvde9+691737r3XvfuvdLvrY23fRH/q2bm/3na9YPfuvdIT37r3Xvfuvde9+691737r3Xvfuvde9+690uaw/wDGNduj/s+d5n/1gYH37r3SG9+691737r3Xvfuvde9+691737r3XvfuvdKbepvvPeH/AIde4/8A3cze/de6TPv3Xuve/de697917r3v3Xuve/de6fsP/wAAdz/9qGL/AN6LH+/de6lYA0NVQZzDVuXoME1ZHQ11HkcrHlpcdJVYyoYNjagYOkramMzQzyvDKtOyiSNI5NCStNF7r3Xf928f/wA99sb/AKl9if8A2O+/de69/dvH/wDPfbG/6l9if/Y77917r3928f8A899sb/qX2J/9jvv3Xuvf3bx//PfbG/6l9if/AGO+/de69/dvH/8APfbG/wCpfYn/ANjvv3XuljlcFSybJ2dTtvXZMcVPld3MtQydi+OoeoNATHAP7uXPjVFMpNgC6qhezlPde6R3928f/wA99sb/AKl9if8A2O+/de6UO1tqQHNUuSh3htuup9uvDuTIR4Ub2iyP2mJrIpUipajJ4Wkp45aicw00Ty1CDXIoXW5SN/de6UrTtK7yyf5yWR5ZLXI1yuZH5JueSeT7917o4nVmHGy+nK3NztTw7h7fyMSUYS0lbF19hFkgCyOjaUFROajXGQ14qqNiVcWT3Xuu9f8AvtP/ABv37r3Xtf8AvtP/ABv37r3Xtf8AvtP/ABv37r3Qp0XZVNj02gIMTWTybcpdrUsxqqqjj8f93sdUYqtqMLUUkSyhq2KoYtHWGVImUaQ17r7r3WA9hUkePehpcXkYJKfAYTE4nJvV4iqyMU+IwNTtqf8AiDT0RR6eqpqjyMlOsTxyBlUsjjx+691JyHYmHyS5CkqcHl/4bl56yGrCZelkyFDjK3ZdHtQtiJqiBokqopKQVKF4zEysYmUXL+/de6aq/fMGUwddisjQVeQnKU9LhJ62WjdsXBT0dFQ/xF8lCiVrVUqUMb1UHlNLPI7OyKVs/uvdNjblozgp9srQVC4eo29TwyOP4cuW/vhBljmf43/Elh1tQankpkoHuywtcTagB7917pcP2XS1r5CoqMZk5MWYspSVFC2SppZKf+828ardMeRxkdTC9MKqnJSBmliYSR61umpSvuvdJLM71OZxlNHUxVtTn4c7VZoZiqkoEWiNRlavMvFQR4+GEyCaoqjO6VIZYZVd6fQJ2RPde6ADc2zN5zNn8l1t2LvHF5TcGQTN5bbWb3Tla5c/loKT7dJaHd1fMan7hgTDDFlHkLp41mry0Savde6CTbnyCzWO+3xO+8K+aejrRR1+aid8ZuyCmiLwVa5KkqVMFbVwPpP76080hR455y7+WP3XulUPkXtX+MSU7bV3CNvBjFDmFyeMbNlRVWFfLtoxCnGqHn7Nct6X/wCUp1HPuvdNm6vkVTwmopevcRVKXgeKHc27KekiyNO80Ok1OP2zj56ulgnhYnxS1FdVoSA/hRrW917orlRUVFXUT1dXUVFXV1U8tTVVdXPLU1dVU1EhmqKmqqZyzySSOS8kjsWZiSxJJPv3Xulfv43zeP8A8NldcD/bdfYz37r3SK9+691737r3Xvfuvde9+691737r3Sl2obZKt/8ADW3uP9vsvID37r3Sa9+691737r3Xvfuvde9+691737r3XvfuvdPc5/37mKH/AFe8+f8Ab0OM9+690ye/de697917r3v3Xuve/de697917r3v3Xul52Wb7yyJ/wCmLb//ALzlJ7917pB+/de697917r3v3Xuve/de697917pebGP+T7/H9evMp/vG4cX7917pB+/de697917r3v3Xuve/de697917rwFzb37rYFTToV8tisNNtLrqXKbjhw874DNCKkfFZPIySQJvXJqKoyY5JERWfUipIyyEox0aNDMVSXl/4zJa24kVTTUZAuaAnGk8K+vUg2HLHJ/7thuuYN7ksriZS/hJYtcALqZVPiLcRglgtaaRprTPSbGE2WQP+MjUKsQOH2jviysfwzx0DDj8lb/4X91+r3f/AJQ1/wCcw/6A6U/1c9s/+mmm/wC5VJ/219Tv7qbR/wCfo7c/88G+f/rZ739Vu/8AyiL/AM5h/wBAde/q57Z/9NNN/wByqT/tr69/dTaP/P0duf8Ang3z/wDWz376rd/+URf+cw/6A69/Vz2z/wCmmm/7lUn/AG19e/uptH/n6O3P/PBvn/62e/fVbv8A8oi/85h/0B17+rntn/0003/cqk/7a+vf3U2j/wA/R25/54N8/wD1s9++q3f/AJRF/wCcw/6A69/Vz2z/AOmmm/7lUn/bX0oNrYzZm3twYbPSdlYOo/g2UoMqkFNt7eLzSyY6pWtiiRKqhhQ6nRVOqVRYk39l+53nMS2bmxsUeWnaDOACfmdHQt5I5X9kpuZLVOaebbm2sNY8aSPaJHdV9VUXRJzSuDitM06CzJSxTVlQ8LaoTK/jbSU1IDZG0km1x+L8ezuxjeK0jSQUYKK+eaZ6irmy8tb7mG7ubFtcLyyGNqFdSajpbSaldS0NCSRWh6g+1fQc697917r3v3Xuve/de697917pT0p/35meH9d0bR/3jE5z37r3SY9+691737r3Xvfuvde9+691737r3XvfuvdO2bN69P8ADE7cH/ruUnv3Xumn37r3Xvfuvde9+691737r3XvfuvdLzrI23xhP9fI/+6mf37r3SD9+691737r3XYJUqwJDKysrA2Ksp1KykfQgi4Pv3Xul7svsPNbOkkpVJy+3axFhyW2q6pqVx80Yqfulq6Axt/klbE5dqerjUlS8iSJLBLNDL7r3SnzPcuYkTHx7SpDtJ6f7OsrclHWJks5U5Wnk85+zybQQ/aUSOqeKnhj8rEMaieZGSKH3XukDJvfe0v3wm3pvCdcnS1FFkkqN0Z2ojr6SsBFZT1sU1QyypNc+YODrudV7m/uvdNRP+4SnH9M5lf8A3WY/37r3Tb7917r3v3Xuve/de697917r3v3Xuve/de6V3YHO+t4n/s585/7spPfuvdJH37r3Xvfuvde9+691737r3XvfuvdPuDNqbd/+Ozrf+v1gPfuvdMXv3Xuve/de697917r3v3Xuve/de697917pUZ//AItWyP8ADa9X/wC9plz7917pL+/de697917r3v3Xuve/de697917pTbKNt57QP8A2dO3v/dvD7917pH0P/AKj/6haf8A61D37r3Ur37r3Xvfuvde9+691737r3XvfuvdLGlP/GP88P8As8dpn/1i5oe/de6R3v3Xuve/de697917r3v3Xuve/de697917qdXm8lH/hhdvD/1gU3v3XuoPv3Xuve/de697917r3v3Xuve/de6VWzv+LvV/wDhq76/3nZOQHv3Xukr7917r3v3Xuve/de697917r3v3Xuve/de6fG/49Gg/wDD03Z/7zW3PfuvdMfv3Xuve/de697917r3v3Xuve/de66bhWP+B/3r37r3Sp3vzvTd5/7OjP8A/u1l9+690l/fuvde9+691737r3Xvfuvde9+690/4n/izb2/8NzE/+/DwXv3XumD37r3Xvfuvde9+691737r3Xvfuvde9+690td3G+N2D/hspR/69WVPv3XukV7917r3v3Xuve/de697917r3v3Xup2K/4vGE/wC15hf/AHaw+/de6bo/83H/AMEX/oX37r3XP37r3Sj21uev2zLOlMEqsTXyxSZnAVLy/wAJzHhVo4pauCJltURq8gp6tLTQ6mMTrqa/uvdCKM9syohFVBnqjEiSeWP+EZzG5WvyNIiRrMJBk9u0k1PVRerxrM0VNK7o96VF0M/uvdZkr9sPHNUf3vxC08UPlUjH7lNbUO0chjpqbHT0MLeUvE0f7zxRqTGzSKkiufde6TeX7Eq4qg02zhLg8PB4ESoqaehqM7m56Ys38XzU0izRwvIzMYqClbwU0eiPVUzpLW1HuvdJ/wC6qKva246usqaisrKzeG2Kqrq6ueWqqquqnxedmqKqrqZyzySyOzPJI7FmYksSST7917pK+/de697917r3v3Xuve/de697917r3v3XunvOm8mD/wDDI67H+22FjR7917pk9+691737r3Xvfuvde9+691737r3Sk2n/AMXaf/w29624B5/uXkLcHj/b+/de6F/Jdobcqevtzw4So3Pt/sre2TWfflY2Lw9di9yYaqeWPIbcw+446pKvH45rwTCijoFAjElC81RA5dvde6DnamDhGKye86vM1GGbbuSxSbehp6PFzyZ3ORyfxCqpUrstWUsFIKOBI53keOdn1qIoJirIfde6EDb29985nsKhjg3JiKfMZ7DZ3B5TJTyUg2ptuhzkMuUnfGvSytTw0eD8VLkqazKkVbSl5JZYx5W917pU0zYer29ksbjsnkNu9MYepU9gb+kgdNzds7phVauXD4Y1frZnMimloy2mnhkFVW3eRVPuvdZ8pXSn+7mRyW2Y1yctK1L0Z0lSRSVNHhKKd2WHee8aWQ6pi8imcmoIlrJUYuyRxySUuuvdCNvJl/vfur97zn+8ebLzlzJ5pTkpDLKJGJLBmuQxJv8AW5+vvfXuk3cf1H+3Hv3XuvXH9R/tx7917r1x/Uf7ce/de69cf1H+3Hv3XuvXH9R/tx7917r1x/Uf7ce/de6k0TAV1CbjitpD/X6VCn37r3UPfldBi8N2Rk6mSljM/wDeLb+MSsSZosjldx5RsPUUFKad0cVMWNmyGQhdWIjenVnBXg+690TP37r3Xvfuvde9+691737r3XvfuvdP+L/4s26f+oDGf+7+l9+690we/de6Fvr09aRrQTbvrXoqiefdOAy7T0E2Xip8RvHG0G1cdufHY6OmmQ1G3YqrM52AGRXmq6ejhRbMZI/de6XL5rpv7vPQtT7e/hGWwreCvx2IzkO5cBDkYqKKsodv0GWx9TjqnLQJRVRWKqemhaWpgamzdArVtvde6YMvktg7uxmdgmrtm7SyUdH0vX4ito9q5qhWfIU3XGRh7Uw9LDt3Hsmh9wVdI8zVSqumEvSPPFFDG/uvdBPuM4dspfBrKlIcbgzVLJ49IzpwdN/ecUviJT7f+Jfd/a6Dp8OjTYWHv3XumL37r3Slzx/3GbK/w2tUD/19MwffuvdJr37r3XvfuvdLLbWnB0s29JtJnx1WKHasIloWebdaxCrTJzUVXHMJaXFRFKqUGMq1TJRQuGhml0+690kZppqiWWoqJpqionkeaeoqJZJ555pWLyzTzSks7sxLMzEkkkkk+/de6x+/de697917oaJ12/2Ft7E5nJzDbm68Oz7ZzFZicHRz4rcVNR4RX2bX1uPx7UZpKxlgqKauqUSpeoSH7nQ0utPfuvdBrn9uZHbk8MdaaappKvzHGZfGzPVYjLR0+jzvj6p0jbVH5E80E0cc8JZVniic6ffuvdMPv3Xuve/de697917r3v3XulNRn/fm7iH/AGc2zT/6ys97917pM+/de697917r3v3Xuve/de697917qxWm3dnMZ1FNjt59gbX23UZTo7BNget27735jE/hcfXGX2jjKjK9e4DCZTGmPcWDqsVnGwUWUgqZcjTw1LS0bZOSCm917ouXylFu3qldEsenYXUKeOaKGCaPT1PhV8c0FOTGjD6MkZ0g8Lxb37r3Rd/fuvde9+691Mx9LDW1SU9RkaLExOk7NX5FMjJSRNFA00cci4mnqp7ysoij0wMA7KXKJqdfde6Fbt+mpqRer6ely1Bmoo+qsGPvsbT5qmpWYbgyqmNFz1JRTtYANrEOghhZiQwHuvdA4fofxx7917r/0tP/ALvN+6O3j/XtDf5/2+66v37r3QYXP9T/ALf37r3Sw69Yjfez+Sf9/JhvqT/yvp7917pH3P8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917pdxsf9GVYLm/8AfzHH6/8AZvVPv3XukJc/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de6XXZbE753Abn/gRTfn/pgi9+690hbn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3S52axGO7B5POxph9f+zpxXv3XukNc/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de6Ve4WP8AB9icnja1b+f+z2zB9+690lLn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3UzHMf4hQcn/gZS/n/m+vv3Xupm4mP94M7yf+Lxk/z/02v7917pnuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3S320x/ux2ILnnA4W3P/Z4Y/wB+690iLn+p/wBuffuvdeuf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdLzfTcbLseBsHbguLi5tNfj/D6f8AGvfuvdIO5/qf9uffuvdeuf6n/bn37r3Xrn+p/wBuffuvdeuf6n/bn37r3Xrn+p/259+690uut2I3dRkkn/cZub8/9mxWe/de6Qtz/U/7c+/de69c/wBT/tz7917r1z/U/wC3Pv3XuvXP9T/tz7917r1z/U/7c+/de69c/wBT/tz7917pb1jH/Rvt4XP/AB++8je//VhwXv3XukRc/wBT/tz7917r1z/U/wC3Pv3XuvXP9T/tz7917r1z/U/7c+/de69c/wBT/tz7917r1z/U/wC3Pv3XulLvRid5bvNzzurcR+v9cxMffuvdJq5/qf8Abn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/wBuffuvdP2GY/Zbn5POBj/P/ZwUB9+690w3P9T/ALc+/de69c/1P+3Pv3XuvXP9T/tz7917r1z/AFP+3Pv3XuvXP9T/ALc+/de69c/1P+3Pv3Xul1mWP9wdji54y+9Ob/XnG+/de6Qtz/U/7c+/de6GDbsMeO2l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Hv3XulPvVid5btNzzufPfk/87WX37r3SZuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3Xrn+p/259+69165/qf9uffuvdP+JY/wfeo5N9u4rm/0t2Dgz7917pguf6n/bn37r3Xrn+p/wBuffuvdeuf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+690td2sTjthcnjZSD6/9nVlffuvdIq5/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/259+691OxbEZfCm5P+5vDcX/6ukXv3Xum6Mnxx8n9C/k/6n37r3XO5/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/259+690pKZj/c7N8m/96Npn6/9WjOe/de6Tdz/AFP+3Pv3XuvXP9T/ALc+/de69c/1P+3Pv3XuvXP9T/tz7917r1z/AFP+3Pv3XuvXP9T/ALc+/de6fM6SZsGBe7bL67RVFyWZti41FVQPqSbAAfU+/de6bKqjrqGqeirqSroq2MQmSjq4JqaqjFQqtTl6eYK48gdCl19QZbXuPfuvdY4oaiewginmJSokAijkkJjo6c1dXIAgPpiiBlkP0VAWaw59+691wCyGN5QrmKJokllAYxxvMrtCkj/QFxHIVBNyFa36Tb3XuslPBVVk6U1JDPVVMjxRx09NHJPO8k8y08MaRRAsWeR0jUAXLMqjkge/de6wK+tdSNrU3syNqBKqHYAj+gIJ/wACD7917pRxNW7TzuWpKylp563HR7r21WU/3azwxVFTj6vbFZUxT0MhDCGSR5IXDFJGQfqjPPuvdJ46wFY6gHBZCbgOoYoWU/kXBFx+QR+PfuvdCdtKDrt62kbctTSnFQ4yKorY8md1CvyualFOr4OmXa0sH2UMcrTsMg80ytTot4455CIPde6w5LN7KwirJsiHM19blYstQ7mg3PTGDC0mMnqKSppKPaGRwtfT5JhIUrKWpmrUieSl8YaNWnqIk917pcde78XLUtJtLI4HH5Tc1NWUVT13DBDiNv7cz+6I3FFhNv71x1GlLTtEhlefHTUzUolrWYZM1BqY6/He6908E5E1m5Mbj8/DX73r6Oeu7j7crCZsbsbENERWbb29JThR92EiNOwpQhjMf29OInhd8X7r3Qq7wlDb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wsSkS5KqCMqJyfsyzqFaJn917opOs/4f7z7917r2s/4f7z7917r2s/4f7z7917pZb6c/xnH/AE/483rz/eNhY0e/de6Rus/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917pSbVkP8Tq/p/x7O9P/eOr/fuvdJvWf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6909TyH+7uL+n/F6z3/uDjffuvdMus/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917pcdjyN/e/IfT/gHgf/AHnqX37r3SH1n/D/AHn37r3XtZ/w/wB59+6917Wf8P8Aeffuvde1n/D/AHn37r3XtZ/w/wB59+690utkSH7fft7f8y/yf/u/xnv3XukLrP8Ah/vPv3Xuvaz/AIf7z7917r2s/wCH+8+/de69rP8Ah/vPv3Xuvaz/AIf7z7917rtXOofT6j+vvR4dXT4x9vS93ZIf7t9dWA423lr/APocZb2kthRn/wBMf8A6P98bVFailKQIP+NP0gdZ/wAP959rOg70t9tbMqdyYqsy0c86RUMc9VULTiiH2tDBkFxDVdRDWusk96hreGmswS0mrSW8fuvdc8Du+Db20uzNqS4b7zI72pdu4SLNR5L7eHC0u2t3Q7lyUT49qZ2q1q6ihoxGwnp/GIyxEuvSvuvdCnD3xh48zsStk2DK2L6+3H11mcXRUu48XisrnMf1xsSg2hhcVvXPYvCRHLS002PWqxlfU0/moYKvI0UZeOqSSn917oN5t/U9VsjCdeVuJrsjtjGZXD5eWPJ51K7I4+WGimpN10mx62WiAw1NnHn+6roDFVKZ4qeQh/ERJ7r3Qg0/cFHS5fdm45+vamq2j2NvTsbJb2xNflqCtgyUu6qHK0WAw23N0ZHDSzYutwNPmK546mEySVEjs80SwrHDH7r3SRoOwY3wm49mUO0pKjEbp25tSKLE0+TmmloOyNq4KLCy9l40w03kE1TSNloJqGPSrQVgSaWb7WF/fuvdex3YMe2NtbEpcXtrIY7eWzd2ZrsHBbpq82z4iqyGYhx9Niq87WFFE0goJsNSTUz/AMRaOWRJUnjlhbwp7r3XDdPYa5nblbtOp2nT4+OmzuGyuz8g4x0Oewe26eirxJg8/kKTH0suaevFdT10uRqDG7VKS1AT/LJFHuvdO7dw00uX6m3fPtmpk3x1Y/X9HHkF3Ese2c9g+tsmtXt6nn20aBqimrWpoaWiqKqLKGB1jaUUazyvJ7917qBL2NtX+61bsyDZWUqdv1GY39nUTN7wo8pk6jLbn2JHszbc+ayNLhqT7kYOZq6vjWKOA1BnEUhTQ8k3uvdPGU7sjyOO3JJT7QhwG8t44LZWJ3TvLbecqMRPmMhtvNVOU3LuQ4tKd44K7cKrhTlHppIw9VQNVEP95NCvuvdLbGd60UdTv/f9dsmlzGT3X3JRZ3cNJl6+grVrthbi2xubC1exaHIHHrJj5zRV9ZS1GXpIxJOkiERQCErN7r3RUldwqhyrMFAZgpUM1uSFubX/AKX9+691y1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+6907Zpz99H9D/uJ27/7ztJ7917pp1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvdLnraQ/wB9cL9PrkP/AHVT+/de6Q2s/wCH+8+/de69rP8Ah/vPv3Xuvaz/AIf7z7917r2s/wCH+8+/de69rP8Ah/vPv3Xuvaz/AIf7z7917pzLn+B0545zmUuP/IbQW9+6902az/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3XulZvyRv777u+n/HyZr/AN2Mnv3XuknrP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6fMI5+23be3/Hof/Lvgj7917pj1n/D/AHn37r3XtZ/w/wB59+6917Wf8P8Aeffuvde1n/D/AHn37r3XtZ/w/wB59+6917Wf8P8AeffuvdKbPSH+F7K+n/Hs1X/vY5b37r3SZ1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+690pdmSH++O0vp/x8+A/920Pv3XukjRufs6T6f8AAaD+v/HIe/de6k6z/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3XulfSyH+4WcHF/wC9+1f9sMNmffuvdJDWf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+691OyDnyUn0/4s+3/AP3RUw9+691B1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvdKjaEh/i1X9P8Aj197/wDvF5D37r3SX1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvdPbOf7qUP053jur/3nNvD37r3TJrP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de66Lmx+n0P9f6e/de6U+9ZD/fHdv0/wCPmz3/ALtZffuvdJnWf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+690/Ypz/B96fT/j3sV/78DB+/de6YdZ/w/wB59+6917Wf8P8Aeffuvde1n/D/AHn37r3XtZ/w/wB59+6917Wf8P8Aeffuvde1n/D/AHn37r3Sz3ZIf4fsSwHGzE/96jKH37r3SM1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvdTsU5OXwoNrfxvDf+7OL37r3TdG58afT9C/717917rnrP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6UdM5/uhmvp/wAfPtT/AN1Gb9+690nNZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3S6izVHiK+ibJYlMvQ5DrbZ+KnjiqUx+TpBV7AxwirsNlXhqRTTo6osjmnkEkDT05UCYuvuvdO9P2BiabPYuvO3GqcHBjY6PMYGKTb2Ip8jUvs6DC/xSGGhxTUYrqPJPksnRVdXRVKs0tOk1OyU+mT3XuuSdloNvbhxLUO4v4xuSLK1dfueLecyZGo3FuFRBubK1aSUT+SDJ06ikr6NZE80EtUjTfvoYfde6acVuj7XamX28dtmuxFdW4iqhyIrq+CfH72oNUmNyElRABTyqaOSvpRQSxAmGZnSVZkE/v3Xul03aU+Vr5s5R7arp8dgszj93ZWOo3JR1FXFTU3aWR3PiKumy9Pj6eaGpin3AtCJYVameRzUy0TkxJT7690lKHsdaaOkhq8dlcmMPsTeWxsM1Vuip8tEu9myy5LN1dqfRPUtS5eWKRTGiSsqyMunTGmuvdPSdhwZTMZOpx2zMrNJNtXs3E0eOoc/JUHFYnd8GVyOeyLrT47VOtDQ1tUZPuFaFYovM6oys4917pH743tNveupsnVU9ZFWxPuJp5KvKtk45Fz288nvIR0qPDEYVilycyModlka8oEbOy+/de6ROs/4f7z7917r2s/4f7z7917qXj2nNfQinqhQVBrKUQV2sRfZTGdRFV+RmUL4ms+osALXuPr7917oyO459uVtJmKtKHJbX6TwedyhxeCq55cfuztbeFPUFahcjOryTRRJPEEnl1N9qiCKM+aIGg917oTN5STLu7dAnIM394MuZAqKiqxrnvGFH00/pt/h7917pN+Y/wCP+2Hv3XuveY/4/wC2Hv3XuveY/wCP+2Hv3XuveY/4/wC2Hv3XuveY/wCP+2Hv3XuveY/4/wC2Hv3XupePdZMhj45CRG+QoUkNvpG1WiufTz9L/T37r3RWt95Ksyu+d6ZOvZXr8ju7ctfXMqLEhrKzNT1FUI4o7Kih2YKijSosBwB7917pK6z/AIf7z7917r2s/wCH+8+/de69rP8Ah/vPv3Xuvaz/AIf7z7917r2s/wCH+8+/de6fsY5/g+5/p/wBxv8A7vab37r3TDrP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6UudkP8ADNmfT/j2Kn/3ssv7917pNGQjk2AHJJ/Hv3XuljltG3sMm3PHEc5knp8huv7nF1FLkcIKaUyYraAnqyG4tHkMigjW1R9vA9paF7+690jtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3Q0dVbsx8Zotl57+I/w2p3bSZ/DpjqWGpjk3BVY/wDgEtNkw8kUqRzRCnWGpjc/blZAYwlTNPD7r3XDGbF2v/CcvHUZWoqjUHHTbVz1Mn20tGtLj8k2Sxu4NvTyMxMksdDqameVVikjniqXKzUknuvdAyJCQCLWIBHB+h59+6913rP+H+8+/de69rP+H+8+/de6UlJIf7n7g+n/AB8mz/8A3V5z37r3Sb1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvdOWHgoq/L4qhymRfD4ytyVDSZHLw42XMS4uhqapIavIxYiGWF6poI2aRadJkaQjQGUm4917o3dM++Mb1rU9eHtftnHpVbBqTXbCX42UrV/8ABqzFf35rtpx9jHO/xVcRKisZlSRKZqUyCWkETSwe/de6DX5P1f3XbdVUgQgVGx+qJtMMnmhXydW4dtMUoC6lH9ltIuObD6e/de6L5rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6FHsuQmk6x+nHV2DH/rayX9PfuvdBdrP+Hv3Xuv/U08O6ZAe4+2ibkns3fhvx+d1Vfv3Xugz1j/H/AHj37r3Su2C4/vvtK17/AN4cT/T/AJXU9+690kdY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3XtY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3S3jcf6Nqv62O+aDji//ABYKke/de6RGsf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917pb9kOP77Z76/8AAim/p/yoxe/de6Q/k/oPfuvde8n+H+8+/de695P8P959+6917yf4f7z7917r3k/w/wB59+690t9nyf7j9/cf8wRN+f8As5sX7917pEeT/D/effuvde8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de695P8P959+6917yf4f7z7917pU7gf8A3EbHNv8AmGa0fX/s88t7917pLeT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8P8AeffuvdTMdJ/uQoeP+Uym/P8AzeX37r3UvcEn+57N8f8AL3yX5/6bH9+6900eT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvdLTbkn+/a7B4/5ceG/P8A2d1B7917pF+T/D/effuvde8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de695P8P959+6917yf4f7z7917pcb3k42dxe2xcB+f8ZvfuvdIfyf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3XvJ/h/vPv3Xulv11J/v7KPj/l3bj/P/AGbVZ7917pEeT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvde8n+H+8+/de6WtXJ/wAY6wHH/Ma7u/P/AFYsJ7917pFeT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvde8n+H+8+/de6Ue8ZL7w3abf8xPuD8/8AV3m9+690nPJ/h/vPv3XuveT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de6fcPJ/ke5eP+XEn5/wCr9Q+/de6YvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvdLXB9d7/3NQjJ7e2VubM0Dw1FRT1WOw9fVRV0VHNJTVb40xRn7rxSxSxSinDlXUowDC3v3Xuk/UYXNUuBpN0VOIyEG3K+rq6CizktLOmLq62gF62kp61l8byRAXdFYkDkj37r3Qk7l2bvHGbWxWHyW1NwY/KbUbdea3Lj63E11LV4HEVUmLSmyWWgmQNTwytLGI3lChtSlbhlJ917rjgMfl8HjMtgs/gcliZM9jNp9i4ifKUtXTQ12Bxz12Koq6kgnQI8NV/FHlp64cfsGKNrTuG917oQKvrfsjH4ypzVdsPc9Jh6TGS5uqyU+OK08GEhhNTNmpEDmQUaxhpGqfH4woLFgFJHuvdCb8Z8rFTdjV+FkYQVG79lbi29jqt2LUtLXxtBm9dZSuGjdTTUlSFZ0Yq+lUAMhI917pZo5VFVtIZAEYXvZl9LC9+eR7917rl5f8V9+6917y/4r7917r3l/wAV9+6917y/4r7917r3l/xX37r3XvL/AIr7917r3l/xX37r3XvL/ivv3XuptPL/AJDlPp+vFc34/wA7P7917qF5f8V9+691Azeap9tbfy26chTfc4/DQo32/wBylCMnkah/DjMNDVyXs88nL+JXkSBJpljcRMPfuvdEJ3DuPKbpzeR3DmpUnyeUmSWpeJPDAiwwJSUlLSw3PjhggjjggjudEaIgNl9+690zeT/D/effuvde8n+H+8+/de695P8AD/effuvdLHfMn+5mg4/5g7r78/02HjR7917pHeT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8P8AeffuvdKPaz/7k6vj/mGt5fn/ALNCu9+690nPJ/h/vPv3XuveT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvdPM8n+/exfH/L5zv5/wCmHHe/de6ZvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvde8n+H+8+/de695P8P959+690uOxpP9/fkeP+UPA/n/s36X37r3SH8n+H+8+/de695P8AD/effuvde8n+H+8+/de695P8P959+6917yf4f7z7917pc7Kk/wAn33x/zAOSH1/6v2NP/Ee/de6Q3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3Xaycjj8/wBfejw6snxDpebqlJ2113cf8w7l/wA/T/f7ZQ29pbbi/wDpj/k6Pd5JMdvU8IU/wt0gvJ/h/vPtX0QdTKbKZGjRoqOtqKWNpfOyRNHbzeMReaJpFZopNIA8kRVuF5uq2917qEHAAAWwHAAPAHv3Xuu/J/h/vPv3XunrbeRxeM3FgMlnMSucwmOzeKrsxhHZQmZxVJXx1GRxTl+AKiFXhJPFm9+690Puyu0dobffbX96Sm5jtTPqm2sjQ7cMeU25QjcE9bLUzNkp0ptw4tYKvIzU1HmaNK0TVMemalSEofde6D/qjeGH2F2PtzdlfXV32dDDuT7+XFYr9ymnyOHyOGpIKehiq6IzU8olgadUnpyI5ZI1F0Bf3XulXUdjbIyOB2dj6nEULZvbOw8HttchmNuzZfCxRUm4915LO4KDGSV7S6qpMziKqPKJLHLHUUciRLTxVD2917rum3/17UPtZ8xjvvjj4eqcduyry+2qfcGVyuH2ngNo43IwbbqKqsRaZqdsPmKRoZz4qqkqPVYyCKn917rJjN6dST5bDZPO4meCBduPgty4fF9f7RbGZZKit3JRCrpIWqI5aSvpKOo2v4K+iqKeaQU9ZNUSzVoSSq917oGty5XH5OpxktBSLAabbu3sfXzieolOQyVBiYqaqrHFQqlGGkQlVuv7d1JUg+/de6Tvk/w/3n37r3SkpX/35+c4/wCYl2ofr/1as0PfuvdJvyf4f7z7917r3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3TrmZP8ALo+P+XVt/wDP/ZvUvv3Xumryf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3Xulx1xJ/v9MNx/zsPz/1ap/fuvdIfyf4f7z7917r3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3Tm0n+4On4/5feT/AD/1baH37r3TZ5P8P959+6917yf4f7z7917r3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XulXvt/wDf7bu4v/v5M1+f+rjJ7917pKeT/D/effuvde8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de695P8P959+69094V/8AJ92cf8wj/X/s9sGffuvdMnk/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de6Uudk/3F7M4/5hqq/P8A2eGW9+690mvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de6UmzH/3+G0+P+YlwJ+v9MrEffuvdJKje1JSi30poPz/AM2h7917qT5P8P8Aeffuvde8n+H+8+/de695P8P959+6917yf4f7z7917r3k/wAP959+690raV/9+Jmzb/mLtrfn+mGzHv3Xukl5P8P959+6917yf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3Xup2Qe0tLx/y6MD+f+rHTj37r3UHyf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3XvJ/h/vPv3XulNtKT/crV8f8AMM71/P8A2Ztf7917pM+T/D/effuvde8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de695P8P959+6917yf4f7z7917p7aT/fqUHH/ADGG6T9f+zd2+P8AiPfuvdMnk/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvddF7gi31/x9+690pt5yf7/AA3Xx/zEud/P/V0l9+690mvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de6fsU/8AuI3nx/zD2M/P1/3/ANhD/wAR7917ph8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de695P8P959+6917yf4f7z7917r3k/wAP959+690st1yf7j9i8f8AMGp+f+znynv3Xukb5P8AD/effuvde8n+H+8+/de695P8P959+6917yf4f7z7917r3k/w/wB59+691Oxb/wC5fDcf8vrDfn/q5xe/de6bkeyILfRF/P8Ah7917rn5P8P959+6917yf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3Sip5P9+jmuP+Ym2r+f+rTmvfuvdJ3yf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3T3nXtNhxb6bN2D+f+zHx3v3XumTyf4f7z7917r3k/w/3n37r3Qn7V39SYDGYPH1MeTqqeh3P/ABTJY3yQS4ysx/8AEcVllKQ1bNC7LNjFD0dTSyQS3WR2uoX37r3SiqM2NgS7coJI4xT0tTj4sntlZ4snJhqeizeP3Vl6rBZJkmo6/HZOpiEmHrkrJbxtWq4Mckc0/uvdBnujPx5+qw9WiurUW09p4CoSaloIZVqNs4CDbxb76jVZKxHjpY5YpqsGaNW+31NHBGze691w2s/+5So4+m3d5fn/ALM6vHv3Xuk75P8AD/effuvde8n+H+8+/de695P8P959+6914vfgrcHggn6+/de6G7Cdkx1lGMlnp5a7sLbmDh21sHI5Wan/AILS0cwMUWXnElO6DL4sKgoqisbwSxNed1mo6fz+690O2bVMvm8rkcDqzeLyeQy+RxuQxIOTp66iSreSpqo5aHWB4jq+5U2MLBllCFSB7r3SeuP6j/bj37r3XRZQCSwAAJJv9AOSffuvdcnenTOVW1xNLJuShx8OTrsVFQVzfZQVBpmpoZ6woIzNLFV080Yh8kRVwpmWb9n37r3Xj6SVb0spIZTwQQbEEH8+/de6yxQtKlTNrhhpqKmesrqyqnipaKhpI2VGqayrmISNNTJGtzdnZY0DO6qfde6D+v7P2fRySQ0ceazRilKfdw08GLoKlFBBlpGrGeo0kgaTNTRMVN2RWGn37r3TdTdv0v3FKuM2toyL1lD9pU5fNHIY6llFZGWknxdFS0j1Hp1aB93GqsAXWVSU9+690FW8dMW7t0xIG0R7jzka621NpTJyquprcm31Pv3Xuk55P8P959+6917yf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3T9jH/3D7m4/wCUHG/n+mcpj7917ph8n+H+8+/de695P8P959+6917yf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3Sjzkn+4zZvH/MNVP5/7PDLe/de6kbeSHHwT7sro6SenxNStNiMbVmrC5vcTxeWCNftgLwY9WSurQzhWtT0z2FYrr7r3SYmqpqmaWoqZZ6mpqJZJ6ipqZ5aipqJ5nMk09RUTFnkkdiWd3YsxJJJJ9+691j8n+H+8+/de695P8P959+6917yf4f7z7917r3k/wAP959+6917yf4f7z7917pUbJknXeW1ZKf0SQbiw1T5TDFULBFS5COonqJIqgGMpHGrSOXGkKCzcA+/de6EWgrJcfV0FfQhYpsdWUVfRaw0qLLQVK1VKsyvYumpFEiP+tbq31Pv3XumSt2ttyuBbHTVm3apmlIpqsvmMEdZAp4oquMCupY4wDqMkdc7XLa1sFPuvdZMZgsRh6RnrabHbjzUjsVEk2WGBoIlQrGkaR/ZTVM0ha7tJaOPSAquTqHuvdI/eSYul3RmqPDY98Zj6CrGOipHq56w+fHQpQ19Us1TeQLUVEctQkTsxiWQRa5NHkb3XuuNJJ/v0M/x/wAxJtD8/wDVsznv3Xuk35P8P959+6917yf4f7z7917r3k/w/wB59+6917yf4f7z7917rPS11VQVVNXUNRUUVbRVEFXR1lJPJTVVJV00onpqqlqISrxyRuqujoQysAQQR7917qwODfn97ettzUea31vXddbT9S0+QzuYyHyQqsDT1lHleuK+iqWl6tp4EWqTFZ2hj27kqJmlrK4z02SnSsGSJl917ounyakkPbFSZh+6dkdVeUGJKciQdYYgODBGWVOb+hSQPoCQPfuvdAB5P8P959+6917yf4f7z7917r3k/wAP959+690J/ZUn+S9Z8f8ANMMH+f8Aq85H37r3QYB7kC31P9ffuvdf/9XTo7lOruDtc/17K31/71FV7917oNvfuvdK3YRtvbaZ/puHEn/1dT37r3SS9+691737r3Xvfuvde9+691737r3XvfuvdKJcxTjac2AMU/3cm4qbMLP+39qKeHGy0TRHnX5NUgI4ta/N/fuvdJ337r3Xvfuvde9+691737r3Xvfuvde9+690o925elzu4snlqJalKWslieFauOKKoASmSFhJHDJKo5U2s54t/re/de6Tnv3Xuve/de697917r3v3Xuve/de6U23spR42k3VFVNKHy22ZcXRCKPyBqx81RVqrKSRpTxwSEtzyALc+/de6TPv3Xuve/de697917r3v3Xuve/de697917pQZirpanG7Tgp6hZpaDA1VLXRiOZDS1Um6MjXJAzSqquTDNDLqjLLZwpOsMq+690n/AH7r3Xvfuvde9+691737r3XvfuvdS8fxX0R/6a6b/rcvv3Xupef/AOL7mv8AtbZH/wBzH9+6900+/de697917r3v3Xuve/de697917pZbeNtt7+H+qwmH/3jdlAffuvdI337r3Xvfuvde9+691737r3Xvfuvde9+690t96m67P8A8NjYAf7zN7917pEe/de697917r3v3Xuve/de697917pa9enTuujP/Vu3F/vO26se/de6RXv3Xuve/de697917r3v3Xuve/de697917pZ1Z/4x7gR/wBnnu0/+sPC+/de6Rnv3Xuve/de697917r3v3Xuve/de697917pRbvN93brP9dzZ8/7fLTe/de6Tvv3Xuve/de697917r3v3Xuve/de6e8SbUe4/wDHCRj/ANbtD7917pk9+691737r3Xvfuvde9+690ZjtrHbg7F3ftzfnV2MzWb2rktu7NxGycNtKXMbjy3Wsu0NtUGLrdjV1JRIarFz0Fck1RTsY0iqVmWtp5JfM7j3XumsZOs2f0Tt15dt7ayaSdvdq0zV+cwNHnqNTBtDa1C02FzKl6YxSPBMvlhkZZjACjEQG3uvdDL2nQZAbq7tMmGno1i+Pu1hUU8OJqKOmonhbqdnjWlK/spCKSoAU8RiCQEjwvp917qJvDZ+7clUdVSxbby8G36n4p9aY/Lbmq8XkKXbuKq8FtKPOpHW5loDTid6ikp6GOB5ldpZ0iW7siN7r3Sj7Bxm9slWbOxuH65hpqOTpDqGvfsX+5lbh8ngqfDbOqBuSDK9izeOmWgjomnhyGPnYXULHpLFUf3XumTozbOFMM/amYzOdpo9nbjpKDCYnb8NPDU1+RehiqWly8+QU/wCSSQ1PgelURs6mQvMmlY5fde6X2ZyiZXL5PJxU8dHHkK6oq1plYN4hNIXOthYF2PrkYcFyxFgbe/de6bfL/ivv3XuveX/Fffuvde8v+K+/de695f8AFffuvde8v+K+/de695f8V9+691gmyFPTTYumlgytVU5vKJhsZBh8VLl5nrno5sgRNS0zidlEFPM4jpIZ6iQrohp5WuB7r3SN/wBK3WfnSEb1pGSR0CVSbc3u9KUdiFmMi4skLYXOpQwBF19+691x/wBMWyocDn66kj3FlhRZDb9LLFDj6LG0tQlW9a6y02QqqmSUWEPIkogbMttR1hfde6C7J/IPJtGq7e2xi8VOHYtW5epk3JMvjqRJTSUtI8VLSLqQaJ46qnqVa506bXPuvdAxuDdO4t11UVXuLMVuWmp0aOlWpdVpqKN1QSxY+hgCQUyPoVnSCNFZhqILXPv3XumD37r3Xvfuvde9+691737r3Sv3ub5ig/w2hsAf7bYuO9+690kPfuvde9+691737r3Xvfuvde9+690otrm2Sq//AA294j/b7Rrh7917pO+/de697917r3v3Xuve/de697917r3v3Xunif8A49/GD/q8Z3/eaLHe/de6Z/fuvde9+691737r3Xvfuvde9+691737r3S17DOrduQP9aTB/wDugpffuvdIr37r3Xvfuvde9+691737r3XvfuvdLjZZtT76H9dh5If+t3G+/de6Q/v3Xuve/de697917r3v3Xuve/de67X6j/X96PDqyfEOl1uk/wC/b68H9Nu5b/ed65T2mt+L/wCmP+To93n+zt/+aKf4W6QntV0Qde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Sjpf+PRzg/wCzj2r/ALxjMz7917pOe/de697917r3v3Xuve/de697917r3v3XunTM81qf9qrb/wDvG36Ue/de6a/fuvde9+691737r3Xvfuvde9+690tuujbeWGP+Nf8A+6uf37r3SJ9+691737r3Xvfuvde9+691737r3XvfuvdOJP8AuFgX/q85I/8ArOoR7917pu9+691737r3Xvfuvde9+691737r3XvfuvdKnfJ1bz3Yf67izP8A7sJPfuvdJb37r3Xvfuvde9+691737r3XvfuvdPWG/wAxur/HaZ/97PCH37r3TL7917r3v3Xuve/de697917r3v3Xuve/de6Uec/4tmzv8NuVX/vXZU+/de6Tnv3Xuve/de697917r3v3Xuve/de6Uezjbd21T/2cmD/92kXv3XukpR80lKf+meD/AK1D37r3Uj37r3Xvfuvde9+691737r3XvfuvdK2mP+/FzS/9nbtg/wDrHy49+690kvfuvde9+691737r3Xvfuvde9+691737r3U7IG8lKf8Aq0YL/wB0lP7917qD7917r3v3Xuve/de697917r3v3XulLtM2ylV/4bW9B/t9nV49+690mvfuvde9+691737r3Xvfuvde9+691737r3TyxvtaiH9N3bn/AN529gPfuvdM3v3Xuve/de697917r3v3Xuve/de68eOffuvdKPePO7t1H+u485/7s5ffuvdJz37r3Xvfuvde9+691737r3XvfuvdPmLNsTvEf1wGM/8Ae8wvv3XumP37r3Xvfuvde9+691737r3Xvfuvde9+690sN0m+P2P/AIbPUf8ArzZM+/de6R/v3Xuve/de697917r3v3Xuve/de6m4w2yuHP8ATM4g/wC2yUXv3XuoCfoX/gq/717917rl7917r3v3Xuve/de697917r3v3XulDTn/AH6eZH9dy7XP+2xWZ/4r7917pPe/de697917r3v3Xuve/de697917r3v3XunnOHVLhz/ANmdsP8A3jZGPHv3Xumb37r3Xvfuvde9+691737r3XvfuvdKHa5tlJ/8dvbxH+32fX+/de6T3v3Xuve/de697917r3v3Xuve/de6nxZXKwUMuMgymSgxc9bTZKfGQ19XFjZ8lRK0dFkZqBHEL1EKu6wzshdAzBWAYg+690KNH2NubF7ewNXX1b7oFfnt5JXrumpr8xVzJBQYQ0whzE833sPhM0zwxxVAiDu7PFIGZW917qfle3II6CM7TxtbiszUAmor8pLR5BsGuv8AzGCeJESaUqLffz08bIGPhgjlWOoX3Xug5w+9Ny4ODP0lFk5JKLdULQ7jo6+OHJU+YJoavHx1NWtesh+4jjrqoR1KMsq+RrPZiD7r3Q57X7I21umrlG6f9+9lIsPksjPPHWU1Jgs7X4qnat+0p6uvLHH1FXBG4RJBNHJUDRCFaaGlHuvdA/uzsDJ7ppabFpTxYjCU0v3ZxdLNLKa7I2dEyOWqnsaiWKN2hpwFSOFC/jjWSaokm917pB+/de6n4r/i547/AKj6P/3IX37r3TtvQ33juw/13LnT/wCtSX37r3Sa9+691737r3Xvfuvde9+691737r3T5jTbEblH9aLHf+7um9+6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cFg8jUVDQuayNXji8SO0fuvdNuxdmYPcm3MJ/EYDHW57f2QxcGVpK56evFJtvEY37na0IrnGNppcrU7gx4pK7I+KBJoVikqIUla/uvdOr7Dosvh8NUHHVtGuI6w3XPUz42jpaGet3JtPb8/a2SyueTIsupExmWxNEkcTvLKA2hwKQpL7r3TiejqH+8sGC+/3bWUq7rpdpZOWh28lFVfc5PNYnZNLUYusr3anECZ+TcuONdUKsDyYpVGkVayR+690BO48ljsruHP5XDUEWKw+UzmXyWJxcIIhxeMr8hJV0GNgBCnx08TpClwDpUX59+691JppD/dLN/T/AI+Pa3/uszHv3Xuk7rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6dMw5+9T6f8WvAf8AugpffuvdNes/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917padeSEbxw/0HNf8A+6yb+vv3XukXrP8Ah/vPv3Xuvaz/AIf7z7917r2s/wCH+8+/de69rP8Ah/vPv3Xuvaz/AIf7z7917r2s/wCH+8+/de6c2JGEpnuvqzWUW1/UNGOoSSV/AN+D+ef6e/de6bNZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3So3u5/vlur6H/fw5j/ea+Q+/de6S+s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917p5w7nwbp+n/HqH/3ssIffuvdM2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917pRZuQ/wzZ/0/49yq/wDetynv3Xuk7rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6UW0HP97drXt/x8eDP+2ycXv3XukrRuRSUo4/4Dwf9ah7917qRrP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6VdNIf7j5n6X/AL17Z/1v+LRlvfuvdJTWf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917Wf8P959+6917W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0dlY/ZmXwEmEnyFRtreWzNs772y2Xmop8zDidxUZZqLLyY5I4TUU1VFU07tHEisEDhQGHv3XuptPt3Zm1166qd+0+6q6De+EqdxZmiw02Owddt7blVuar25hMphaqsjro66okTH1Vf4qiGGNo3hh1KxeZfde6e8/1MuxKLe248+8ufwW0e336loKaiqIsTU5yuo6SrzeRylfIRUGkiWhgpRHHGshM1XcyBaZkn917p0q+m8Rkc9S1O1slkJtnS9HVveuQgrKmlqdwYrGYSlqaLObTiyApqSnqqoZil+wjrFo40SOYTmGbwss3uvdI7L7Y2rW9W0XYO3jkcXlcfvSn2Rufb1dkEy9PN/EduSZvC7lxVRHR0rU0cr0dfBNSTS1LalV1kRfQ3uvdIHBYSs3BkYsdRz4qkZx5Jq7OZrE7ew9DTh1jepyGYzk1PTQoGZVXXKGd2WONXkdEb3XuhCw3UGaqt85nYO5cthdmZfCbXzO6ZpsrX0Ndja2lxm2P72UcFFlcZPJSslVSMk7VSzstPAJpnR3gaBvde6DabF1C5eTC0klJk6sZJsVSy46oWehyNT919nBJQ1dgHimexiksAVIb6e/de6HGl652VWbu7H6sin3Gd37VpN6ptPcLTUMFFuXcvXmPlq81g8htnxS+GlyC0ORkoapMoHpwIfKlQWZB7r3XexOq9tZjB7Eze4a/JVOK39uHdu0cjmsDVQUVD1ZksJT0Nbiq/dtRlKZ6WUywS1VfNRtU05agXyxTeRHCe690XtTcA/1AP8Atx7917rv37r3Xvfuvde9+691737r3Uqg4rqM/wBKun/63D37r3UrOf8AF6zH/a0yH/uW/v3Xumv37r3Xvfuvde9+691737r3XvfuvdK7AG23t9D+uGxP+8bpoT7917pI+/de697917r3v3Xuve/de697917r3v3XuljvA6l2nf8A54rBD/eJffuvdI737r3Xvfuvde9+691737r3XvfuvdLHYRtuelP/AFb9wf8AvPVXv3Xukd7917r3v3Xuve/de697917r3v3Xuve/de6V9Uf9+Fgx/wBnfuo/+sbDe/de6SHv3Xuve/de697917r3v3Xuve/de697917p/wB2c7r3Qf8As487/wC7WX37r3TB7917r3v3Xuve/de697917r3v3XunnFf8A9w/44aP/wB3lEffuvdM3v3Xuve/de697917r3v3Xuve/de697917pY5U/78raA/plN2f7z9h7917pQ4lDR7axFMJml/iE2Rz0i3OinM9R/A4oEbSATagMj2LAF9Nw4dR7r3UlFp5JaeKtlmioJaqkhyE0HNRBjpalY8hPTA3BkSEu8YIsWAB49+690eDsmdot1S4+OnigoMLjMTh8QFaV5nxNHSA0bVU07M7ugYwhnYtoRdRZtTH3XukH5z/qR/tz7917r3nP8AqR/tz7917r3nP+pH+3Pv3Xuvec/6kf7c+/de67WZmIUKLsQBz+SbD37r3SSXsLaQ3Bl9s1mTbD5LEZOfEmfM060mJyFZS1DUlT9nlIJJkijWRSBJXimUqQxI9QHuvdLZIayaOKaCnNTTzxxz09VSkVVJU08w1QVFNV05aOSNwQUkRirDkEj37r3QEd15vbVZg8Xh0yFDktyY3OTVMCYutasjxNBWY8RZmDI1FIXo2kmlioV+3LNUQvA4YwDyRz+690W337r3Svxh/wB+Xuwf1zG0v94jyXv3Xukh7917r3v3Xuve/de697917r3v3Xuve/de6Vm8zfLUP+G09iD/AG2ycf7917pJ+/de697917r3v3Xuve/de697917p/wBtm1fVn/s3d3f+8pW+/de6YPfuvde9+691737r3Xvfuvde9+691737r3TtN/xYsaP+rtmv/cPH+/de6affuvde9+691737r3Xvfuvde9+691737r3Sy3+b7qrz/wBMmE/90VN7917pG+/de697917r3v3Xuve/de697917pZbQNoN6/wCOx8gP/W5jvfuvdI337r3Xvfuvde9+691737r3Xvfuvddr9R/r+9Hh1ZPiHS33Ob7c2AP6bfyo/wDXyyZ9prfi/wDpj/k6Pd5/s7f/AJop/hbpD+1XRB1737r3XvfuvdOGKylZhcjSZShkMdTRzLNGQStyv0s68qymzxuP0uFazAFT7r3U7cW4KrcdW9TVK48s1VVVBnnFZUVlZXOJKqqq6jxxhixHAEY+rElrjT7r3Qg4Zctmctia/enYGSoJ8vs7KVG3avK7ky0BydFX5iTYX93KrdBhr/4VDPFT5d5zU0r08kFKtM7RirEsHuvdeydPuHp/NbNr2aqFdWYvKZR9t515UWipqLeWc23jad58HVAESQwnI0eQxlakkM85qaKdGWCrk917pXzbXze+qenzdLuDL1u59xdabVqMfiZa+noJcrlcn2zSdIUuDWaQ/wCU0Zoaenaepq5/PLKiSVcsrM8nv3Xuklj9tbgpsRk4MDvUTyU4aCqiwGfrYcHR7Xzeztwbl7DhzAcQusv2m1qdqmjWNvuIlRXWRxCnv3XusdRsHcz4r+NLvPDZV1oKs4uhx+Q3RlMpk8RDnaHqSqOKigoGDRN56Ohji1jz0qGGFZDAYB7r3UTNbU3LgsLR7nTdEeQpqNcRW4qqx2RycctLFkdy5qkY08WRSnqaeemy+GrHlQQraRlm1a29+690Fvv3XulBTG21cyP67h2z/vGNy/v3Xuk/7917r3v3Xuve/de697917r3v3Xuve/de6cst/wADE/7VuC/3jBUw9+6902+/de697917r3v3Xuve/de697917pZdfm27sQf8a7/3Wze/de6Rvv3Xuve/de697917r3v3Xuve/de697917pwJ/wBw8A/pl8j/ALzQUXv3Xum/37r3Xvfuvde9+691737r3Xvfuvde9+690p96m+8N0n/s4Mv/AO58nv3Xukx7917r3v3Xuve/de697917r3v3XunfEG0O5v8AHaxH/r4YX37r3TR7917r3v3Xuve/de697917r3v3Xuve/de6UOaP+43aX+G3qkf+vXkz7917pPe/de697917r3v3Xuve/de697917pQbTNt1bYP9NxYQ/wDrTi9+690lqPmkpT/Wng/61D37r3Un37r3Xvfuvde9+691737r3XvfuvdKmmP+/KzI/wCzp20f/WTlvfuvdJb37r3Xvfuvde9+691737r3Xvfuvde9+691MrTd6X/tU4P/AN0tP7917qH7917r3v3Xuve/de697917r3v3XulFtf8A4udT/wCG7vD/AHnaVcPfuvdJ337r3Xvfuvde9+691737r3Xvfuvde9+6907n/j2aMf8AZ17k/wDdBgvfuvdNHv3Xuve/de697917r3v3Xuve/de66P0P+sf969+690ot2m+69zH+u4c0f/WlJ7917pPe/de697917r3v3Xuve/de697917p6xp/3F7t/xwOOH/r74c+/de6Zffuvde9+691737r3Xvfuvde9+691737r3St3Of8AIdl/4bSQf+vHkT7917pJe/de697917r3v3Xuve/de697917qZjTbKYk/9XfFf+7GL37r3UFP0L/wVf8Aevfuvdcvfuvde9+691737r3Xvfuvde9+690/Qf8AHrZcf9nFtn/3V5j37r3TD7917r3v3Xuve/de697917r3v3Xuve/de6d8z/nMT/4aWx/942ZQD37r3TR7917r3v3Xuve/de697917r3v3Xun7bX/Fzm/7UO7f952lXD37r3TD7917r3v3Xuve/de697917r3v3Xuve/de6UVd/wAeptkf9X7ev/uBgffuvdJ337r3QmYHYEOc2/j8m2YGOqaytrwI58e1TTfZQutItQaujlaUESxuDCaa9izgm6hvde6T2b2VuPAq89TQNW40OiLmsSJchiGMshigWWpRA1PJIwYRwVkcMzAFhHpsT7r3ThS9a7znFPJVYd8NDUr5Ekz09Ph5VgFQ1O9S+OrWWs8YKMwK0xLrZog+pb+6905bkwuW2ttGDDy5XAZTGZHci5KdaGhqfvqLLUWOmpITTZHKUlPP9tUU0oMyJpBliUOlo4pJPde6D/GcZHHn/ptpP+t6+/de6dd4c7t3Qf8As4s3/wC7OX37r3Sd9+691737r3Xvfuvde9+691737r3T1jzbE7iH9aPHf+7qnPv3XumX37r3Sr2Ztw7rzS4aCWB8pPBGcFhpqqHHvuvMPk6aki2xR5arZYKSonglqJ6eSe6yyQrSoDPUQj37r3Uao2+aPE0NbWVkdJkcmcVU4/Eyosk1Rhsv5lpci/2zyTxPeJJRBLTLrgnglieQuUT3XuuG58GduZibENNNM8NJiqmVaqjkx1dRzZPEwZSbF5PHys5grKNpjSVkOtgk0cihmADH3XumD37r3XvfuvdPeU/4te0/8MJkP/exyp9+690ye/de697917r3v3Xuve/de697917pYbZ25BlaTLZnISVH8Lw0uPo3paGSGGur8nl0qJMdSrVVCSpTwhKSplmqDDMRoSJYiZvJF7r3Thn9sJWZXG/3VoiIs7DWTwYZBUxLiFxs5pqgVWUytVOkkaxKlRU10k0MSs0jeGlgCIPde6i7o2JnNtyUMjUNXVY7I1MWIoa+nSOrirtx0lDTrn8RRiiaRnMNdJNT0xKqalEEsQdTf37r3SpejOKp6HBrItRLiIZqaqlgdZ45cnU10tbXw0skJZZI4pZft43QkSaNa3Dj37r3TDvHJtRB9qUzANSVCS7iqFSVHqcv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XI7H3XumjWf8P959+690/wBO5/utmPp/x8G2rf8Anty3v3XumDWf8P8Aeffuvde1n/D/AHn37r3XtZ/w/wB59+6917Wf8P8Aeffuvde1n/D/AHn37r3XtZ/w/wB59+6905ZZz94n0/4tuD/90dN7917pt1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+690sNhOf72Ym9rXrv94xsx9+690j9Z/w/wB59+6917Wf8P8Aeffuvde1n/D/AHn37r3XtZ/w/wB59+6917Wf8P8Aeffuvde1n/D/AHn37r3TgXP8Ig+nOWyP/uBRj37r3TfrP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6Uu83P97tz/AE/4v+X/AK/8r0nv3Xuk1rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de69rP+H+8+/de6d8S58G5b2/49f/5b8MffuvdNGs/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917pQZmQ/wAO2n9P+Pfqf/eqyfv3Xuk/rP8Ah/vPv3Xuvaz/AIf7z7917r2s/wCH+8+/de69rP8Ah/vPv3XuuwzMQqrckgAAEkk8AAD37r3St2/jcrQbl2tLX42uoopNy4eKOWro6mmjkliyULSRI8ygFlBBZQbi4v7917pE0bkUlKOP+A8H/Woe/de6kaz/AIf7z7917rlH5ZZEiiRpJZXSKKONWeSSSRgkcaIvJZiQAByTwPfuvddMzqxVl0spKsrAhlYGxBB+hHv3XupMdJXTUtRWw0dTLRUjxR1VXHTzPS00k1/ClRUKCiF7HSGIvY2+nv3Xuous/wCH+8+/de6U9PIf7mZgWF/7z7b/APdVlffuvdJxFmkiknjieSGIRGWZEdooxPcQmSReBrsdNzz+PfuvdY9Z/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvdOFWkzCKWOJ3hhxmAE0qozRxNNh4fCsrjhS+ltIJ5sbfQ+/de6iRR1E5kEEEkxihlqJRFG8hjghXXNPIEvZEHLMeAOSffuvdYtZ/w/wB59+6917Wf6D/effuvde1n/D/effuvde8h/wAPfuvdKLa7schUsFJU7f3aAyqWF22jXOouP6hWb/WBP0B9+690ndZ/w/3n37r3WWSOohSGSWCWKOpjaWnkkikRKiJZDC0kLtYOodWUlbi4I+oPv3XusWs/4f7z7917r2s/4f7z7917rI6TxpDLJC6R1CPJTyPG6pPGkrQO8LtwwDo6ErcBlI+oPv3Xuses/wCH+8+/de6di5/u3SfTndW4/wD3QYMe/de6adZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XTOSrDj6H/evfuvdKHdkh/vVuX6f8fBmf/djJ7917pP6z/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3XunrGOf4Xuz6f8WLHf8Ava4g/wDEe/de6ZdZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3XtZ/wAP959+6917Wf8AD/effuvde1n/AA/3n37r3Sq3I5+x2d9P+PVX/wB6LI+/de6Sus/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917qZjnP8TxX0/4u2K/3jIRn37r3UFHIRBx+lf8AevfuvdctZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3XtZ/w/3n37r3T7A5/uvlvp/wAfDtv/AN1mX9+690xaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3Xuvaz/h/vPv3XunbMOfJivpxtTZI/wBts6h9+69006z/AIf7z7917r2s/wCH+8+/de69rP8Ah/vPv3Xuvaz/AIf7z7917r2s/wCH+8+/de6ftuOf4lP9OMDuv/3la0e/de6YdZ/w/wB59+6917Wf8P8Aeffuvde1n/D/AHn37r3XtZ/w/wB59+6917Wf8P8Aeffuvde1n/D/AHn37r3SgrXP91tt/T/i+by/9wcH7917pP6z/h/vPv3Xuhk6yzcc9FX7YnkCVUdRNm8KGRylQPtNOeoWmZyFfxQQVNOgjVCEqdTmRoUf3XuhFSd421RuY2sV1I7I2lhZl1KQbEfUe/de64iQD6aeST/sSbk+/de6QnZKyf3dxs5RhG2caNHKMI5HXHsZFR/oSoK6gDxqF/qPfuvdBBjXP8RoPp/wNpf6/wDHdffuvdOm7nP969z/AE/4+HNf+7KX37r3Se1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvde1n/D/effuvdPOPcnF7g+n/AADoP/dxTn37r3TNrP8Ah/vPv3XuplLkqqiSZab7eN5ZKWZak0lLJXUs9EzvTVGNyEqNPSyKXa8lNJGzcBiQBb3XunaPd+fiXEKlXCWwdBkMTj5pMfjpalcRlIJqasxFZVyxNLVUhjqJ446WqeSKJZHWJEDEH3XumrI5Wuy1W9fkZzVVkkNHBLUuiLNOtBRR4+meodADJJ4okV5Xu7ka3ZnJY+691C1n/D/effuvde1n/D/effuvdPeTkP8AC9q8DjCZD/3sMqffuvdMms/4f7z7917r2s/4f7z7917r2s/4f7z7917r2s/4f7z7917qVQ01Rka6ix9N4RUV9XTUVOZ38UInqplgiM0pvoTUw1ORwLk/T37r3QpwxUOJx7YnFvUVCS1n3mTydQppXys1OrwYyOLHRSyxwwUscs3iLO0sjzSu7Kpjgh917rj9xN4ZKbyP9tKQ0tPrfwSkfQyRXs30HBFuAfqB7917rFvXcecjk2RXtubKncGCx8jY+E5OtqqnB0T1/wDFcNlEqJpH8E9YJWcwcH7eKmkYeOWID3XumNewMhDBHLSY3FUOdRXQ7go6f7adC1TJOKqixUBWgpqlUkEKVFPTKyKiPHonHm9+691Ij6s3s0qUkGPw8tR/eXAbLFHTbr2jPUxbo3LJJBhcDLSQV7PHO7QTrJG6jweGXz+MRSafde6b87tLdmyUo8tkUo6Rf4vlMZTV2F3Hgsy9Hm9vPE2Qo55tuVdS1LUQmWJ0WYozqQ8epQSPde6c0697Di3o3WMeOeHdjeHJvhBnMTFS6qbbj7pp66XJ/dChDR46R51kaouoZkBEhKH3XuuONrt07xwcm2hkcjmqrM762TS4mgyWTZoZc3mKTK4ulKy5SURQvM0iRPK7otreRgFuPde6l43YHaO58rv3D43GZLM5ra81ZT74x0WXo6nITVO362WCelWmapL5WWGejk8UVEKhmaNTEGuhPuvdMGK2RufNQLU4+lxz0x2xU7xapqs/t/HU0O3KTcH91ZshU1GRq4kiP39oEglZZXuHSNoyHPuvdJ/JY/IYirehyNM1NULHBOoJSSKelq4FqqKtpKmFmjnp54XSanqIXaOWNlkjZkZWPuvdQNZ/w/3n37r3ThiaJ8vlcZiVrMbjmymRoccMjmKsUGIoDXVS0332UrmDCGmh1eSeUqdCBmsbW9+690bndez9jZXbdNWZ+DqzLbm2v11S7ejzWJ+S+3JKnJz7W289Hia2i20uDfyVAEcUVJRCoCNoijldiZZn917oJPkNNLJ2dUySljK+0OtWkLwNTOZD1zii5emLMYze90LHT9Lm3v3XugR1n/D/AHn37r3XtZ/w/wB59+6917Wf8P8AeffuvdCL2BIftuvPp/zLrD/+7av9+690HJckW49+691//9HTM7ak/wCMq9mcX/4yDvP8/wDZx1Pv3Xug+8n+H+8+/de6U2y5P9/dtnj/AJfmM/P/AE2J7917pM+T/D/effuvde8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de6kR09XLTVFbFSVMlHRvBHV1ccMr01LJVFhSpUTqpVDIUcRhiNWk2vY+/de67hpqyohqqmno6menoI45a6ohhllho4ppRBFJVSopWNWkZUUuQCxAHJ9+690/Y/aG58mcqtNh54mw21JN75BMjLT4h02ogpymapkyzwGoilFVTGnFOHeYSIYVcMPfuvdYM/trO7YGCOcoBRDcu3MZu3CMKuiq1rdv5hpFx1dqopJBGXMMgMMumVLetFuL+690n/J/h/vPv3Xuva/8P959+69055LEZnDClbL4fJ4pa6N5aI5KhqqEVkUao7yUpqkXyKBJGSUuAGU/2hf3Xup239sZ7dP8dOCx/wB8Ntbcym7c2TV0VItDt/DeMZLIFq2SMSePyp+1Fqla/oRrG3uvdNNZR1+OeGPIUFZQSVFJSV9PHW009K89BXwLVUNbCk6qWhniZZYZVBV0IZSVIPv3Xuonk/w/3n37r3TxkMJlMVj8FlK6nihotyUVVkcNItbQ1ElVRUeSmxFRUPS08jywgVNPPEPOiFijFQQL+/de6ifY5H+Hfxj+HV38H+/OK/i32lR/DDlBTCsONGQ0eH7gQkSmDXr0EPp0m/v3XuoXk/w/3n37r3T1gMFltz5NMRhaaKpr3pMlXCOeuoMdEtJiMdLl8lPJV5KSGFFipoJZW1SDhTa5sPfuvdQKKkrslUx0eOoavIVkocxUtFBNVVMgjQySGOCBWY6VBY2HABJ49+691jnhqaUUxqaWenFZRw5CjM8UkQq6CoZkp66mMgHkhkKOElW6sVYAmx9+691g8n+H+8+/de6lxUdfPR1eRhoKybH0EtJBXV8VNPJRUU9eJDQwVdUimON5/DN4VdgX0PpB0tb3Xuonk/w/3n37r3Xg9zYLc6S1gbnSv6mt/QXFz7917qbW0ORxv2f8Rx1dj/4hQU2Vx/31JUUn32LrLmjyVF9wq+Wnl0t4po7o9jpY2Pv3XuoXk/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvdSqF/8tpOP+Uqn/P/ADdHv3XupOak/wBzOW4/5edf+f8Apqf37r3TZ5P8P959+6917yf4f7z7917r3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3SrwUn+4De3H/AC58Vxf6/wC/novfuvdJTyf4f7z7917r3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3Sw3c9htb8/787Cfn/GX37r3SP8AJ/h/vPv3XuveT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de6V2xn/AN/LS8W/yDPc3/7N+q9+690kfJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvde8n+H+8+/de695P8P959+690rKmT/fi4Xj/mLNz8X/6s+I59+690k/J/h/vPv3XuveT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8P8AeffuvdPu6X/39G5eP+Yhzf5/6ucvv3XumLyf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3XvJ/h/vPv3XunjFv/kuf4t/uHT8/X/czR8e/de6Z/J/h/vPv3XuveT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8P8AeffuvdK3KuW2btRVB1HI7qC6RqYE/YgWUfU3+g9+690I2543XD77kxtJWVkFLV4WiyctHJLRx4bGitWOlkrI6SKaGWkaqhSllilljXzikkiZmBX37r3S+6MnxcO4eq8UcbS+arrcluKt3HSU2PgzIq8WuWqsRi5WaBZmhppqaCSSSadw0bnwJFIiyH3XuhQzFZW1OWyU+T8or5KyczpOssTRWe0MMcM4VkiSPSsK6QBHp0jTb37r3Tb5R/h/yUPfuvde8o/w/wCSh7917r3lH+H/ACUPfuvde8o/w/5KHv3XuveUf4f8lD37r3SW3Tl6ahq9uy5nbVbUYWKuxni7Bo66KKo2dlPvz9tCZKWF6mnphpDTxyzolVE0oiikeH37r3QPd07lxufzGDFDk4M1UY3FT09dkKf96ICesM9FjkyJ5nECanGm6R+XQrag6p7r3QNeT/D/AHn37r3XvJ/h/vPv3XulZjX/AN+durj/AJe21fz/ALRkPfuvdJPyf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3Sp3g/+5Wi4v8A79bZH5+n+/NoOPfuvdJbyf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3XvJ/h/vPv3Xun7bj/AO5Cp4t/uA3Xzf8A7Nes9+690w+T/D/effuvde8n+H+8+/de695P8P8Aeffuvde8n+H+8+/de695P8P959+6917yf4f7z7917p1mk/3CY/j/AJeuZ/P/AEyUPv3Xumryf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3Su31J/v567i/+TYf8/wDVlp/fuvdJHyf4f7z7917r3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XulftN/wBneJ+n+/Lrx9frfM0HHv3Xukh5P8P959+6917yf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XYk5HH+8+/dbGD0I+QwOayu1tj12OxtXXUi43N4956SCWdYa6n3PV1s1JMI1JVhDVU8ikjSweysWSRURm4gt2KzOqk5yQMdCSPZ903eFJdut5ZlQBSUjdgG4kEgEVoQafPpO/3R3N/zosr/wCcFX/0Z71+8LP/AH4v+9D/AD9b/qhzJ/yhT/8AOGT/AKB69/dHc3/Oiyv/AJwVf/Rnv37ws/8Afi/70P8AP17+qHMn/KFP/wA4ZP8AoHr390dzf86LK/8AnBV/9Ge/fvCz/wB+L/vQ/wA/Xv6ocyf8oU//ADhk/wCgevf3R3N/zosr/wCcFX/0Z79+8LP/AH4v+9D/AD9e/qhzJ/yhT/8AOGT/AKB69/dHc3/Oiyv/AJwVf/Rnv37ws/8Afi/70P8AP17+qHMn/KFP/wA4ZP8AoHrsbQ3QSFXAZd2JsqJjqx3c/wCpRFS5P+AHvYv7QmgkU/YwP8h1R+UuYY1LyWkygcS0TqB9pYAD8z0mPIPqLEEAgg3BB5BBHtYDXoOsuk0PXvJ/h/vPv3WuveT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de6fqd/wDfr5fj6Z/bf5/6t2WHv3XumHyf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvdOOVf/K04/5d2E/P/Vkp/fuvdN3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3Sv2HJ/v68Txbmt/P/AFbpvfuvdJDyf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3TgX/3EQn/AKu2Q4v/ANMFHz7917pv8n+H+8+/de695P8AD/effuvde8n+H+8+/de695P8P959+6917yf4f7z7917r3k/w/wB59+690pN4v/v7dzcf8v7Lfn/puf37r3Sb8n+H+8+/de695P8AD/effuvde8n+H+8+/de695P8P959+6917yf4f7z7917p3xL3g3Lx9Ns/7f8A39uIPv3Xumjyf4f7z7917r3k/wAP959+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/D/AHn37r3T/mH/ANx21OP+XBUfn/s6Ml7917pg8n+H+8+/de695P8AD/effuvde8n+H+8+/de695P8P959+6912rykgQq/mJAi8eoyeUm0fjC86r2tbm/v3XujjUFWN3fKNdl5DH1pwy9z7yymVw/8X3DVY7NVWHq8hNiczUYyedhDPSRid/LTlIjE+l08CuJPde6DTE4La77I2huan2XV7tTcmN3LjdwYnbDZKOo27uHDxJjMFSQZhpat8aVpGps4JaqirFq5WnidTTgpB7r3T5gdkbWyuBpoqnbQgq5vjju/s2rysVRnY6xM7tnc2VpMPk4qeoneGGKeKjpoaoPE0MqSaolikdZPfuvdS8bhaPEdrddUW09rmq2hS7u6hyOI7EXHbgWszEVVkKFKjLS1c8xpFFVkKmWGWlWH/J54kpVIlglMnuvdJTtrHUEtDk9yJh1x+Zj7q7e2nlquKoys81fT4+bHZzGrnTXyPEK2F6+qi8kEFN5EA1xEoCvuvdPWxJJdwbd2rs3cu2tzYXAVi5GlxPaOzstV0lDg8RnsjkKPL1+/cLU+bF1tElUJYcm1U9DOMZC4aSWnEBb3Xuo9Fs3aKwbOhnpkfae4ep8zurcXYUlNl6iTB7xo8PlqxsfRvSyx08b0WRpqLFfYTxs9SWBUeWspinuvdKPIbDwNL1V2hkUwUtK1JsH467t2zkJJ8mFmzOepIKDeeWxpnl8dUjT1dZBVIqvBBLZNETogHuvdLXflY9DV/LKujxMSYcP1ZXpR1n8Z/gmex7b+hOHyc7mVPJBUxrKtM1NNFG8akwMVD6/de6Sm5uudlbSz+95sftjJ7oi272zJgMhsqL+J19fQbIq8SmXwS00lNPBVwRZKY1FCuWc1DwCOBkV5JD9x7r3SP2ptrbE8nUtPktnFF3r3JnNkZc5rIZs5JNuUOe20kGOeopHoac1kf3tZRyV1PRwagzgRI6qY/de6gb12pt6m63rNzY7ATYPIYPundnXyFanJTmowiYtc3jqTPtkSyvX0jCSJJYEp9cZYSQkqhX3XunPYGxKavwGMmzG16fI0+89m9j1WGr6PH7oq69MrtWiy0uLq48xBUwUNPWrW0kMEeNggq2liQNVQItTEx917qXUbL2lNRbqx1LtvwSUXx46/7QosyldmKjItuNqXB1OYr8eHl+1FBVrkqpK2B6eZVKl4ZafQqR+690ut2YSk2z193ziNuY2WHaVNi/j5/A9wxffTxbzw5XXSbmqchc0sorJZvMFgREiZlgABiK+/de6B3qvL0Wx5MVufP1VXisNu7cEW0MlI+Nq8hisx13A8P+lPH5Gng0SsrwVePEEtJ55FdJV8IYo4917oQNsdXYXCwbfx+69t0uZzC/JhOnc7WV1RuOioarBZDE09JKtNDjqijtIXdq/H1CyK4B1FZo3Txe690mKzaeW3HQdF7Zo9vxs1Rgt44Wny+Ylz9FjqjJUPZG56+pwlY9Be9RTxKtVLR0MJr5jIkcSXkgQ+690vIuutkV+2v7ySbWqBkY+nu3cvW4+SHN4Kmi3H17uijo8NnKjDU9ZNNSSmkqYTX071fjeJ1kEUDTR1D+690Dm6KChG1sHk9q7RpMvTbj21mM7uPNUWK3RP/dbPwbpqzlMJRFKyWKmp8RQx0IUVKsTTzCqqGkSeF1917owsmJpMhvT5HHcNLmdt4qp7E2rHmaqnrs/BBTbP3LuLOUeS3g9Jknko389C8lRQ1dRSywxA6qMKjMX917ore/qKuochV08uwqbZtFjM5mMdTPSHMVcc6CVRTY187XVE9PXrTRx6oaunAaZZWleSVHh0e690oNwbe3PnNodTy4/D5itoqPrvcNTU18dPMMTi6Om7V3HLW19flJwKSkggiaKSpnqJEjijKPKyoVPv3Xuhei6zwqZbFYDObNoIa7Ed77B2Jl4cZBumgpq7bm7qfIzZukjq8hkmr6qmhaliWgyr0lKzLqlWWoRyIfde6Dfbu3MDuHF9d1k20KeKerz/AGvgmoqTLZiiO8KzbGz8ZuTZG38pW1tQwNZXZOskxt8atJLUI6wQLHUCORfde6Earx9HV7P6fTc+zM/Lj6fYvZkstNg8PW1p2fkJu1JqWPcE+26qqpJKyGOWpghno/vYyv3EcvqVFhk917ot2+sMdtbszWFM2GqftKiJw+BbJ/w2MVdLHWilWDMj7unmh8nhqqSp/cp51kgbmM+/de6aC/8Av3KTj67p3F+f+rFhB7917pq8n+H+8+/de695P8P959+6917yf4f7z7917r3k/wAP959+6917yf4f7z7917rovcEW+v8Aj7917pQbrf8A39G5OP8Al/5j8/8AVxk9+690weT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8P8AeffuvdPONe+L3V+P9wmO/wBj/v8ATEH37r3TN5P8P959+6917yf4f7z7917r3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XulVuST/Idncf8wqv5+n+/hyPv3Xukr5P8P959+6917yf4f7z7917r3k/w/wB59+6917yf4f7z7917r3k/w/3n37r3UvHSf7k8Vxb/AHLYvm//AFcI/fuvdQkf0Jx/ZX8/4e/de65eT/D/AHn37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8AD/effuvdPsD/AO/Yy3H/ADEG2+L/AF/3GZb37r3TF5P8P959+6917yf4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09bFLLFWVVZV1AeJ3RIo2Pl9+690nYslkYKGsxcNfWw4zIS0k9fjoqqeOhrp6AuaGaspEYRyvCZJDEzqSmptNrm/uvdZchmcvlqitq8rlclk6rJzw1WSqchXVVZUZCppo2ip6itmqWZpXjV3VHkJKhiAQCffuvdcMhlcplqusyGVyVfk6/ISCWvrchWVFbV10q20yVlTUszysLCxdieB7917rJX5vM5Wesqcnl8nkqnI/ZnIVFfX1VZPXfw6nWkx/wB5LUOzS+CJVih1k6EAVbAAe/de6w1WSyNbSY+gra+tq6HExVEGKo6qqnqKTGQ1dQauqhx9PKxSFZZSZZFjADOdRueffuvdeqclka2WunrK+tq5snVffZKapqp55chW63k+8rpJWJll1SSN5JCWuzG92N/de6nTbl3HURZCGfcGbnhy1LjqHKwzZWvkiydFhwi4ijyEbyETRUojjFNHICsWldAWwt7r3UOjyuUx8NfTUGSr6GnytMKPKU9HWVFNDkqMSiYUlfFCyrNHrVX8cgK6gDa4Hv3Xuosc88KzJFNLElRF4ahI5HRZ4RIswimVSAy60R9LXF1B+oHv3XupMOUyVPQV2Kp8jXQYvJyUcuSxsNXURUGQlx7tLQS11GjCOVoGZmhaRSUJJWxJ9+690os9uuPM7T2TtGLEUtFS7OTcssleJGlrc5kt118NXkauuUKkapHFTUlLBGFZgkRZpG1hI/de6Y5s5mqnLR56oy+UnzsM9FVRZqbIVcuWiqcckcePqI8i7mZZIFiiWFw90CKFICi3uvdN/ll0lPJJoaVJ2TW2kzxqyJMVvbUodwG+oDEfk+/de6ef70bm/iOTzH94s7/F83SVNBmcp/F8h/EcvQ1kaRVdFk67yeWoilWONZI5WZWCqGBAFvde6a4a2spkjjp6upp44qqGuiSGeWJI62mUrT1kaoQBLGGYJIPUoJsRf37r3XdbW1mSrKrIZGrqq+vrZ5aqsrq2eWqrKupncyT1NVUzlnkkdiWd3Ykk3Jv7917qL7917r3v3Xuve/de697917r3v3XupNGQtXSsSAFqYCSSAABKCSSffuvdScwQ2XyrAghslXEEG4INUxBB9+6902+/de697917r3v3Xuve/de697917pT4RwMHvFLi74nGkLcaiF3JR3IH9BcX/wBh7917pMe/de697917r3v3Xuve/de697917r3v3XulXupw42zYgldpYZGsQdLDyEqbfQ8/Q+/de6Snv3Xuve/de697917r3v3Xuve/de6VOy3WPcNM7sqqKHN3ZiFUXwVSOSePfuvdJb37r3Xvfuvde9+691737r3Xvfuvde9+690qKll/uXh0uNQ3RuVtNxq0nE4kXt9bf4+/de6S/v3Xuve/de697917r3v3Xuve/de697917p93QGG59yBwVYZ/MhlYFSCMlLwQfoffuvdMXv3Xuve/de697917r3v3Xuve/de6dccwWlzmohQcVGt2IAu2ZowoBP5JsAPfuvdNXv3Xuve/de697917r3v3Xuve/de697917pfQY+LMbf2pQPl8Ph1Wv3O0ldmqt6Sggu1DYTSwxysCbg/o+lybAE+/de6d8bt7OUW6MJi4txbaxuVXdWIgo6Kio66SVKvb1Csg3LSYzc1HS0dZeZZaSOJpw2RyCPBFFKpjdvda6UeaxFHLW4bCYeSWHO7hShjekr6ylpkoqrN01OmPjkWqYNSs00k0jrVTsUjKEsR6291vo3uVx89XjTVbn2tV7L/hW34KHE1A3Rh8viXqMZGwjx2Lp6NneaFrARs0aSupXkst2917oKBP/U8/8g+/de695x/qv+hffuvde84/1X/Qvv3Xuvecf6r/AKF9+69035XdNHtPHSbiqrTGiqIIsdRhBIchmpIparGUcoFwkBMDyVMr2CxIwXVK0Ub+690S9VCKqLwFUKBcnhRYcnn/AG/v3XuuXv3Xuve/de697917pUY9wu0tyoWUF8rtnSCQCxWOvNlB+vFzx7917pL+/de697917r3v3Xuve/de697917r3v3XulNuxg2To7EHTtnZitY3sRtCh4P8Ajax9+690mffuvde9+691737r3Xvfuvde9+690+7dV2r6kIrMwwO6msoLHSu2Kxnaw/AAJJ/A9+690xe/de697917r3v3Xuve/de697917r3v3XunOZh/Bsetxc5PMsBcXIFLQhiB9eOL/wCuP6+/de6bPfuvde9+691737r3Xvfuvde9+691737r3Sq3q6vuOsZWVlNLiLMpDKbYanHBHv3Xukr7917r3v3Xuve/de697917r3v3XulZtZwkG77sFDbQrUuSACzZihCrc/k/Qe/de6Sfv3Xuve/de697917r3v3Xuve/de697917pTZtgcNs5bjUuFyBK3GoK25q7SSPrYkGx/wP9PfuvdJn37r3Xvfuvde9+691737r3XvfuvdKbZZtvHaZ/puXBH/1qRe/dbGD0mFYOqspDKyKQwIIYFbggj3peHV5DVyeu/e+m+ve/de697917r3v3Xuve/de6fqdWO18w4VtC57bas1jpDNjsqVUt9LkA2H+B/p7917ph9+691737r3Xvfuvde9+691737r3XvfuvdOGUN6tR+Vx2FBH5H+4SmIuP9Yg/wCt7917pv8Afuvde9+691737r3Xvfuvde9+690q9kOse6MY7sqKPvLsxCqL4+UC5b37r3SU9+691737r3Xvfuvde9+691737r3XvfuvdT2uMVT34BymQ0/7VpoqPVb+tri/9Lj+vv3XuoHv3Xuve/de697917r3v3Xuve/de697917pRbvJO6tyE/UZ3Khh/RlrXVgR/UEWI9+690nffuvde9+691737r3Xvfuvde9+69074lWMG5SFJCba1MQCQqndeIXUxH0FyBc/kj37r3TR7917r3v3Xuve/de697917r3v3Xuve/de6fswrLjtqllYB8DUMhIIDKN0ZJCyk/UXBFx+QR7917ph9+691737r3Xvfuvdcdaf6pf+Sh7917r2tP8AVL/yUPfuvdP+0wZd07aiiBkkkz+GSONPW7u+RjVERF5JJ4AH19+690mqUg01PYg/sRDjn/dY9+691I9+691737r3Xvfuvde9+691737r3Skp2/36GWXjjcm3mI/IvjMoFv8A0vY2/rY/09+690mz/gFJ/AcFkP8Agygi4/qLj/X9+690Mu7uzFy2C3DiMPW5qhO4uzN9bzyVLTtJS4XI4PemPxrQ4rJwiceaeknppo5Ekpnjv+7DL6ufde6UGa7R2luHJzzZGDPrQYPI7H3BsyP+CYeoapyu39nUG3Ny4zc1OuQhf7TKPjaJROtXPLBHToYkXySxt7r3Sdq+wMHkdt01NWQZUbjPW9bsivmhx+P/AIXPW0nYtLvLb+Ujf7pHUtCKmOpZYFWB46daaExcQ+691O3N2rS76oMrhd0S5fw5LI7F3Mm4aagx82Uj3Pg9h0Wy91fxDEtURR1MFd4XqIZVrImjeJG8QFRLHF7r3UCbeG2JuvcdsdMzvOlgxWR3rXTw0mExcNFupcnPj6jbMOWH8WYQaZces8zGGpNN5NEX3Pj8knuvdJHfWWjy+Tw7QrF48dsjr/CiaJZFNU+K2XQ0c1RIJkRrl1ZRqQekL9RYn3XukX7917r3v3Xuve/de697917r3v3Xun/bQJyNTYEn+AbrPAvYDa1YWJt+ALkn37r3TB7917r3v3Xuve/de697917r3v3Xuve/de6d2Vv7t0TFToO59xKrWOksuEwpZQ39QCLj/Ef19+6900e/de697917r3v3Xuve/de697917r3v3Xun7dSsm6NyI6srrnswrKwKsrLkZAysp5BB+o9+690w+/de697917r3v3Xuve/de697917p5xoY4zdJCkhcLjyxAJCj++OKF2t9BewuffuvdM3v3Xuve/de697917r3v3Xuve/de697917pTbhYPRbSIIYDbKrcEEXXP14Ycf0PB9+690mffuvde9+691737r3Xvfuvde9+691LxwY5PFhQWY5XGWAFyT9/HYAD37r3UNf0rf62H+9e/de679+691737r3Xvfuvde9+691737r3T5AG/uzlSFJQZ/boZrEqpONypUFvoCbG3+sffuvdMfv3Xuve/de697917r3v3Xuve/de697917p2zAYS4wMrKf7r7NIDAg6W2jQsjWP4IsQfyOffuvdNPv3Xuve/de697917r3v3Xuve/de6fduqzZGcKpYjBbqYhQSQq7XrGdiB+ALkn8e/de6Yvfuvde9+691737r3Xvfuvde9+691737r3T/WX/uxt7jj+N7uF/xq+ywpK3/raxt/j7917pg9+691737r3Xvfuvde9+691737r3UugIWuomYhVWrpizEgAATKSST7917pz3SQ259xsOQc9lyCPoQchIePfuvdMPv3Xuve/de697917r3v3Xuve/de6d6Bh/Dc8lxqajomC3GohcvT6mA/oLi5/wAR7917po9+691737r3Xvfuvde9+691737r3XvfuvdPOSv/AA3a5twcNXWP4IG7MmpIP+uCP9cEe/de6ZvfuvdKTb2Gpsg0tflKj7XC0MipUNHKkVZkat42kgxOL1q48r6bzTuhjp4/W+p2hhn917paVWWNX40eaCKlp40goqCGUrQ4+liv4aWjgZjpVblixu7uWkkZpHZj7r3UX7qL/jrD/wBTF/4r7917rLHX0tOlVWTLT1SUNHNVLSySKIaioLLS0UVRaSMmIzyxeRVcM63RfUw9+690H2TzGTzM/wBzk6yWqkUv4kISKmplkIaSOioqcJDToSATHBGiX5039+6902+/de697917r3v3Xuve/de697917r3v3Xun2mDf3ZzJsdIzu2gWsbBjj8tYE/4gG3v3XumL37r3Ss2z9g1FvCGtppa2SfbNMuOo6cuKmoyMO8cRWL4hH6iscEU802kEiJHbgAsPde6mR0+4Yqqeip6asjydQYXq41pp4KLDpSQFqdyqp6ZKeGV/WL+IMQoM3K+691NwVLIK6jWFKygwFHVCatzE9HUJJl66KmlmhDD02hIDaYSwWOItLMWkZUPuvdB17917r3v3Xuho+QEqy9m17oysDtvYPKsGH/Hh40r9L/UEEf4EH37r3QL+/de6cKHF1+STIy0NOZ48Tj3yuRcSQxLS4+OqionqXMzLceWeGMKt2LOAAffuvdZcjh6nFxUUtTPjXatR2+1pMpj62toykUUpiydHSSPJTPaVQEmVTqDrbUjAe690qN8ur0+xNLK2jYWKRtJB0suUrbqbfQj8g+/de6QY+o/1x/vfv3Xuv//U03t8bvzeF7J3pDRzwSUON7C3XNDjqukp6qimRd21NdJS1SSLrkhldmEiF/UrFbge/de6YavfIqpYJqXH1+3Jv7uV+DrqrbO5c5RVVfLXbqn3TJLPLkJaoyU5ebS1NO0p8v7wk0x08EPuvdIitqmrayrrGjjharqZ6kwwqEiiM8pl8caj+yt7D37r3UX37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3ThjcpX4idqrHVBpp3heBpBHFJeKQgummZWHJA5tf37r3T/BvLcss8MT5Rikk0aMBS0IOlnANj4vfuvdSMlvLcsORyESZRgkddVooNLQn0rUMBz4vfuvdQv77bo/52jf+ctD/wBevfuvde/vtuj/AJ2jf+ctD/169+6917++26P+do3/AJy0P/Xr37r3Xv77bo/52jf+ctD/ANevfuvde/vtuj/naN/5y0P/AF69+690oMTvDccmI3VI+TctFjMc0f8Ak1CAH/vDSAMbRX4BIte3PIPFvde6T/8AfbdH/O0b/wA5aH/r17917r399t0f87Rv/OWh/wCvXv3Xuvf323R/ztG/85aH/r17917r399t0f8AO0b/AM5aH/r17917r399t0f87Rv/ADlof+vXv3Xuvf323R/ztG/85aH/AK9e/de6UGf3buGmTbwgyTosu2cXMwNNRN65Hld7Xj+lyT/xq3v3Xuk//fbdH/O0b/zlof8Ar17917r399t0f87Rv/OWh/69e/de69/fbdH/ADtG/wDOWh/69e/de69/fbdH/O0b/wA5aH/r17917r399t0f87Rv/OWh/wCvXv3XulFtXd+5KjOU8cmUfT9pl3GmmoQQyYaoZSP2rfX+o9+690nBvXc4AAyjWAsP8lofoP8Ap17917rv++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvde/vtuj/naN/wCctD/169+6917++26P+do3/nLQ/wDXr37r3Xv77bo/52jf+ctD/wBevfuvdP0+7Nwja2KrBk3E77h3DCx+2obNGuMxbL6TF+Df6f19+690w/323R/ztG/85aH/AK9e/de69/fbdH/O0b/zlof+vXv3Xuvf323R/wA7Rv8Azlof+vXv3Xuvf323R/ztG/8AOWh/69e/de69/fbdH/O0b/zlof8Ar17917rpt6bmZSrZRirAqR9rQi4IsRxF7917p73Jvbc3949w6cloX+O5fSiUlFpVRkJAqrqjJsBwLkn/ABPv3XumX++26P8AnaN/5y0P/Xr37r3Xv77bo/52jf8AnLQ/9evfuvde/vtuj/naN/5y0P8A169+6917++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvdTqTeG5JafKM+TfVDQRSxEUtDdXGVpVPBityCQePoeLHn37r3UH++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvde/vtuj/naN/wCctD/169+6917++26P+do3/nLQ/wDXr37r3Xv77bo/52jf+ctD/wBevfuvde/vtuj/AJ2jf+ctD/169+690I2Ard47lodv0+N3DHjqqnfdmRkyFQKaAUhx60L0a0n2kJqHneqlp40SlSSZDKJtIjRmX3XulTFufdmSFJmm3jSZql2Fi8LPnZ1jpMfuzK1e7cPAUOPmzXlkelEYSJMrEiziqMtcKYzTRyr7r3SXrt35mOpmqKDcGYmh1mrWpyNDiIMos2oyl55qUSiSZTYmpVlLv6wicD37r3Rk46vL4jZVDjt2bgqdx7uyU0O4qKqZY5ZMLjslHDLFRVdZVLrqAEFQjMFF5HCreKnR3917pN/xXI/8rTf9S4P+jffuvde/iuR/5Wm/6lwf9G+/de69/Fcj/wArTf8AUuD/AKN9+690F+9u2s1t/Ky4Tb89BPV0MUsGXyNbj4K37PLE6GosfTTjwFqQjTO9RDKrSlkCBYtcvuvdBLN2Rv2ph+2qt25yspdSN9pW10tZSaor+JvtanXHdLnQdPpvxb37r3UP++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvde/vtuj/naN/wCctD/169+6917++26P+do3/nLQ/wDXr37r3Sgot37jbbW4JjlH8keR26ikU1DYoy1zMpBi/qAeOePrbj37r3Sf/vtuj/naN/5y0P8A169+6917++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvde/vtuj/naN/wCctD/169+6917++26P+do3/nLQ/wDXr37r3Xv77bo/52jf+ctD/wBevfuvdPu4t27ipchTpDk3VH2/tKUr9tRMA8m1KJnILRX5Nz/xr37r3TF/fbdH/O0b/wA5aH/r17917r399t0f87Rv/OWh/wCvXv3Xuvf323R/ztG/85aH/r17917r399t0f8AO0b/AM5aH/r17917r399t0f87Rv/ADlof+vXv3XunjB713Ia2oL5HyBcJuchWpaMAMds1iBxojBut7jm17XBHHv3Xumf++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvde/vtuj/naN/wCctD/169+6917++26P+do3/nLQ/wDXr37r3Xv77bo/52jf+ctD/wBevfuvde/vtuj/AJ2jf+ctD/169+691Nk3huQY2jnGTcSPXZSNz9rQkMq09GyAgxcabta1vqb34t7r3UL++26P+do3/nLQ/wDXr37r3Xv77bo/52jf+ctD/wBevfuvde/vtuj/AJ2jf+ctD/169+6917++26P+do3/AJy0P/Xr37r3Xv77bo/52jf+ctD/ANevfuvddHeu5yCDlGsQQf8AJaH6Hg/7q9+690o92bv3JT56rjiy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d+HyVbh8dg6fJ0uKo6fI7rxNVinFQ0NTTQz1DJKKtkLUUiKripSWP3Xug6/vtuj/AJ2jf+ctD/169+6917++26P+do3/AJy0P/Xr37r3Xv77bo/52jf+ctD/ANevfuvdSjvTcv8AD4nGTYOcjWozClovWiUdK0YYGO3pLNa1vrzfi3uvdRf77bo/52jf+ctD/wBevfuvde/vtuj/AJ2jf+ctD/169+6917++26P+do3/AJy0P/Xr37r3Xv77bo/52jf+ctD/ANevfuvde/vtuj/naN/5y0P/AF69+691029NzMpVsoxVgVI+1oRcEWI4i9+690/bn3puVNybgVMmyouayYVftaGyqKxwqi8V7AWAuSf6knn37r3TF/fbdH/O0b/zlof+vXv3Xuvf323R/wA7Rv8Azlof+vXv3Xuvf323R/ztG/8AOWh/69e/de69/fbdH/O0b/zlof8Ar17917r399t0f87Rv/OWh/69e/de6csdvTchjzzPkSzJt1hExpqMGNn3RiQzoFjAuQLcg8E/nn37r3Tb/fbdH/O0b/zlof8Ar17917r399t0f87Rv/OWh/69e/de69/fbdH/ADtG/wDOWh/69e/de69/fbdH/O0b/wA5aH/r17917r399t0f87Rv/OWh/wCvXv3Xuvf323R/ztG/85aH/r17917p5ym89xrQ7aKZHQxwlR5GFNSEyMdz5KTU+qMgH1W9IAsBx+ffuvdM399t0f8AO0b/AM5aH/r17917r399t0f87Rv/ADlof+vXv3XulJs/dOcyO6cBRV9XFWUdRlKZailqcfjZ6edFbWEmglhKsLgGzAi9j9QPfuvdGD/aPJpKAk8kmgo7kn6k+j37r3XrQ/8AKnQf+cFH/wBGe/de65RusTpLFT0kUsTpJFLFR00UsUkba0kjkRQyspAIYG4PI9+690EvaObyOFrdtR4mWCgSfb88k6U1Bj41lkTcNbEruRFdiFVVGomwFhbm/uvdBh/fbdH/ADtG/wDOWh/69e/de69/fbdH/O0b/wA5aH/r17917r399t0f87Rv/OWh/wCvXv3Xuvf323R/ztG/85aH/r17917r399t0f8AO0b/AM5aH/r17917p9h3luQ7YychybGRNwYEI32tD6A2NyQcACL+1xe9/oLW5v7r3TF/fbdH/O0b/wA5aH/r17917r399t0f87Rv/OWh/wCvXv3Xuvf323R/ztG/85aH/r17917r399t0f8AO0b/AM5aH/r17917r399t0f87Rv/ADlof+vXv3Xuvf323R/ztG/85aH/AK9e/de6kVO9dyhoAmTKj+H4tiBS0Vtb4yGSRuYz+piWP+J4sLD37r3Uf++26P8AnaN/5y0P/Xr37r3Xv77bo/52jf8AnLQ/9evfuvde/vtuj/naN/5y0P8A169+6917++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvdPWA3nuVq+bXki2nC7ndb0tENLjbNYFcaYxyL3F+L/UH37r3TL/AH23P/ztG/8AOWh/69e/de69/fbdH/O0b/zlof8Ar17917r399t0f87Rv/OWh/69e/de69/fbdH/ADtG/wDOWh/69e/de69/fbdH/O0b/wA5aH/r17917r399t0f87Rv/OWh/wCvXv3XunH++m5P4FTuMiRKdyZ0PJ9tSFmQYTDBEIMemy2NrKDybk/j3Xum7++26P8AnaN/5y0P/Xr37r3Xv77bo/52jf8AnLQ/9evfuvde/vtuj/naN/5y0P8A169+6917++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvddNvXc5VgcoxBUg/wCS0P0I/wAIvfuvdPe5d67lG49w+PI+NDncuyxpS0ZVA+RkbSpeMmwvxcn/AF/fuvdMv99t0f8AO0b/AM5aH/r17917r399t0f87Rv/ADlof+vXv3Xuvf323R/ztG/85aH/AK9e/de69/fbdH/O0b/zlof+vXv3Xuvf323R/wA7Rv8Azlof+vXv3XunOi3puRsduPXkS5TF42WMmmpAY5Y93YwJIumMc2Zhzcc/S9iPde6bP77bo/52jf8AnLQ/9evfuvde/vtuj/naN/5y0P8A169+6917++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvde/vtuj/naN/wCctD/169+6917++26P+do3/nLQ/wDXr37r3T9mt4bjipNssmUfVLt1WkJpqEklc5XKvHitwLAWH0+tzz7917ph/vtuj/naN/5y0P8A169+6917++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvde/vtuj/naN/wCctD/169+6917++26P+do3/nLQ/wDXr37r3Umi3ruVq/Hq+SLo+Rx6OhpaIBketRWUlYweQbcEe/de6iLvfdBVScq1yAT/AJLQ/Ui//HL37r3XL++26P8AnaN/5y0P/Xr37r3Xv77bo/52jf8AnLQ/9evfuvde/vtuj/naN/5y0P8A169+6917++26P+do3/nLQ/8AXr37r3Xv77bo/wCdo3/nLQ/9evfuvdPEO9dyjb+Ub+I3ds3t5fJ9rR6lRcflG0ACO1iTc3F+Bz9b+690z/323R/ztG/85aH/AK9e/de69/fbdH/O0b/zlof+vXv3Xuvf323R/wA7Rv8Azlof+vXv3Xuvf323R/ztG/8AOWh/69e/de69/fbdH/O0b/zlof8Ar17917rw3vugcjKtcf8ATLQ/9evfuvdOGR3nuNGxviyPjDba2gzKlLRkF/7qUQd/XGTdiLnm1/oAOPfuvdN/99t0f87Rv/OWh/69e/de69/fbdH/ADtG/wDOWh/69e/de69/fbdH/O0b/wA5aH/r17917r399t0f87Rv/OWh/wCvXv3Xuvf323R/ztG/85aH/r17917p4wW9dymunV8j5FfCbnQq1LSAerbNYAw0Rg3U2I5+o5BHHv3Xumf++26P+do3/nLQ/wDXr37r3Xv77bo/52jf+ctD/wBevfuvde/vtuj/AJ2jf+ctD/169+6917++26P+do3/AJy0P/Xr37r3Xv77bo/52jf+ctD/ANevfuvde/vtuj/naN/5y0P/AF69+69071W8dxjBYKYZI+Y5TdULSfbUdzCKbESrGV8emwYsQbX5PNrAe6900f323R/ztG/85aH/AK9e/de69/fbdH/O0b/zlof+vXv3Xuvf323R/wA7Rv8Azlof+vXv3Xuvf323R/ztG/8AOWh/69e/de69/fbdH/O0b/zlof8Ar17917qTR703M9XSIcq4DVNOCRS0FxeYci8X4/x9+691P3FvHcsO4M9FHk2CR5rKqo+1ojYCvksLmL37r3TP/fbdH/O0b/zlof8Ar17917r399t0f87Rv/OWh/69e/de69/fbdH/ADtG/wDOWh/69e/de69/fbdH/O0b/wA5aH/r17917r399t0f87Rv/OWh/wCvXv3Xup9NvDcklFlZXybFoKekeL/JaEASNkoYtfEV7hWYDm3JuCbW917qB/fbdH/O0b/zlof+vXv3Xuvf323R/wA7Rv8A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cSeCaKpgjnilR4plEqOPfuvdMXv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XupNH/wADKX/qJg/62j37r3WfL85bJn+uRrf/AHJb37r3Tf7917r3v3XuvXt9Pfuvdd3P9T/tz7917r1z/U/7c+/de6UuGY/wTd3J/wCLXjfz/wBnBSfT37r3Sauf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3So3Mx07c5IttXED6/wDLT37r3SXuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3Sn2cxGfpjcn/I8zxf+uFqB7917pMXP9T/tz7917r1z/U/7c+/de69c/wBT/tz7917r1z/U/wC3Pv3XuvXP9T/tz7917r1z/U/7c+/de6U1Qx/ubief+Ym3F+ef+LVi/fuvdJm5/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3T1uQn+8W4LHj+OZf6H/q4Se/de6Zbn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Tpjifts1yf8Ai1r+f+rrSn37r3TXc/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XunHE4uvzdfT43HxmWpqC5FywjiihiM9RUTMoYhI41Z20qWIFlVmIU+690Ns81btzbWztv/AHdRUUoqt15IT0IhxldKiZBKCaIRwNPqaCo+6VZ6xBUqFiR4oFihRfde65ZnJ7drNs4yaHHy/wB5quU0s+QmyiVlWcdiWRGqMmKeOJP3z4vt0MSsxWSR2ZYoAPde6Qcxbwy2k8Z8b2djwh0mzG/9Pr7917o2m5q4VWN2U9JTyUGL/unjZKDFzxSx1GLaWmihqKKVqgCVvHHDTwhn+pQn6lifde6SXlf+v+9+/de695X/AK/737917rLDNKJFMdQKWWzCGqKeQUk7IVgqjGQ2oROVe2k3t9D7917onuTx2SxFfU43LU09HkKWTTUQT3L3dRJHMknIljlUrLDMhKSoyyIzIysfde6g3P8AU/7c+/de69c/1P8Atz79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7r1z/U/7c+/de69c/wBT/tz7917p1oSf4duTk/8AFooPz/2duLPv3Xumq5/qf9uffuvdeuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3Xrn+p/259+69165/qf9uffuvdKPPE/Z7W5P/HuL+f+r5XH37r3Scuf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdSqAn+IY3k/8AFyx35/6bY/fuvdQ0Y6V5P6R+f8Pfuvdcrn+p/wBuffuvdeuf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+6908Qsf7vZIXP8Axe8Cfr/TH5P37r3TPc/1P+3Pv3XuvXP9T/tz7917r1z/AFP+3Pv3XuvXP9T/ALc+/de69c/1P+3Pv3XuvXP9T/tz7917pyyZOvG8n/j29pfn/s16P37r3Tbc/wBT/tz7917r1z/U/wC3Pv3XuvXP9T/tz7917r1z/U/7c+/de69c/wBT/tz7917p5wTEV03J/wCLNuT8/wBduVY9+690zXP9T/tz7917r1z/AFP+3Pv3XuvXP9T/ALc+/de69c/1P+3Pv3XuvXP9T/tz7917r1z/AFP+3Pv3XunurY/3dwIv/wAvjdRvfn/gJiB7917pkuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3Xrn+p/259+69165/qf9uffuvdSqFj99R8n/gVT/n/m8PfuvdOO5mJ3JuA3POcy35P/ACvye/de6ZLn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3TrRE/wAOzfP/ACi0f5/plYPp7917pquf6n/bn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3TtkGP8P25yf+LTW/n/s58iffuvdTNvbkqcA2SiWmpa/H5rHS4vLUNVFEfuaV2E8LQVTK0kEkM6RVEbx/20XUGHHv3XunyHP4qraWKLD5yLx0nnWSlqoM5WNNCQ9YZ4WWgiSmEet1ZRrj0gO0oJK+6906R04q2Ixldj8qvhapC0WSx71iU6RmWWSqxYmNTD4wD5RJGNFrk2Kk+691gq8lR4GHyu9NkM1IswoaGGopK2jxbAeIZDMmLyxvKj6vDjmN9aF6oLGqw1PuvdB5V1tZX1MtZXVVRWVU5QzVNTNJPPJ44xDGGllJJCoqoovZVAUWAA9+691Huf6n/bn37r3Xrn+p/wBuffuvdeuf6n/bn37r3Xrn+p/259+69165/qf9uffuvdCbitsYaXB4HIVrypWZKLM1z1E9XImChhjztJiMPFnpqSJ5aKnlWkzqGpBJWf7VpQlPrZvde6lSbBii3bU4F1qqaAYqLG4n+JVS0LZnedTtVY6CGmrJIvCIZsqWqPWUjEKmATGUx6/de6Ve3dpbbzOEwdDSfxETZfefWWJ3Ti58osVbRSHAZjOZjM0MbU8a/bVNCWjpopbzQ1UdQup4zF5fde6Qy4Hb0mIatU1FNlI9uzz5GjyNa9NhqHMwR10L0NDkooZHNewXGVsFBU2V9dTTGUS+MR+690G1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de6GLYu08Li8T/AKTOx4HbaFNJNFtnbhmNPkOxM7T/AKaCjUgsuOgb/gdWFdH+611nWo917pD7z3nnN956fcGdmiNQ8MVFRUdJEKbHYfE0pb7DDYmkW4hpoAzCNASSSzuzSO7t7r3UXdDH+MvY/wDLp2v9D/2alCPx7917pP3P9T/tz7917r1z/U/7c+/de69c/wBT/tz7917pc71Ymn2RyR/vxsWPr/1cqzn37r3SGuf6n/b+/de6/9bSn7Lc/wCkfsA3+u991n8fnPVB9+690idbf1/3ge/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/wB4Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/ALwPfuvdLqp2bm6nDbUyeD27nMhDlcJV1NdV0NDWZKmkyFPujI41lVqWNliKwQU4aJjq/t2tIvv3Xum3+5W9v+eR3R/6D+V/68+/de69/cre3/PI7o/9B/K/9effuvde/uVvb/nkd0f+g/lf+vPv3XulBndgbhpodvNjNqbraWr29TVmVV8LlZSmTkr6mKQKhp1KKYkhKrz9dQYhvfuvdJ/+5W9v+eR3R/6D+V/68+/de66OzN6KVB2nuYF2KoDgMoC7BS5VQYeTYE2H4BP49+6913/cre3/ADyO6P8A0H8r/wBeffuvdPuY2DuOCi2zJj9qboaprcA9XmF/g+TmKZH+8NfSRjxCAGEGlhpiEN738gJVx7917pi/uVvb/nkd0f8AoP5X/rz7917r39yt7f8API7o/wDQfyv/AF59+6917+5W9v8Ankd0f+g/lf8Arz7917r39yt7f88juj/0H8r/ANeffuvdJyeOopppqapilp6inlkgqKeeNopoJ4XMcsM0UgDK6sCrKwBBFjz7917rFrb+v+8D37r3Xtbf1/3ge/de69rb+v8AvA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de6kUjt93S8/8pEP9P+Og9+691Iyzt/Fcnz/y8K38D/lZb37r3Tfrb+v+8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/wB4Hv3Xuva2/r/vA9+690pMO5/gu7eef4ZjrfT/AJ39Lf37r3Sb1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v+8D37r3So3O5tt2x+m18SP8AbGT37r3SX1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de6U20HP8ep7nj7LM/+6Wo9+690mdbf1/3ge/de69rb+v8AvA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/vA9+690pah2/ufief+Yk3D/T/nV4y/v3Xuk1rb+v8AvA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917p53E5/vDn7H/l95Y/QfnISH37r3TNrb+v+8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/wB4Hv3Xuva2/r/vA9+6906Y92+2zPP/AC61/A/52tKffuvdNetv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3TliM1lMDkqXL4irkoshRO709RGsbFfJE0EqPHKGV0dGZHRlIKkgj37r3S2xFXkosJt/H0GYiwsOVq9z01fVVKwvTQxzjHq9REs4ISqlEMNPBLG0crMUhEqK7H37r3TpmKqjqMpVS0cUkELJRgxy+TzNUx0MUVfUSLNZlMtQJZNJAsCBYG49+690/bG25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34H1O3KsD37r3TJrb+v+8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/wB4Hv3Xuva2/r/vA9+6917W39f94Hv3XunMuf4DS8/8xDnD9B/zqMSPfuvdNmtv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3XtTf1/3ge/de6etxu394c9z/AMvnKf0/5XpPfuvdMutv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3TtQMf4duS/1/hFDb6fjdeM9+690062/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917pR552+02vz/zDq/0/53db7917pOa2/r/vA9+6917W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvdSqBz/EMdz/y8sf+B/yuJb37r3UNXOlbHjSPwP6e/de65a2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/wC8D37r3TxCx/u/kuef43grfT/lQyV/fuvdM+tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de6c8o58mOsf8AmHNpj6D8bYox7917ps1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de6ecE5++muf8AlzbjtwPr/d2q9+690za2/r/vA9+6917W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917p7q3P8Ad3Bc8jL7o/2xpMT/AMU9+690ya2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/wC8D37r3UugZvvqLn/lLp/wP+Ow9+6904bmcnce4CDx/G8rbgfT7+T37r3TJrb+v+8D37r3Xtbf1/3ge/de69rb+v8AvA9+6917W39f94Hv3Xuva2/r/vA9+6907ULH+HZu/wDyq0YH0+v8Th9+690062/r/vA9+6917W39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917p3yLD+H7b0sT/ALiKzVdQLN/efI3A+vH059+6900a2/r/ALwPfuvdKnam5IdtVk9e1NkKmpkiipYjQ5SDGLFTPULLXaxNSVSyO6oqR61KKCxZHJUp7r3TBXVMNTW1lTSUcONpairqJ6bHU8k01PQQTTNJDRQS1TPIyRKQitI5YgC5J59+691F1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/wB4Hv3Xuva2/r/vA9+690Jh2hilxeQP3tZVZilp8pPjzRT0L4nOrDkcVR0MlI06pPEvirJ6oa0ZalDGInjaM+f3XunmfauJi21jIokyONlylds/+N5HLZClloKKsymCzFbRVcC0lMjx0SQqlVWmRZDA3mozL5aWWR/de6BrW39f94Hv3Xuva2/r/vA9+6917W39f94Hv3Xuhf2HsvEJim7G7Geak2FQVLwY3GxHx5XsDNU7N/uBwq3VhTI6Fa6sBCqA8SMHE0lN7r3SO3rvbM76zb5fKNFBDDClDhsPRqsOK2/hqf0UWHxNKgVI4YkAHpUFyNTcnj3Xukjrb+v+8D37r3T/ALnc/wAYa3A/hO1/6f8APK0Xv3XumDW39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917pbbzdjBsrn6bJxg/H/OxrPfuvdIoMxI5/I/p/X37r3X//19J/smT/AIyLv7i/+/13V/h/y/Z/fuvdIvyf4f7z7917r3k/w/3n37r3XvJ/h/vPv3XuveT/AA/3n37r3XvJ/h/vPv3XuveT/D/effuvde8n+H+8+/de695P8P8AeffuvdKXJbhknxu16Kjq6+L+D4Opx9VHrNPClVNuXI5e9MYZDrQxVURZ2VW16lsVVWb3Xumf+LZH/lerf/Ouf/ivv3XuvfxbI/8AK9W/+dc//Fffuvde/i2R/wCV6t/865/+K+/de66GUr11aaysXUxdrVUw1MeCzWPJ4HPv3Xuu/wCLZH/lerf/ADrn/wCK+/de6esXuSopKDctNUV2RMmWwlPQUgRzMhqYdy47L/vySyKYlEdLIRJGGbWFWwVmZfde6Zf4tkf+V6t/865/+K+/de66GUr11Wrawajqa1VMNTWC6mseTYAX/wAPfuvdd/xbI/8AK9W/+dc//Fffuvde/i2R/wCV6t/865/+K+/de69/Fsj/AMr1b/51z/8AFffuvddHKZBgVatrCCCCDVTkEHgggn37r3Tvu/MUmc3RnsxQLUiiyWUq6ylFWiRVXhmlLp5443lUNb6gSN/rn37r3Sd8g/IP+9+/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de6kUjj7qm+v/AiH+n/HQe/de6kZZx/FMle9/wCIVn9P+VhvfuvdN+sf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917pR4iQfwbdfB5xmO/p/zvqU+/de6Tmsf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917pTblcW28OeNsYkfj/AJue/de6TOsf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917pSbScHO045/4B5j/AN01R7917pN6x/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3XulHO4/ujivrxuPP/wBPzjMb/wAU9+690nNY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3XtY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3TxuFx/eDPfX/i9Zb+n/ACvyW9+690z6x/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de6c6BwabMfXjGIf8A1q0vv3XumzWP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3TtgqFcxmsVirVROSr6aiRKOBairkkqZRFHFTxOyKXZiFBZgBfUeAffuvdGHxmAG3cdgJ6LJ1GHhjXd0ObnraiGOozlNkZKGuwuDp6Cpo6ujmEc9Gaaoo5fHLJMskkUhusMHuvdJfNZCnqq/LfcQDGxNAzU+EWhSmiavMcc1HnoaykBvUVX7j1ayxqgjlREeRY0EfuvdL/AKqWrfbHYCTUb02Jnp6GeLO/txrPlMXq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de1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvdOlA4+w3F9f+LTR/7xunGn37r3TXrH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de6UOdkH2m2Prxt5f6f87qtI9+690ntY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3XtY/wAf949+6917WP8AH/ePfuvdSaFx9/j/AK/8XGg/3isQ+/de6iK4CqOf0j/evfuvdctY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3XtY/wAf949+6917WP8AH/ePfuvdO8Lj+AZH6/8AF5wd/p/yoZH37r3TRrH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de6csm4EmPHP/HvbW/95qk9+69026x/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3XunfCOPvpfr/xaNxf0/wCeeqvfuvdNGsf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917p5qnH938J9ecvub/3ExQ9+690zax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3XupVC4+9o/r/wKp/6f8dR7917pw3I4/vDnr3v/ABrKf0/5XpPfuvdMusf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3XunSicfw/NfX/gLR/wBP+dpD7917pr1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvdOte4+w299f+LVWf0/O5MgffuvdNWsf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xul+m1lNDsOugxm4M7Ubphz882HxmiCqq0wWQlpjHias09ToURRFppnglWIK7lSqkD3XulDjNnRZY5rauEkqZcjU9i02Bxv8XaowFSkFLiszHQ/xbGV9MrQytIgadA7yKuqNooXCmX3XugeEikAi9iARx+Dz7917rvWP8f8AePfuvdDDsHYmJmxFR2N2JLUYzrrFTtDT08LNDl9+ZmMsItt7dCsj6GeN0qqtGXQFkRHjMdRUUfuvdJbfnYGV39lYa2thgxuKxlOuO23trGqsOG23h4lWODH46njCJfQkYllCKXKqAqRJFFH7r3SH1j/H/ePfuvde1j/H/ePfuvdP25XAy7fX/i1bZ/8AeXoh7917ph1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvdLXeMg8GzODxsrGf0/52FWffuvdIsOLj6/Uf0/rz7917r//Q0muxzfsLfh/rvPdB/wBvnJz7917pGe/de697917r3v3Xuve/de697917r3v3Xuve/de697917pa5zakOJxNbVpWPJkMBumfZ+4qR408AyqLVSxVWKqUN3g/yOoicSKGBRH+kuiP3XukV7917r3v3Xuve/de697917p3wWJfOZOHFxSpDNURVjQF5KKISz09HJUwUokyE9NEDM6CJSZb3YaVkayN7r3SvxOwJ8rVpg9dTRbmytFV5Db2PrYVp4yuNzlXgazGZ4SlZKSpaajqQLoQjRhGDGX9r3Xuk/mMNQU2G29nsVWz1NDmzk6N4ayGOGqpsjhBTGtYeF3RoJUq4JYWBut3jbUY9b+690mffuvde9+691737r3UmjgWqrKSmeUwJU1MEDzLF5mhWaURtKIdSayoN9Otb/S4+vv3XuhBrdhQUVXn8OcnLNlqCnyWSwrpTKtFlKDD7qqdq1UFWC5enqJWpZaiKxdAqrGSzS3j917rNUbKwlHQTZypyWUbD4LJZPBbmSCkojXtlMVWUdPJNt7VLolhljro50WqEJHikj1tcOPde6ZaPaVPUbj3TtqXKvHWYSnz6YiRMczrnMthq9aSkxrReX/JzW+qOEs76ZmjQ6rk+/de6wy7ahh2+ma88k7/3XbcVTErQxwwMd9w7Tio4pY/KZGMMq1EhZYwjNpuWjZG917pQZjrHJ0+YyVJipaeSkG6slhsLDX1axV9ViafclVtqjys1V4o6RiaqlekanSUVTzcxUhidGPuvdB/lcdJicjV42WUTS0kgikkFJk6C76AzA0mZp6WqjIvYianQ3FwCpBPuvdN/v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6kUn/AAKpv+oiH/rYPfuvdZ8p/wAXPI/9R9Z/7kN7917qB7917r3v3Xuve/de697917r3v3XulDiT/uH3V/jjcf8A+72l9+690nvfuvde9+691737r3Xvfuvde9+691737r3Sk3G2oYA/9m1ix/vMnv3Xuk37917r3v3Xuve/de697917r3v3XulHtQ2zkB/6ZMv/ALzh5x7917pOe/de697917r3v3Xuve/de697917r3v3XulFOf9+nix/2cWdP/rNxw9+690nffuvde9+691737r3Xvfuvde9+691737r3TvuD/i/Zz/tc5T/3Ok9+6900e/de697917r3v3Xuve/de697917pyoP+A+X/AMcYv/uzpj7917pt9+691737r3Xvfuvde9+691737r3Sn2ZKsW6sHrmWCOatWjkkeKjniCV8bUJE0OQ/YZD5PWJQVte4P0PuvdDblnlaLEUwmzFTBUT7rFI2YleHdpgwSxVMGQy6y0sBpo6+rgmc05hDMjpMJWnZn9+690nP7sZ7P5+HG0FOsuQradchXFad6XG4OlaqNNNPUNK5tDGQGRQQ0mtFiVi63917oXZUwm3sP/dLAvWZCGDJDIV+Yr5UY1WRWmFNU/YU8Y0xxFlWwT0jTYGUs07+690z+Zv99b/inv3XuveZv99b/inv3XuveZv99b/inv3Xusc1bDSwVNZVu8dJRUlVXVbxqryrS0VO1XUGKNioZ9CNoUsLmwuL+/de6Lxujd2R3PUfuF6PFxOj0WGjqJJaSmeOMxfcyagolqHDMZJygJ1FVCRhUX3Xukp7917r3v3XuvWt9eOAf9gRcH/Yjn37r3Sqos3V4vG0VLU0UzU4p95VOILaqaOdd5bck2Zka/XKriZIZKWPxiIKC8U0bve3j917pR1m+RkaSU5XbhyFNkDg6XJ5KorHjrs1NgZ6utaoyldBAkFTXEVqDzywMWWOP7tKss5f3XupOT3jV5rZ+Up66lmYyHa1LSSZCraqjhTHUzUEtbhVMUbxSTLQxrUxrM1MWaZ1p1lcPH7r3TDNvJpVnparF/cUR2/g8CcTNk8jFQCrwmQw9RW18sNK8UitWphoaeqWCSKXTotMDBHb3XulHT9oxQR0tC22oajDQwwYyqxUuVqaaLI7eifcIOJqpsXHTEMI8+ViljCiNqaN/GxNl917r2A3zmKBds0tNtyrrK6M0dZSy0stZT1Objo9/S7qq6ijp6OK37k0EtHqhVkjaN20llKr7r3TTjt/LjMPFhqTEtTRH+HvWzU9dDI1a9PgJtu5KnlhylNVRPS10Ukck9POktpIwUdVWJYvde6T+afJZFKWpbCPjaKmxc2RgipaGqhx1PisnuSoYVdI8/kf7MV1U1HBLLNJ6gsRlaTj37r3TNNjshTxNPPQ1kECfw8vNNSzxxJ/F6NsjitUjqAPuqdHnp7n9yNS6alBPv3XunTcpvX0v+G39rD/AG22qT37r3Sf9+691737r3Xvfuvde9+691737r3TthTasnP/AFaNwf7zgake/de6affuvde9+691737r3Xvfuvde9+691737r3ThJ/xaqL/tYZP/ANxqT37r3Tf7917r3v3Xuve/de697917r3v3Xuve/de6Ue7TfPVZ/wCbGM/91cI9+690nPfuvde9+691737r3Xvfuvde9+690pdutaHcw/rterH/AK06Tj37r3Sa9+691737r3Xvfuvde9+691737r3XvfuvdP8Alj/uK2uP6Yuu/wB5z9X7917pg9+691737r3Xvfuvde/4j6/7E2Hv3Xuve/de697917r3v3Xuve/de66JAFyQB/Umw/259+6912Dfkcg8gj8+/de6z1FNU0jrHVU89NI8UM6R1EUkLtBURianmVZACUkQh0YcMCCLg+/de6wX/H59+6911cf19+69137917r3v3Xup+PydXi5KmaiaGOWqx9djJJJaSkqmSkyVOaOt+3NWj+KR4meMTRaZEDNoZSb+/de6gf8Uv8A7C9r+/de66DA3sQbGxsQbH+ht7917rv37r3XvfuvdcxHI0byrG7RRNGkkgVjHG0wYxK7jgFtDaQfrY2+h9+691w/4n/kXv3Xuurj+vv3XuvXH9f8f9he1/fuvdZPFJ42m8b+FZVhaXQ3jWZ1Z1iZ/oGKqxC3uQCfwffuvdKHaJtuHHn+n3X/ALhSe/de6Tfv3Xuve/de697917r3v3Xuve/de697917qYT/uNi/wyNZ/7iU3v3Xuofv3Xuve/de697917r3v3Xuve/de697917p83Mb7jzp/rl8h/wC5T+/de6Y/fuvde9+691737r3Xvfuvde9+6905Y7/NZz/HAn/3osaffuvdNvv3Xuve/de697917r3v3Xuve/de697917p4yf8AwC29/hh5/wD3f1x9+690z+/de697917r3v3Xuve/de697917p428bZ/Bn/q8Yz/3NT37r3TDT/8AAeD/AJYxf9CD37r3Wb37r3Xvfuvde9+691737r3XvfuvdPsJ/wB+xkR+f49hT/6z6/37r3TF7917r3v3Xuve/de697917r3v3Xuve/de6lVf64P+1fi/94xsQ9+690J+1do0W4NnPqWhpMjV7qMa5qogyM9XRYzHYyNp6Sip6VxHK0stUrNHIBwt9WrRb3XumWHrbcstJkq+WKHG0tBS5GtT+MSfY1NTTY1TLK7U0fl+3LIrsjVLRxHSf3NNmPuvdYNmxZfHTV+4qNKaCKkxVfilrq7NYzBx01TvPE5DbONq4ZskwMhjk80g0ABWjGt41IY+6905VO62xGap8rVYLO4zLUm1JNtlqjM1FDV00MWzk2RS12PT7SNoGiSOeZlYSXlbSCgQhvde67yeeyG159x4MwVUOUytPX4rctJXbnXcENTHJ5aOIbkoY1CyZShkMz01VqjEb6JY4uS8vuvdPe3M5mjt/H7Qj2jUVOPrttdiyQtNFlaiPMZqqxbVdFufE0gtEtXjUip6QSwhy0Ek0TFRUce6917+8uUqKyvzdPtjKU9JtDa+U2+uPr83JLhtsyVW1KbrctSUWUp9JnHlhlqaJ9bzWUEKkbN7917qPW7gyO4tv5CZ9qxf3Srt24mZMdh8osU9DvaHbKw1kdBBMKiqTHVtPHO8dJ4jHCI0hp6hBTyJJ7r3Uio31lsX/Da/JbNgxc9HuDf1fiDT/cYelpqjemIjyFXGMa6s/mpDW4+qop2YKaXxxaHASWL3XusVFviro22Nm48JXS0+Hj/u7i8dDuENja3JYPbv2VVXw4dKd5IKs1WWhyCTEkGRmjQODIR7r3TTJX5al29ktr0e3944uipKrcOUrYocnXRIqZLEY2mhl3PSrRIlQKRIYai7iKM/cCyRo4De691lzcudmw1ZTLs2Ghwe6srX7t2zTRw/c5TA01LJHDmJKCWELVfZ1KfZpUPUp4ZmgikjAdGPv3XukLUQy0+IghmXRIufzJ4ZXR0fEYpo5YpUJV43Uh45EJV1IZSVIJ917pp9+691737r3Xvfuvde9+691737r3XvfuvdPG4ec/nD/wBXjJ/+5r+/de6Z/fuvde9+691737r3Xvfuvde9+69050JtQbh/xxVGP/Xnx3v3Xumz37r3Xvfuvde9+691737r3Xvfuvde9+690oM4b0u2v8NvqP8A1s1nv3Xuk/7917r3v3Xuve/de697917r3v3XupNFxX4//tY0H/uYnv3Xuoo+g/1h/vXv3Xuu/fuvde9+691737r3Xvfuvde9+6907Qn/AHBZEf1zGEP+2och/wAV9+6900+/de697917r3v3Xuve/de697917r3v3XunHJG8lAR/zz+2P9423SD37r3Td7917r3v3Xuve/de697917r3v3XunbCm1bL/ANqncA/2+Aqh7917pp9+691737r3Xvfuvde9+691737r3XvfuvdPNV/xYMJ/2tdy/wDuLi/fuvdM3v3Xuve/de697917r3v3Xuve/de6lUP/AANpP+oqn/62j37r3U/cRvuDOn+uZyZ/29a59+690ze/de697917r3v3Xuve/de697917pzozagzH+NNSD/1pQn37r3TZ7917r3v3Xuve/de697917r3v3Xuve/de6dK83odv/4YurH/AK8deffuvdNfv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de69/j+f6/7C3v3XuniFicDlQSTqzGBZr83IoskLn/AG59+690z+/de6FrYexsVPjZuwOwZ58Z15iqgwRwwHRl97ZaMto27t6PUjFSyMtTUqyhAsirJGY556T3Xuk/v7f2V39lYaurhp8Xh8XTjHbZ2zjgseI23iI1WOGhoYY1RS5VI/PP41MhVVVY4Y4YYvde6Qvv3Xuve/de697917p93KdWXY/9Wvbf+8bZox7917pi9+691737r3XvfuvdLLd5/Y2d/hs3Gj/1oVZ9+690jh9R/rj/AHv37r3X/9HSl7JohFvPedb99jpvNvTcafbQVYlq49eYqX1ywgCyjTYm/wBSv9ffuvdIC4/qP9uPfuvdeuP6j/bj37r3Xrj+o/249+69164/qP8Abj37r3Xrj+o/249+69164/qP9uPfuvdd+/de697917p7y24sxnBEMnVrUGMKZHSlpKWStqFTx/xHKSUkcbVdWy+l6ypMkzj9UhJN/de6ZPfuvde9+691737r3XvfuvdSqSrkopGlijo5WaKSErW4+hyMQWVdLMkOQjlRXH9mRVDD8EXPv3Xunl93bjkpjTSZWeVvvp8imQlSCTNxVNVUmuqxBn3Q1qRS1BNTLAlQI2mLSlDIzMfde6hZfN5HOVAqMhJT3XUUgoqGgxVBE8ljPLBjcXFDTxvKw1yukQLt6mJPv3Xumn37r3Xvfuvde9+691khleCaKeLSJIZEljLxxzJrjYOmuKYMjC45VlIP0II9+690/wCR3Zn8tDUQZCtjqfuq2sr5Jzj8bFXI+QrZMlWUlNkIIVnhpJKmWSpNDFItOJWMgiDkn37r3WeXemfnrcnXzS4ySXM0stLloH29t5sbkRPUx1s9XV4g0v2r1TzQwzPVtD5y6ITJ6Rb3XumqhzWUxtVNXUlUVrp5YJ3rpooKutFRTZKLLxVMVXVq8iS/cQRyNKjBmsVYlWZT7r3U2u3ZuDJxVMOQyAq0raSsoaszUWPaWppshuUbvq0nm8Wti2RH3OstqU3RSIyUPuvdcchujNZaRJspNR5GWPNVWejkrsPhqtlrq2tkyVZAPPTt/kUtRLLPJjf+AjPI7mDU7E+69025LJVmWq3ra6RZJmipoFEcMNNTwUtFTJRUVJS0tOqRxQwwxpFFFGgVVUAD37r3UH37r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdSKQXqqYXC3qIRdr2H7g5Nrm3+w9+691mylv4nkbEEffVdiL2I+4bkXt/vXv3XuoPv3Xuve/de697917r3v3Xuve/de6fsWbYrcw/rjqH/eM3TH37r3TD7917r3v3Xuve/de697917r3v3Xuve/de6UO4DcYHm/+/cxf0+n0f8Ar7917pPe/de697917r3v3Xuve/de697917pQbW4zUH/ULlf95xM49+690n/fuvde9+691737r3Xvfuvde9+691737r3Sgn/49XGci/8AeDOcc3P+47H8+/de6T/v3Xuve/de697917r3v3Xuve/de697917p1zpvnM0fr/uXyf8A7mv7917pq9+691737r3Xvfuvde9+691737r3TnQAGnzF3VLYxSNWr1H+J03oXSDyf8bD/H37r3TZ7917r3v3Xuve/de697917r3v3XupdDPQ01XFPkqH+JUMfkNTQmqmohUIYmUKaqD1oFYhrrybW4v7917owmQNXOuIo6b+IYfM19dnp3osjVPUVk71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xFfTQOqOIwgklqJI4dOgapNKgFgfde6UGbwWEFFh6uvo8jlTR/H7ae6YIKvPZeZoK9t101C4pHqJJfBRCCaVRSRIIURmMQjciUe69027u2ptOkxvYLYrGVGOn21mOv66jrGytVkhTY7fe3hkqnD1EZjAelpJCBTS6PuGJHklf9J917pg7A21jtsJUY+PAZmhaHPSR7c3K6PU4jdm2ZaaSoiq58qlRLSTVBQ0c8BoIoVCSTJPGJFVY/de6fsFDs84bpWLK1ES46v3xu2TekU1VeiarpazGU+OXKJKfHHClHJT+QtZUinme6iRz7917pNVGG3sMJ2E2fqZKEbVkwn8awOThp5itXmdxLTQ/wADhRWpqRVmtIJseUR4SUiLQvpb3Xulb2BSyutDmmggkyfXdXFsnM09TUUJnrIaOEZDYlbVY2SINMZFeooakHytJHR6mKBjo917pS7UzOci+Q+ZxaZTKxUVVu7suWTHrWVUUFSxwuQNK0kCMBIFWmpmh1AhfGjJYi/v3Xugu2pkDnIOwm3TlK6ug/0e1lUlTXV1RUTNl8fn8cu2maaZyzuKiVaZNRJEUskY9BK+/de6Sm1TbPUB/wCor/3Ck9+690nvfuvde9+691737r3Xvfuvde9+691737r3Usj/AHHRG45yNaCvNxajpbE/4G59+691E9+691737r3Xvfuvde9+691737r3XvfuvdPO4zfcGbP/AFdsh/7lP7917pm9+691737r3Xvfuvde9+691737r3U+gNo81/jg7f7fcOO9+691A9+691737r3Xvfuvde9+691737r3XvfuvdO2R/4B4D/tUzf+72t9+6900+/de697917r3v3Xuve/de697917p1wX/F8wv/a3xn/uanv3XumSn/4Dwf8ALGL/AKEHv3Xus3v3Xuve/de697917r3v3Xuve/de6e4T/v3MgP8Aq94c/wC2oa737r3TJ7917r3v3Xuve/de697917r3v3Xuve/de6k1XDwi4P8AkGM5F/zjYjbn+n0Pv3XulXg94Z/F4+mwWEp6Lyy5SWpWQYyLI19bLWxRUi48QVQljOpkSzRwiYkKqyBQVb3XupW8Mjn5Yaeg3fs+ix2aMVM0OYym363F5846jqJvsoKRZzHCkSF2haRKfW4RQ7lw7P7r3UJt55F9u1m3jGAlZjcTiWrI554JBj8VV11V9nJDTlElimFcUmjm1BvGrfX37r3TXuHNjP5jKZtqNaety2byuZqC1RNVp/uRmWoiorT/AFjgYOEP1KsFPCLb3XupWZ3GMxTUVHJSS+HGU09NjHq8jU5CroY55aYrRRVc4DfZU0dOYqKjPoh8sz3Z5Cw917p/wu6ohAcXFhaOCNdsbxpZ5Yp6nVU1eS6/k27U17pIWW7pBDPIhBvJ5NJRHRIvde6jV2+566LcETY6GFM0uahgjhnKw0FLndx0256yJkKapmWoplEUhdWCNpfWqRhPde67wm+nw5xkZxMFdQ4hsHV0VFUVdRaLL4TLy5ePJJUr+6glapq45IImVCJQTcxr7917qJld3tmMNiMLUYyCKnwtPHFRmmqqqISTLtuDANV1kLFlkcPSwVMNgoQmaM6klsnuvdRMZnsfSUWNpMjgYM0uLyuSydPDV1tTBQTnKxUFPUxV1NSBJJdCUIMIE6prf96OaMGJ/de6do9+TQ0f2MOLgECxyxxLNV1VShK9eydd4+oqYKgtFLNBTMk4kMYvIHCiOOQoPde6zVHYMtQ1O74ajdRPmK7J0U00tRis/WZrI0+WqKfMY+UFXokqKdJYYI2SWM2KVAYaj7r3SYyNfJkcdSzSf7qyVRQQglS4pMXtvD4uhErKFDOIYYxI4VQzXYKt7D3XumL37r3Xvfuvde9+691737r3XvfuvddH6H/WP+9e/de6d8//AMX3Nf8Aa2yP/uY/v3Xumn37r3Xvfuvde9+691737r3XvfuvdONH/wAAc9/2rKP/AN6XH+/de6bvfuvde9+691737r3Xvfuvde9+691737r3T7mTel27/hggP/WxWe/de6Yvfuvde9+691737r3Xvfuvde9+691JogDXY8EhQcjQcm9h/licm1/fuvdRF5VT/VR/vXv3XuuXv3Xuve/de697917r3v3Xuve/de6dIj/uErx/XL4b/eKLIe/de6a/fuvde9+691737r3Xvfuvde9+691737r3U/Ifqx/N/wDcBtn/AN5yl/r7917qB7917r3v3Xuve/de697917r3v3XunTDm1ZJ/2q88P9vgan37r3TX7917r3v3Xuve/de697917r3v3Xuve/de6dqk/wC4PDC//L03Hx/1S4v37r3TT7917r3v3Xuve/de697917r3v3XupNH/AMDKT/qJg/62j37r3U7cH/F+zf8A2t8l/wC5j+/de6aPfuvde9+691737r3Xvfuvde9+6905UdvsMxdlFqakIBvdj/EoRpWw+vN+ffuvdNvv3Xuve/de697917r3v3Xuve/de697917pyrbfY4HkH/cbV3tfg/3ir+Df37r3Tb7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de6dYD/uDyY/6uuDP/AKp5D37r3S02bs7H1WPqN671qKjFbCxU/gd6f05XdeUGoxbb21GxXySuUYTzBgsShyXTRLJD7r3TVvffOV3zkoKqrhp8ZicZAMftrbePsmJ25iIwscNDRRqqKzlUj88+hTIVUBY4khhi917pF+/de697917r3v3Xuve/de6etwtqyrG1v9xm3R/tttUfv3XumX37r3XvfuvdSaSm+7qI6fz01N5NX79XL4KdNKF/3JSDa9rDj6kD37r3St3pD9uu0Y/uKOpts7HnXRVH3Ma2yVYmiRtK6XFrlObAjnn37r3SJvb/AG4/3v37r3X/0tI7sE337vc/13fuX/3cze/de6SHv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xus9L/wJp/+W8X/AFsHv3Xus2S/4uNf/wBRtV/1vb37r3UL37r3Xvfuvde9+691737r3XvfuvdP2LNsTuX/ABx9AP8A1tUx9+690w+/de697917r3v3Xuve/de697917r3v3XulBnzdcF/ht3GD/of37r3Sf9+691737r3Xvfuvde9+691737r3Sg2ubZmA/wDTLlf/AHUz+/de6T/v3Xuve/de697917r3v3Xuve/de697917p/m/49bGj/q/5v/ecdj/fuvdMHv3Xuve/de697917r3v3Xuve/de697917p1zvOczR/6u+S/9zX9+6901e/de697917r3v3Xuve/de697917pxoTaDK/9q5R/t8lT+/de6bvfuvde9+691737r3Xvfuvde9+691LoKlKKvoqySFqiOkq6apkp0qJaR50g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9+6910JJFEqh3CzhBOoZgJhG/ljEoH6tLeoX+h5HPv3XuuZqJzqvNMdUQga8j+qAfSFueV/2n6e/de64eRwhiDuI2dZGj1HQzoCquU+hIDEA/i5/r7917rszTFZEMshSZxJMpdtMsgbWHkW9mN+bn8+/de695ZSYW8kmqnCCnbW14BFIZYxCb+nSxLLptYm459+691yFRUCOKITzCKCnkpIIxK/jhpZpnqZqaJL2WN5JJJGQcFmZiLkk+691jZ3fTrdn0IsaamLaY0GlEW/0AHAA+nv3Xuu/LJ4xD5H8QbWItbeMPa2sJ9L2Nr29+691yM8x+s0p/ZFPzI//AAHU3EH1/QDyF+n+Hv3XuvNNMwcNLKwkESyBpHIkWAWgV7nkIOEB+n49+691xLyFEiZ3McWrxxliUj8reR9CHgaidRt9Sb+/de6zCsqlpHoBPJ9lJUR1b02omE1MMbQx1AQ8Bwjsuoc2Njx7917r01ZWVFPTUk9XUz0tGNNJTTTyyU9KtrWpoXJVByf0ge/de6xPNLI7SPLI8jyLM8juzO8q6tMrMTcsNTWY88n+p9+691y+4qBKZxPMJmBBm8r+UgrpIMl7/Tj6/T37r3XOOsqoqSehinljo6mSGapp42KRVElMGFO06r+vx620BrhSSRYk+/de6d9rG2eoD/jU/wDuHJ7917pP+/de697917r3v3Xuve/de697917r3v3XupZP+4+If9N9Wf8A1Vp/fuvdRPfuvde9+691737r3Xvfuvde9+691737r3TzuI3z+aP9crXn/b1Te/de6Zvfuvde9+691737r3Xvfuvde9+6904UBtFmv8cKB/638f7917pv9+691737r3Xvfuvde9+691737r3XvfuvdOuR/wCAeB/wxU3/ALvK0+/de6avfuvde9+691737r3Xvfuvde9+69064I2zmGP/AFdsb/7mp7917plg/wAxD/yyj/6EHv3Xusvv3Xuve/de697917r3v3Xuve/de6e4T/v3MgP+r3hz/wCqNd7917pk9+691737r3Xvfuvde9+691737r3XvfuvdSKk3eH/AKgcaP8A1nRe/de6cduCq/vBgzRU8dZVpl8dLTUktemLjqpoatJY6ZsjJLCIfIRp8glQre6sDb37r3Sg3m9BUx4WuEmUp89PFX02cwmVyNXlqrFJQVIhx0slVWRpJC1RedjRykvGFEvEc8fv3XukN7917r3v3Xuve/de6dsL/wADJv8AtU5//wB0VT7917pp9+691737r3Xvfuvde9+691737r3XvfuvdTyf9w1OP6ZzMf7zi8Z7917qB7917r3v3Xuve/de697917r3v3Xuuj9D/rH37r3Ttnuc5mT/ANXXI/8AuY/v3Xumr37r3Xvfuvde9+691737r3XvfuvdONGbUWd/xxlIP/Xjx/v3Xum737r3Xvfuvde9+691737r3Xvfuvde9+690+5k3ptu/wCGCUf+tarPv3XumL37r3Xvfuvde9+691737r3XvfuvdSKTitoD/wBXCg/9zE9+691GXlVP+A/3r37r3Xfv3Xuve/de697917r3v3Xuve/de6dIv+LJXj/q7Yb/AHiir/fuvdNfv3Xuve/de697917r3v3Xuve/de697917qfkOXof+1Ftv/eNvUo9+691A9+691737r3Xvfuvde9+691737r3Tph+KyT/tV57/AHnBVI9+6901+/de697917r3v3Xuve/de697917r3v3XunapP+4TDj+mT3F/vNNjPfuvdNPv3Xuve/de697917r3v3Xuve/de6k0f/Ayk/6iYP8AraPfuvdTc/8A8X3Nf9rbI/8AuY/v3Xumn37r3Xvfuvde9+691737r3XvfuvdONIf8iyw/rT0v+8ZCL37r3Td7917r3v3Xuve/de697917r3v3Xuve/de6cq03osF/hjasf8ArwV3v3XupGXiw8EeHixU71cpxNNU5arLSiNsnV3nnoo6eaOMp9pf7csCyyafIDZrn3XumX37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdCzsLbeBqcBmdz72qpaPZ+JzWIWWnpZAuS3NkaegrJRtrEKjK/lfzQtM4ZNMJZhJGA88HuvdJne+9slvjJwVVVDBjcVi6cY7be3aCyYrb2JjCpFR0UKKil2VE88+hTIVUBUijiij917pGe/de697917r3v3Xuve/de697917p63DzlG/7Vu3v9425SD37r3TL7917r3v3Xuve/de6V26zeHaf+G0ccP/V6q9+690kb25/x9+691//T0hN/m++96n+u7dxn/b5ib37r3SS9+691737r3S92bjMDW0mcq87HCY6Gbb8UU1TkJ6Cn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Hv3Xuva2/r/vA9+6917W39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2pv6/7wPfuvdOudZv43mef+XrkP6f8AK2/v3XumrW39f94Hv3Xuva2/r/vA9+6917W39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917pxo2P2Od5/wCXbR/0/wCeioD/AMR7917pu1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3T5mHP223uf8Alxrf6f8AO2q/fuvdMetv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3UikZvvaHn/lOovwP+VpPfuvdRlZtI5/A/A/p7917rvW39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de6c4nb+C13P/AC9cR+B/yp13v3XumzW39f8AeB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de69rb+v+8D37r3U/IM2ui5/5cm3fwP8AnQU3v3XuoGtv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3TpiGb7uXn/l15z8D/nS1Hv3XumvW39f94Hv3Xuva2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvdO1Sx/gmI55/iW4P95psb/xT37r3TTrb+v+8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/wB4Hv3Xuva2/r/vA9+691Jo2b7yl5/5SYP6f8dR7917qbnnY5zMm/8Ay9sj+B/yuP7917pp1t/X/eB7917r2tv6/wC8D37r3Xtbf1/3ge/de69rb+v+8D37r3Xtbf1/3ge/de6cqNj9jlrn/lHpbfT/AJX4j7917pt1t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de69rb+v8AvA9+6917W39f94Hv3Xuva2/r/vA9+69041jn7LB8/wDLuqv6fnP1p9+6903a2/r/ALwPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/eB7917r2tv6/7wPfuvde1t/X/AHge/de69rb+v+8D37r3Xtbf1/3ge/de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edq6SX7F5q/HTYppjQUoelx9RSJRT09BpUCEOqaroAVkaSRSryyM3uvdP+4N17grc28CyQVc01PX0VKBQ00kyJuqBZ66jpJWVpAiTTSNRJ5D9vqIhKjj37r3TU+f3JQV9RkpaaOmrsduTE12QmlxsSFN0Y/+IS0clbG66VncvXM8WlQ2g+gCMW917ppxuYyFLTJiqSOGaObKUeQjiNOHqnyVNBLR0MkNTFpmVkE8mgRuPU1+ffuvdKX+8O9VrqeGSnR8rLkarAQF8PQfeS5eCoqoK6hKLEA1RqzM8TKykjzLo0sqMvuvdNdRufOi5q0pGgy0+Wzs1NNjqUU9edxV8FXWTSxBQdDVGPgeNQVC6LAaGIb3Xum6v3DlMlDkIKmZDHls3LuPJhIY4xWZmR6lhWuqiyMoq50AiCgoVVwwji0e691zwZtFuD/Hb9SP/V+m9+690w+/de697917r3v3Xuve/de697917r3v3XunnJf8W7bw/wCrdV/+7mp9+690ze/de697917r3v3Xuve/de697917p525xuHAn+mZxf8A7nJ7917plXlVP+A/3r37r3Xfv3Xuve/de697917r3v3Xun/b9PiqipmTJVFLBN44BilybVsWEqq9q+FJKXMVGNH3EcTUxqCjxvGBIEaSVI1cN7r3SpqdmLUVskksT7Z+6yO8ETCAjMjH0u3dq0+6qb7fJGZfuY50qY40lBI0FZQ8gYA+6902vtSiGHkr0ytU1cu1KPdaUjYyFaTwPuU7araGSuWqZxIjNFPE4pyrqSjeNhf37r3SJ9+691737r3Xvfuvde9+691737r3Uut/z6/9QmO/910Xv3Xuonv3Xuve/de697917r3v3Xuve/de6ftsm2bov+qn/wBxJPfuvdMPv3Xuve/de697917r3v3Xuve/de697917qUT/AJDGP+m6qP8A6rQe/de6i+/de697917r3v3Xuve/de697917r3v3XunfP85zMH/q51v/ALkt7917po9+691737r3Xvfuvde9+691737r3U6h/wA3l/8AtTn/AN3lB7917qD7917r3v3Xuve/de697917r3v3Xuve/de6c6//AIC4T/tWS/8Au5q/fuvdNnv3Xuve/de697917r3v3Xuve/de6c8KbZnEH/q6Y/8A9y09+690zw8wxH/m1H/0IPfuvdZffuvde9+691737r3Xvfuvde9+6908Rf8AHv13/a4xX/uFW+/de6Z/fuvde9+691737r3Xvfuvde9+691737r3Weo/VD/1BY7/ANwI/fuvdYPfuvde9+691737r3Xvfuvde9+6906Yc2q5v+1XnB/t8LUD37r3TX7917r3v3Xuve/de697917r3v3Xuve/de6mn/i0wD/q85X/AN1uO9+691C9+691737r3Xvfuvde9+691737r3Xjxz7917pzzf8Axecv/wBrOv8A/cp/fuvdNnv3Xuve/de697917r3v3Xuve/de6cKT/gHm/wDHG0v/AL0NCffuvdN/v3Xuve/de697917r3v3Xuve/de697917p6yxvTYDm9sKB/61arj37r3TL7917r3v3Xuve/de697917r3v3Xus9J/wMov+o2j/wDclPfuvdRx9B/rD/evfuvdd+/de697917r3v3Xuve/de697917pyj/AOLPXD/q6Yn/AHijrvfuvdNvv3Xuve/de697917r3v3Xuve/de697917qdXnU1Ef+rLt7/eMDTD37r3UH37r3Xvfuvde9+691737r3XvfuvdOWJ4q5P+1bm/95wtQPfuvdNvv3Xuve/de697917r3v3Xuve/de697917p0qD/uGxI/pkc9/7j4737r3TX7917r3v3Xuve/de697917r3v3XupFJxVUx/6aIf+tg9+691Mzhvmswf65TIH/1bf37r3TX7917r3v3Xuve/de697917r3v3Xup9L/wCyg/5sUv/ALnxe/de6ge/de697917r3v3Xuve/de697917r3v3XunCr/4B4X/AAx9T/7vaw+/de6b/fuvde9+691mpo4ZaiGOonFLA8iCao8TzmGIn9yRYY7F2AvpW4ubAso5HuvdYTa5tcj8EgKbfi4BIB/wuf8AX9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdCiD/xhR1/H+lOE/8AroyD37r3QXe/de697917r3v3Xuve/de697917r3v3XunfOm+SY/9W7A/7xt+lHv3Xumj37r3Xvfuvde9+690qtzm8W1/8Nq0A/21bU+/de6Sw+o/1x7917r/1dH3e7j++m8OfruncJ+h/OXmPv3XukvrX+v+8H37r3Xta/1/3g+/de69rX+v+8H37r3XWsf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de6zU7j7iD6/56L+n+rHv3Xus2Qcff1173+8qf6f8AHZvfuvdQ9Y/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvdPWOcfwzcHB/wCANF/7t6f37r3TLrH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de69rH+P+8e/de6fM2404bg/wDFhx/+9v7917pj1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvdPe3XBy0IseabI/wDutm9+690yax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3XunuVx/dzH/AFsM3l/6fmhof+Ke/de6ZNY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3TjmJAcvljY85TIf+5j+/de6btY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvdTqRx4clwf+AK/+7CD37r3UHWP8f949+6917WP8f949+6917WP8f949+6917WP8f949+6917WP8f949+6917WP8f949+690qYctW4jHYGvx1RJS1UVVnEWRAjK8U0dPFPBNFICkkciFkkjdSrKSCCPfuvdKrbFfWV9Pkq3G4ynoKmgoZUqP4A9HTpli62igyG2aioi1awzhazHtA0AUsqvIFU+6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+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de6dc64/jeXve/8Srf/chvfuvdNWsf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917qbROPHlrX/4tFj9P+d3Qn/iPfuvdQtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3TlXSD7XDfX/i2y/0/wCdxV+/de6bdY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvdOWGcfxjE2v/wAXOgP4/FWh9+6900QuBDEOf81H/wBCD37r3WXWP8f949+6917WP8f949+6917WP8f949+6917WP8f949+6917WP8f949+6907xSD+A131t/F8V/T6ijrPfuvdNGsf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917rPO9miBv/AMA8f/T6fYx+/de6wax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3XunaPJY9cNPjnw0EuRkrDUwZw1NSlTTQsIFajFKh8UiWiksXvpMjEC9iPde64Ylx91L9f+LZmv6f8AOmn9+6902ax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3XuppcfwqDg/wDF4yh/9Z2PH/Ee/de6hax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuui4II5+nv3XunPMyD+MZX6/8XKu/p/ytP7917pt1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+691PpHvSZm17fw6mJ/2GfoffuvdQNY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3XtY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3TxlXH2+C4P/ABZx/vOUqj7917pn1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvdZ6Vx93R8H/gbR/wDuSnv3Xuo6uNI+v0H+9e/de671j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+6904xuP4RWcH/i54q//nJW+/de6btY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3XtY/wAf949+6917WP8AH/ePfuvde1j/AB/3j37r3UytcBqIc/8AFl2//wC6On9+691D1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvde1j/H/ePfuvdOOLcfdPwf+Ldmf/dNUe/de6btY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3XtY/x/3j37r3TlUOP4RijY/wDFwzv+80+P9+69026x/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xus9K4NVTDn/Pw/8AWwe/de6mZpx/Gct9f+LnX/0/5Wn9+6902ax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xuvax/j/vHv3Xup1M/+R5O1/8AMU1//O+L37r3UHWP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+6917WP8f8AePfuvde1j/H/AHj37r3XtY/x/wB49+690pJcuaXH4OnSgxMyx46pYSVeKoKyZmmzlZI95qlGa1/ot7DkgXJv7r3UX+Pv/wA6vAf+eDE/9evfuvde/j7/APOrwH/ngxP/AF69+6917+Pv/wA6vAf+eDE/9evfuvde/j7/APOrwH/ngxP/AF69+6917+Pv/wA6vAf+eDE/9evfuvdTMdmlnyWMp58RgJaeqyeOpKiL+CY6EyU9VWx086LNAiyISjEB42DKeVIIv7917pM6x/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3Xuvax/j/ALx7917r2sf4/wC8e/de69rH+P8AvHv3XuhO8n/GGGHNv9KMJ/8AXSk9+690GOsf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917r2sf4/7x7917p3zjgZJr3/4t+D/90NKPfuvdNGsf4/7x7917r2sf4/7x7917r2sf4/7x7917pT7lkHi2zweNsUP/ALm1J9+690mNYNgL/Uf0/r7917r/1tHTerA7z3cSR/x8+f8Aqf8Aq7Te/de6TNx/Uf7ce/de6ccRHBUZXHQVCCaCatpopotbp5I3lCuhaMhhcflSD/Q+/de6hwxS1MscFPHJUTytoihgRpZZHP0WOOMFmP8AgB7917rnV0tVQVElJXU09FVQlRNTVcMlPURF0EiiSGYBlupDC4+hB9+691HuP6j/AG49+69164/qP9uPfuvdeuP6j/bj37r3Xrj+o/249+6906LBTnCSVWgfcrlYadZdb/5h6N5Wj0X08sAb2v8A4+/de6bPfuvde9+691737r3Xvfuvde9+691737r3TpmqeClylXT00fihidBHHqd9IMSsfVISTySeT7917pr9+691737r3Xvfuvde9+691737r3TpjqeCeLLNNHramxb1EB1OvjnFbBEJLIRf0uwsbjn6fT37r3TX7917r3v3Xuve/de697917r3v3Xuve/de6n1kcMdNinjRUeehllnYO7GaVcnUQiQhiQLIiJZbDi9rkk+69033H9R/tx7917r1x/Uf7ce/de69cf1H+3Hv3XuvXH9R/tx7917r1x/Uf7ce/de6y07Dzw8j/PR/n/ax7917rNXkffVvI/4F1P5H/HZvfuvdRLj+o/249+69164/qP8Abj37r3Xrj+o/249+69164/qP9uPfuvdeuP6j/bj37r3Txj2Ax2fFxY0NHf6f87aA+/de6Z7j+o/249+69164/qP9uPfuvdeuP6j/AG49+69164/qP9uPfuvdeuP6j/bj37r3Xrj+o/249+69095oi2H5H/Fix/5/4P7917pkuP6j/bj37r3Xrj+o/wBuPfuvdeuP6j/bj37r3Xrj+o/249+69164/qP9uPfuvdPW32AysJuP+A+R+lvzjpR7917pluP6j/bj37r3Xrj+o/249+69164/qP8Abj37r3Xrj+o/249+69164/qP9uPfuvdeuP6j/bj37r3T1Kw/u9QC4t/Gssfx9TQ0Xv3XumW4/qP9uPfuvdeuP6j/AG49+69164/qP9uPfuvdeuP6j/bj37r3Xrj+o/249+69164/qP8Abj37r3TjmCP4vleR/wAXOv8Az/01v7917puuP6j/AG49+69164/qP9uPfuvdeuP6j/bj37r3Xrj+o/249+69164/qP8Abj37r3U6kI8OS5H/AABX8/8ATfAffuvdQbj+o/249+69164/qP8Abj37r3Xrj+o/249+69164/qP9uPfuvdeuP6j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JroqE5GSKNKZZaaJ1appRVxmtiaejklx5f7hY5UUvFK0QRgVKsQy3917ptuLXuLfW9+LXtf37r3XZNiQeCCQQeCCDYgj37r3Sl3GwMW27kcbZoh9R9PvKi3v3XukzqHFiL3H+9+/de6//9fR53zBTrujdM6ZCnnmk3TnA1JHDWpJGj5Odi7PPEicWAIDE3PFwCffuvdI337r3Ttgf+L1iv8AtYUn/W4e/de6l7crGo6jIWrMZTJVYqqopqfL09VNRZOGokjElA8lEpkhfjzRzK8ZV4wBIpIv7r3Sxo8ntUzUccFauLo8dvLb2ZVMnTVGTqP4YtFBBk6Ojr6amLywU0sbpHFOseuDxsQX1qPde6aaHLYxcMMbVT0ZQ7Or4pYpMeZJXz6bkrarEx/dLAZPNFTzoUl8gjVCU1/qU+690g/fuvde9+691737r3T0v/Huy/8Aa6g/3ihk9+690zXP9T/tz7917r1z/U/7c+/de69c/wBT/tz7917r1z/U/wC3Pv3XuvXP9T/tz7917r1z/U/7c+/de6etxMTma4gn9cf5P/HBffuvdMtz/U/7c+/de69c/wBT/tz7917r1z/U/wC3Pv3XuvXP9T/tz7917r1z/U/7c+/de6ecSx8Gc5POGcDk/wDOxpj7917pmuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/bn37r3TlX/8BML/AIY2b/3cVR9+6902e/de697917r3v3Xuve/de697917rNT/8CIP+W0X/AEOPfuvdZa//AIHVv/UXUf8AW4+/de6ie/de697917r3v3Xuve/de697917p4x//ABbc9/jRUf8A7tYD7917pn9+691737r3Xvfuvde9+691737r3XvfuvdPeaN/4T/hhKAf9D+/de6ZPfuvde9+691737r3Xvfuvde9+6909bf/AOLrD/1D5D/3XS+/de6Zffuvde9+691737r3Xvfuvde9+691737r3TzKf9+9Qj/q85U/+qNF7917pm9+691737r3Xvfuvde9+691737r3XvfuvdOOYN8tlT/ANXKu/8Acp/fuvdN3v3Xuve/de697917r3v3Xuve/de6nUf+ZyX+NCP/AHOhPv3XuoPv3Xuve/de697917r3v3Xuve/de697917p5qz/ALhMMP6VWX/3k0/v3Xumb37r3XvfuvdLal3fW1cjjP19VWAQvHRh6ShlpUlZbIK6ONI5jEWCF2hkDrYuFlYlG917pSa8DNU4eggkjrIsvTOYqn+IVSU+Mq6dWoZ3WgrvFPOJAgNPEzQSSSqqpqS0Le69054+nocdkqORchVsmJqKOvioKikig8spqCTIZpivjCSoxjSojRZXVkSUFWY+690oqnKY2Wqq2qKTMRuaipaonFKXEcokLOxjZlDRspV45kJRgfSSLE+691xjqsPJNBFFlo8ZVusk8aZpjiAI4J/B5fuKwRxo2oEiMSM5HqA08+/de6Qsu6NnS1hq6rCvXTRBplmbHUKitqdFvHVgTAOj2CmaRZGHLBCfr7r3SGx1diaeSpqMlhhlZZZFMNL95Pj8dBGzlqgmOjtMz2ssNplVOS6y3AX3XumqeRJZ5pYoI6WOSWR46aFpnip0diyQxvUM8hVR6QXdmNuST7917rF7917r3v3XunmlP+4PLj+tZh/94Wp9+690ze/de697917r3v3Xuve/de697917r3v3XunjNm9XT/4YfAD/ANYlP7917pn9+691737r3Xvfuvde9+691737r3Tji/8AgTL/ANq7L/8Aupn9+6903e/de6e8bJRtQZSiqq1KFqlqGWGWanqp4n+1kfyQn7NJHViH1KSmk2IJBI9+691j+wxv/O/ov/OHNf8A1N7917r32GN/539F/wCcOa/+pvfuvde+wxv/ADv6L/zhzX/1N7917r32GN/539F/5w5r/wCpvfuvdRqyjhgihlgrqauhneeEmGOriaN4FjdxJFVxxnSwkGlhe5DA2sL+690/0m6pVxtfRZKnXKzSUZp8fPW2qFjMsio4r0lu0whQtLRvrDRTJH+uP0r7r3SS9+691737r3Xvfuvde9+691737r3T1uD/AIu0/wDyxof/AHAi9+690y+/de697917r3v3Xuve/de697917p7w3+bzn/aiqP8A3Np/fuvdMnv3Xuve/de697917r3v3Xuve/de697917p4yB/3H4Ef0oau/wD59qj37r3TP7917r3v3Xuve/de697917r3v3Xup+LNGuUxjZEIccuRoWyAkE7IaEVSGsDLS/ukGPVxH6v9Tzb37r3StNJsySGoSfI1EWSSjgdahZmkoqjMVOEq5a2KZKWi0pBBXw06IYNSssxs7JaSP3Xuu8jS7CiWpTHV1ZVuKasNLNLLVRI9Q0GVkow8b0SGyvTYtLMF1fdNqK6WMPuvdZsu+z63MZCueeQLLFW1yU+NBjoq0zJE9OkMssMbUtWoaokamanMGtI4xNZyffuvdM9BHtv+M0MNVUePFthEGRqneplUZeo28ZKn7VUpWdRHWv4og0ThSoYuw5PuvdPmJk2bRV0dcKrToxOSilo677uqg+5mXIYuGoppoqW7zFFoqkQyRCP91z5E0+OP3XumyWDaX38nhn10AzeXmDyT1schxdJUVUlBj4oVgJZKuH7RYqljG8cvkWWNU0v7917r1XBs6OKrWmqqiqajoslHSPEtRTzZWp/jtfHjquV6pSkTrSrjXaJYgjwvL6o6hbD3XuuRo9oLuKnpxWyvgnow8k4mlL01SkbELUyeFfMSFV3EAjDF9KmMgxj3XupMNNsmaWNKitip6ZMdiqb7im/jEdRLkY8eldk66qSoinGmao81EBDGFQCOQIA3kb3XupWLfZdDVR18VZomTG5CF6PIJV1lIlRKMhjoKuKWKkPkkZEopjDJGqKZmYMNOiH3Xum37TZQijjfI1JqXixVNNVQNVLSU9Q1VkaavykdNLSNJJCYocbUvAWEifcSBQ7x+Bfde6yVFTtqfMVslUtJU0SbXoKPHJA+RpaaPL0uJpqJmaaGBJXaNkndWkiKSSBdbFGLe/de67ng2MfvAtZVeQvmDTzQGo8QJky8uNaOkkpluqilxSLG0ilhVtqaMq3g917pNZqLEw1aR4eaWpplpovJUSXVZ5rtaWONwHjLR+MyxtfTLrCsU02917po9+691737r3Xvfuvde9+691737r3T1t3jM0Z/6iP/AHFf37r3TL7917r3v3Xuve/de697917r3v3Xuve/de6lH/gDGP8ApsqP+tEPv3Xuovv3Xuve/de697917r3v3Xuve/de697917p1znOZyp/6uNZ/1vb37r3TV7917r3v3Xuve/de697917r3v3XuptH/AJvKf9qr/wCTFF7917qF7917r3v3Xuve/de697917r3v3Xuve/de6ca3/gNh/wDtXS/+7aq9+6903e/de697917r3v3Xuve/de697917pxw//F2xf/axov8A3JX37r3TVD/mov8Almn/AEKPfuvdZPfuvde9+691737r3Xvfuvde9+6907R/8WOs/wC1tjP/AHDq/fuvdNPv3Xuve/de697917r3v3Xuve/de697917qRUm7xn/pkof/AHCj9+691H9+691737r3Xvfuvde9+691737r3Tlijaql/wC1bmR/t8POPfuvdNvv3Xuve/de697917r3v3Xuve/de697917qaT/uLpx/TLZP/eaCg9+691C9+691737r3Xvfuvde9+691737r3XvfuvdOOY/4u2U/wC1jW/+5Le/de6bvfuvde9+691737r3Xvfuvde9+691PpDakzH+NBTD/wBblGffuvdQPfuvde9+691737r3Xvfuvde9+691737r3Txlf8xhP8MOv/uyqT7917pn9+691737r3Xvfuvde9+691737r3WelNqujP/AE2Un/uSvv3Xuo4+g/1h/vXv3Xuu/fuvde9+691737r3Xvfuvde9+6904Rn/AHE1o/rkcX/7i1nv3Xum/wB+691737r3Xvfuvde9+691737r3XvfuvdTa79dJ/2qMH/vGFpx7917qF7917r3v3Xuve/de697917r3v3XunHF/wDAmX/tXZf/AN1M/v3Xum737r3Xvfuvde9+691737r3Xvfuvde9+69051H/ABaMUP8Apvzf/Wmg9+6902e/de697917r3v3Xuve/de697917rPS/wDAmn/5bxf9bB7917qXmTfMZU/1yVcf9vVN7917pt9+691737r3Xvfuvde9+691737r3ThSm1Hkx/WCn/3isjPv3XuokMohkWQxQzBdX7U6F4m1KV9SqQeL3Fj9be/de6xe/de697917r3v3Xuve/de697917pxrf8AgNiP+1dL/wC7aq9+6903e/de697917r3v3Xuve/de697917qfiuMvhz/ANXnE/8Auxi9+691A9+691737r3Szq8zR1G3loq2oTL1tPjaenwVTJRy0eb29VwVscr0z5KMlamg8JqI4VleR47xiKOBQSPde6Uk26sHFnRlaKvyTxyZjsXLkyUC08lLJuzAU8OPVIkllVytQHjmYsAQl9JW2r3XukPnMp/FIcAZKmprKyhwhoa+qqi7zSTrmayqp4zNIWaRYqaWnhVmPAUIPSo9+690we/de6EgN/xiB1/P+kiJv/XYce/de6Df37r3UqglEFdRztU1dEsNXTymsoBeupBHMHNTRjXF+7HbXH+6nqA9S/Ue690Ig3NiHyfnrJIBW5HH7oxub3Fh8bNRx10OcxgpsdUVeH1QxmaKYzNVNTxRh1dT+7IpZvde6hLuiGiD/wALyWSppfuOupBVrGaeskh23tafEZSPXE50FJZVCIJCGQEaiPr7r3SSzlTS1mbzNXQKEoarK5GpokEKUwSknrHlpkFPH6Y7IVGheF+g4Hv3Xumv37r3Trm+cgT/ANMGF/8AdJTe/de6WFLuHC0lTg6+vL5urxeT27X0eQpqJcdm6Kkxbwfe4/Ilm8FXpjhEVEzSO4AVjPCgMDe691Kg3NisZjocZRZfKVP2O3t44SGseial88mWrhNRyxweeTxxTp62uxZH5K6gG9+690ksxWDP5mOrevvJU4zBxVVbknn1ffUOAp6KueqntI7s88LkSG5a4JsSbe691I3TGIl24q1FNUgbaovXSySSILVtSulzKiENxci3AI59+690lh9R/rj/AHv37r3X/9DRr3kb7v3Uf67kzh/2+Tl9+690m/fuvdOmE4zGMP8A03Uv/W4e/de67SjgbBVeQPk+5p8zi6FLOvhNPW0FbUS64yt9Qamj0sGAsWBB4I917pzoqDFwUa5aqWXK0ElfR4toUL0MsclRjfu6+SN0Z/3IJCY4NV0fSXZSDoHuvdTHw+JoKqqxdSxrGqcfuGooMss7US0tTga3IU1OywHypLDUmg0sGCteQBGUxkye690i/fuvde9+691737r3Twp/378o/wCrxAf/AFSk9+690z+/de697917r3v3Xuve/de6m45tNbA32NPkrMxFFVvUR0sx0G33D0ssLhF/WxEqDj1HTf37r3T6lDh8tn6akx8VfSUGTz+3sZD47TU9LDlSYcgYaqqu5/c9dAJlLNCpMx1g3917p7yVHS1dPX5n+H00GSw09e1diRFlFSopqGqxVIDXpLKzrJAaudKohogTGCwVtWr3XukhnIqeHIkUsCUsUtBhqz7aJqh4YJshhaevqoYWqmeTQssrhA7sVWylmILH3Xumn37r3Xvfuvde9+691737r3TvijaDNf8Aaocf7fIU/v3Xumj37r3Xvfuvde9+691737r3XvfuvdKXKUWL+2xORpQ9DSV9FXxzFZxkYUy+NguKMa/HNG8rNTeYSLZPMJYjJEVUe690oBhaCuGI2/LrpsnHjcJPFk4labzfx7cMFLLRSURcI4hGQ8kM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ClgCQGvYj3XunimxNLFuzGU1HJLTUuYGLbBPJatSqOWdMfM6TDwsIIpjVGIyxLLpiVJo45C+j3XuolLicfkKBKuOmmpJseculbA0zyLXxY3FvlIJGuNUcxKGOp0WTRZkWMq1/de6aM1T0UZx1ZQIYIMrj/v2ojI0v8PmSvnx8tMsrkuyEweWMudQR1DFiNR917pl9+691737r3Xvfuvde9+691IP/AOP/Csqf/ceA+/de6j+/de697917r3v3Xuve/de6fhi4ZMBj6+NiK6s3BkcWfLPBBSiCChop6cvJOVWOzzya5HcKBa9gL+/de6cM1gKTEUeFeWrpzLWQZpqmposjjcvTzVNFK6UC08ePlbxxSkRRa3Ym5ZyAVMS+69095DB4+pzuVwTBo8pNJgclR5QT3VX3FUUCzYyooWIR0iFfqjdHVyYvUSJLR+690msjR4w4mOro0elq6LJzYmrhkleUZCLxmelyKq4BjkXS8dQg9BvGUVPUD7r3Sb9+691737r3Xvfuvde9+691MpP0ZP/ALVf/wAl6P37r3UP37r3Xvfuvde9+691737r3Txi6CCspNwTzNIHxeGjr6YRsqq07Zuix5EoYG6+OokNhY3sb2BB917p0gpMVUbdkFJTQVmeSKesqXNfXxVVFTU9SWmMWPaBaeVEp49blahnAkLabRsB7r3U+Kgw8cODq6wT5LGVU0+GUxN9lULAchO0mUiCtIEmXyL4YpdSHS2sMDZPde6irgqOOPL46ou1bRYgZ2jy0MjLDOgMcsdM9M91MM0Eg0lT5Fmt62S6e/de6R3v3Xuve/de697917r3v3XunDE/8XXGf9rCi/8AclffuvdNcP8Amov+Waf9Cj37r3WT37r3Xvfuvde9+691PxUEVVk8bTVAdoKivo4J1jcRyNDLULHKqOQ2klSQDY2+tj7917pQUuAo56vMRvVpTpTZmnwWMFWJmgkrMhNULTS181GpdY446d9ZjS+tkNigce/de66p8dHDiM19xKsk+DraKpymNlTQnmiyJw8NGtXBJdxKahnZo9JURlQburr7r3Umpx+CpZJMslJLU4iomw8KY4V7STUJzGG/idZGtdGkZaWmc6IBIhBA/cEhBPv3XuktlKNcdk8jj0nWqShrqujSpRdKVC01Q0KzqtzYOF1AXP1+vv3XuoPv3Xuve/de697917r3v3Xus8/6ov8AqEof94o4x7917rB7917r3v3Xuve/de697917pQ5CloMTksYGpZa6llw238jU0j1LQNNPk8HBXVCJPEpZV8shKgAm3pv/AGh7r3T3j8NSVO6xgYSaGqkEmFaE+aaNclUY6SkybGWfQ6pBKXCqUJYKPpcke6903U+OoMji6DJUlI0MtPBnWyVMa0yrWRYWmo6inq1jKB42kNZpqFV9JVC0Qi5t7r3UDO0dJTPjKmhVoYMviosp9o0hlFDK1bPQzUscrepk1QGSMvdgrBWLEFm917pj9+691737r3Xvfuvde9+691L/AOXbD/2tcj/7gUPv3Xuonv3Xuve/de697917r3v3XunM0iyYmhqKaGaWvqMvlcf40LSedaaioJ6OOGBFLay9TIptfV6QBcc+690oc/h8PSQ0VRQTSGj82ZpJq+BvvEd6RFlxNPXU0pjenrpCXSpAP25XRJTNIFlA917p2yO2oZNw7h229OyZiHI46aiyUdSWhb+OZmioRT1lKwKtEqV6yJJGyMGSzahIBH7r3SXrqOgfB0WTpYZaSojyVZiKqCSYyrVrBTxVVNXBXGqOazulQqnxn0FFT1A+690nffuvde9+691737r3XvfuvdTaX/gLlv8AqAp//d3R+/de6he/de697917r3v3Xuve/de6f8DR0tWme+5gExpNvVtZTHXKhgqoaqBY518TKGsGZSrgrYni4BHuvdOdBQYt8O9RIuPqI2xGVnyFRJWywZXEZmjedMTBTUodQ8FSXoVLNBIra5VDo8Y0e6908RY7HINqzVFDNW0GUyL7eqY8jBVQ1eOpVqIKkTqmNlXRUyCpqHgDFw0casEP7g9+6900Q0eHgpGoauGGV6/bMmdpc15KhKmkrqdpXp4IUSTwvBO8QopFkiLCRyVYOoB917pGe/de697917r3v3Xuve/de6zU3/Aqk/6jKT/3JX37r3WAfQf6w/3r37r3Xfv3Xuve/de697917pwxjUq1iirx75KJ45VFNHWtjyH06vuHqVjlskah3YlQFtrY6FZW917pRUOMwn3NCJHlrsbnNxZDb9FVNIaStoqWCWjSkzXhU6TIfuwzwyrpshXguHT3XusNBDj4sDW5CSNsmtNktvfdUjeWkiinqRk1alkmhYuyGGJHEiFCHdRyEYP7r3Tl/d7F0map8dLHUVuPzG4K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19Mxcce/de6a5qhp5XmkYF3a5CIscaj6LHFDEAiIosqRooVQAqgAAe/de6x61/r/ALwffuvde1r/AF/3g+/de69rX+v+8H37r3Xta/1/3g+/de6zFh9qn9Puqg35+vghHv3XusOtf6/7wffuvde1r/X/AHg+/de69rX+v+8H37r3Xta/1/3g+/de6kGunakjoDMxpIqmesjgsNC1NTFHBPNe17skMa8m3p4/N/de6zfxWtEdLCKyZY6GnraWkVWKfb0+REgro4ytiBKJZAxvezWva3v3XunTO5nIVNVPRT1jyQUNVU09N6UE0dNFVtJT0jVaASvDAxP28TuUh+kYQe/de6a6/K1eTlWatnE0ii11higDOyqss8iU6qrzSBV8szAySaQXZiB7917qDrX+v+8H37r3Xta/1/3g+/de69rX+v8AvB9+6917Wv8AX/eD7917qVSsNGRt/wA62x+v0/i1J7917qLrX+v+8H37r3Xta/1/3g+/de69rX+v+8H37r3Xta/1/wB4Pv3Xus8FZNTLUpBK0a1lMaOqUAETUxqI6rxMGB48kUbgjm6jn37r3WV8lUPRxUDPEKeHWEKU1PHUtHJMahoJq2NBNJEJD5FhkkKK1mVQQCPde6eKnO5SOGnl+7cyZKh8tTNLFFLLLLDl6poayKaVSyTxsWEdREVkW5CsASPfuvdNL5WreghxrTg0cBbxIIYhKI2k8327VKr5WhEn7iwM5jD+sKG59+691B1r/X/eD7917r2tf6/7wffuvde1r/X/AHg+/de69rX+v+8H37r3U7GMP4njrHn7+i/r+KlffuvdNsTL4o+f91p+D/qR7917rJrX+v8AvB9+6917Wv8AX/eD7917r2tf6/7wffuvdZqeqkpKiCqp5DFUU00VRBIACY5oXEkTgMCOGAPI9+691LhzNfA1c0dUxOSOus8kccwknEjSx1iCZWEdRGzOYaiPTLHqfxuupr+69050ObyNHi3eCra1HXwRwRzRxVNOsWRpKta6CSmqVeN45wP3Y5FZWsLjj37r3TdHm8hF99pq3YZJIUqxLHHOH+2N6OWJZlYRSwC608sWl4lJWNlUkH3XumzUv9f94Pv3Xuva1/r/ALwffuvde1r/AF/3g+/de69rX+v+8H37r3Xta/1/3g+/de6ySsLxXP0paL/bfZx+/de6x61/r/vB9+69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7r3Xvfuvde9+691737r3XR+hsbH8H62/x9+690LG4K/GS7cyElFJ4sPk4MPHtvDzUqo2KyFJlpZsq1IkpIUpTo0VRVUzEzNOnmOoj37r3QUe/de697917r3v3Xuve/de697917rLB/nof+Wsf/Q49+691krP+BlX/wBRM/8A1tPv3Xuo3v3Xuve/de697917r3v3Xuve/de6FHZ6NFiKWRBLSz124hR0lXTKs1FXSM9DG+J3ageJ/sjrXREkzF43qiYSAGb3XugwddLuuqNtLsuqEhoW0tbVEwABU/2SB9Pfuvdcffuvde9+691737r3Xvfuvde9+69065Q3GMP/AFaaP/e29+6901e/de697917r3v3Xuve/de697917pTbQlySbgoYsTN9vX1vnoIJvBBUeJqynaHyFZ45AFW+qRgtwgb8X9+6903ZvIvlMnU1bTy1KExwU880UcEstLSRLS0sksEQVEdo0VnVR+on6kkn3Xumr37r3Xvfuvde9+691737r3XvfuvdOkh/3C0Y/H8UyR/29JSD37r3TX7917r3v3Xuve/de697917r3v3XulRtOhpa2vr5KpYZjjMDmsxSUVQC0VfX4+jMlJSvEpBkAc+ZoxcMqFWBQsPfuvdZd5xxfxj7uOoq5jkoHrpoq1oXqKOb+IT0j04NOqJ4m8Xnp1EaWhkQaQACfde6SXv3Xuve/de697917r3v3Xuve/de6l03+arv8aQf+5kJ9+691E9+691737r3Xvfuvde9+691737r3XvfuvdCRka+rrNoU+Pmrc3Qx4qipag47IUlHFjqy1RT09PDTTwiKcswqGqYUlRwyK7XATWfde6Df37r3Xvfuvde9+691737r3XvfuvdTcabZHHn/pupP/chffuvdY63/gZV/wDUTP8A9bT7917qN7917r3v3Xuve/de697917r3v3XuhDx9Lj49obrWlzGPmeow+3qmsjkgyiVUFbHn6eo+0LNSGNVUn7dPFM4kkPkkZI9Pi917oPPfuvde9+691737r3Xvfuvde9+691737r3Tnl+amH/tV4b/AHjEQD37r3TZ7917r3v3Xuve/de697917r3v3XulTtKsrMdknroJK2mpYaWsWurKGjjq5I0OPnqYKa048d5mh9McjhX0m4IU+/de6gbjpZKLPZamljx0MiV9Sz0+JkEuNpWlkMv2lIQqWSHV49DIrIVKsqsCB7r3TL7917r3v3Xuve/de697917r3v3XupL/APAOAf8ATVV/7zFB7917qN7917r3v3Xuve/de697917r3v3Xup+MbIJX0r4qOWXIpIZKRYIBUzCWNDJ5YoSrepAC4a3otrBBW4917pR74q2rMtSPJSmOohw2MpKzIGNo/wCP1tPBpq84okiiYrM5KRuy3ZEVjpJKL7r3SN9+691737r3Xvfuvde9+691737r3TtijZMv/wBqecf7erg9+6900+/de697917r3v3Xuve/de697917r3v3XulFnT/kO0wAqj+7bsQiJGpc7kyKGQhAAWKqoZjybAkk8+/de6Tvv3Xuve/de697917r3v3Xuve/de6csLxmMSf6ZOg/9yk9+6902L9B/rD/AHr37r3Xfv3Xuve/de697917r3v3Xuve/de6GygTE0NPt6Bgf7tZXaUFTuUQvrgrKxcXmqnIeZl9L1EFUkKRk3eJkhQFbKD7r3QJ+/de697917r3v3Xuve/de697917r3v3XupFV/nV/wpqL/wBw4z7917qP7917r3v3Xuve/de697917r3v3Xul1sKOJ6jdbyRxu9PsPc1RTO6Iz09QI4oBPAzAlH0SOmpSDZiL2J9+690hffuvde9+691737r3Xvfuvde9+691737r3Wf/AJRE/wCouo/60Q+/de6we/de697917r3v3Xuve/de697917qfjJ8hT10E2K8oyEQlkp2giWaaLRCzzTxqysAY4w7mS37YBkBUqGHuvdKDfNStVuGeQUclLItPSw1E8tP9q+VqoI/DWZjwgAaaiVXZHA9QAYgMWUe690kPfuvde9+691737r3Xvfuvde9+691LpTaPJf440f+7Wk9+691E9+691737r3Xvfuvde9+691737r3XJEeR1jjR5JJGVI441Z5JHY6VRES5JJ4AAuT7917pd5iask2ZhYqwK8lBXvQsK2kMGSx7xzVsRx1FKYwTAqxL91EzgxSCFdAvc+690gvfuvde9+691737r3Xvfuvde9+691OxZtk8cf+m+j/APclffuvdN0f+bj/AOCL/wBC+/de65+/de697917r3v3Xuve/de65KAzKpZUDMoLtqKoCbF2CAmw+psCf6A+/de6EnL0uPp9gqmPyVBXU8e9ZTDPBDkopqpUwccQEorKWIpL6mnaIsUVW0pLIy2PuvdBp7917r3v3Xuve/de697917r3v3Xuve/de6zTfqj/AOoWi/8AcNPfuvdYffuvde9+691737r3Xvfuvde9+690vtiZOpxtRVinfM0z1xSkSsxNJS1ZEv2FXLHStHVrpaRiBNFGrqzeJgP9UvuvdIyvhFNX11OKqOuFPWVUArYn8sVZ4Z2j+6ikudSyW1q1zcG9z7917qJ7917r3v3Xuve/de697917r3v3XupV/wDcdEP6ZPIf7zQ0Xv3Xuovv3Xuve/de697917r3v3Xuve/de6ett0FNlNwYXHVj+OkrclSU9QdRQvFJMA0KuCCrSf5tSDcFgRz7917p93hFTzyTZSMy0s8u4tx4+bFyeFYYGoqmOQ1FBBBHGIo28ojlRlLGVHZndi1vde6RHv3Xuve/de697917r3v3Xuve/de6mU5tTZQf1oqf/eMxS+/de6h+/de697917r3v3Xuve/de697917r3v3XulnnK/IjAbfo6rJ5adq+jNfJQ1VVVmkpqKmrqijxgghkfSfJpkfldIRYPHYA6vde6Rnv3Xuve/de697917r3v3Xuve/de6zU3/Aml/wCoqm/63r7917rAPoP9Ye/de679+691737r3Xvfuvde9+691737r3Qv0J04DHRTViUMNXt+THf3go3cYSihrP4pU1GIzFEYws1UFaVZTHKH8k8JWJ5ER5vde6CD37r3Xvfuvde9+691737r3Xvfuvde9+691JquTS/9qzD/AO8YmEe/de6je/de697917r3v3Xuve/de697917pfbQqaf7eajoahcRuQVFXW0uYed4FmoUwlRE9EaoemBadz95KXKxyqtpDeKMH3XukzuCox1XnMtU4mGOnxs2QqpKKKJZEi+3aY+OSOKVVaNXHrWIqugHQAALe/de6Z/fuvde9+691737r3Xvfuvde9+691PmP+4zHj/ptyx/6w0fv3XuoHv3Xuve/de697917r3v3Xuve/de6E3GUGOqJerIayGnjpq2orjWMaaJlr5U3LJHHTVZK/uCQLFTkPeyEDge/de6gZmdqnabtk5WlzMO98jT04rGP31Pj48eXylHFG/qSJKp4S0dgqyM1gCWHv3XukD7917r3v3Xuve/de697917r3v3XupcHFNX/APLGD/eatB7917qJ7917r3v3Xuve/de697917r3v3XulnsyGGU7tM0EMxg2PnZ4PLHHKYJlmpo/uIdYOl1RnAdbEAnnn37r3WTcEcS7O69kWKNZZIN1rJMEUSSCPOAojygamC6jpUkgXNrX5917pEe/de697917r3v3Xuve/de697917qXjv+Lni/wDta4v/ANz4/fuvdRPfuvde9+690rMGkbbd3szwxO0ePwhjmeCJ5YXbcECEQ1DKXTWpYMqsA9hqB0i3uvdStvVuThxWUpmjnqMJV0WUg/hkeNFTHlclLShYpvNoJVqF/BVtMH1RBFVdJmJb3XukT7917r3v3Xul4G/4xgy/137Gf/Xdf37r3SD9+691737r3S13XCkSbJFPTQo8uzMLM0UdPEBUzzVdQfJLEigSPJxqZgS/1JJN/fuvddbprMlWUWHXMCepydJJko6zIT49aRovNJG8OB84RDKaMrK5B4iaZokAVAW917pF+/de697917pxypvWkn/lSxP+8YiAe/de6d9txxvTbrZ4I5nh2rVTQM8SSNBIMtRxNNCXBKt43dSy2IBPPv3XusNaF/utt9vHGrtmNzIZFhjjkljjpsayeWRFDSaWZwrOWIuVBAAA917pO+/de6f87/m8D/2oKT/3Kn9+690wA2I/1x/vfv3Xuv/T0jc9tikqs/nqh8lUo02dzLlVpIyFvkpbAEy8/wCvb/YD37r3TV/dCh/52lX/AOccf/X337r3Wel2xR0lTT1SZGpkanmjmEbUsaK5jcNoLiQ2Bta9j7917rB/dCi/52lX/wCccf8A199+691nG2YhJHMM5khNEqpFKIB5IkRdCJHJ5rqAOAAeBx7917rB/dCh/wCdpV/+ccf/AF99+6917+6FD/ztKv8A844/+vvv3Xuvf3Qof+dpV/8AnHH/ANfffuvde/uhQ/8AO0q//OOP/r77917ruo29T0+P+3WvqHSTIRy6zSxhgVpXXTbyf7zf/Yfn37r3TV/d+m/5Xqn/AM5o/wDr77917r3936b/AJXqn/zmj/6++/de69/d+m/5Xqn/AM5o/wDr77917r3936b/AJXqn/zmj/6++/de69/d+m/5Xqn/AM5o/wDr77917rn/AASMRPCuSrBE7K7ReBRE0iAhHdBLYkXIB9+691Krsf8AxCRXnyNYI47rT0xUzQ0qFVUx04klAVTpHCqBwB+B7917qF/d+m/5Xqn/AM5o/wDr77917r3936b/AJXqn/zmj/6++/de69/d+m/5Xqn/AM5o/wDr77917r3936b/AJXqn/zmj/6++/de69/d+m/5Xqn/AM5o/wDr77917rk2Nix9DmJ46qaVv4VKNDwpGtxVwsLsHb+n9P8AY+/de6Rnlf8Ar/vfv3XuveV/6/737917r3lf+v8Avfv3XuveV/6/737917r3lf8Ar/vfv3XuveV/6/737917qRNWyzRUcTfSjp3pozrdrxvVy1nAY+kBpWFhx+fqT7917qP5X/r/AL37917r3lf+v+9+/de695X/AK/737917r3lf+v+9+/de695X/r/AL37917rLBK3npwTw1RAptcmzyhTYE/4+/de6fqmgR6mpYzy81M/+61/47H/AGr37r3WH+HR/wDKxL/yQv8A0d7917r38Oj/AOViX/khf+jvfuvde/h0f/KxL/yQv/R3v3Xuvfw6P/lYl/5IX/o737r3Xv4dH/ysS/8AJC/9He/de6lwRvT09fSx1VQIcjFBFUIC6I4p6gVMZkiV9LkEELqHpubfU+/de6ifw6P/AJWJf+SF/wCjvfuvde/h0f8AysS/8kL/ANHe/de69/Do/wDlYl/5IX/o737r3Xv4dH/ysS/8kL/0d7917r38Oj/5WJf+SF/6O9+6917+HR/8rEv/ACQv/R3v3XulWdu01dTY2aWvqIiMbTR6Epo3X0luQTIP6jj/AHn37r3XD+6FD/ztKv8A844/+vvv3Xuvf3Qof+dpV/8AnHH/ANfffuvde/uhQ/8AO0q//OOP/r77917r390KH/naVf8A5xx/9fffuvde/uhQ/wDO0q//ADjj/wCvvv3XupNHtynoZ1qYMpVmRY6iIAQCElamnemkHkjkJHpc3FuRweD7917qMNoUX/O0q/8AYUcY/wB48vv3Xuvf3Qof+dpV/wDnHH/199+6917+6FD/AM7Sr/8AOOP/AK++/de69/dCh/52lX/5xx/9fffuvde/uhQ/87Sr/wDOOP8A6++/de69/dCh/wCdpV/+ccf/AF99+6913V7dpoqCngWvqWRK6rl1mmjBPmpoFK6fJ+Cn1v8An6fn37r3TV/d+m/5Xqn/AM5o/wDr77917r3936b/AJXqn/zmj/6++/de69/d+m/5Xqn/AM5o/wDr77917r3936b/AJXqn/zm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7Sr/APOOP/r77917r390KH/naVf/AJxx/wDX337r3Xv7oUP/ADtKv/zjj/6++/de69/dCh/52lX/AOccf/X337r3Xv7oUP8AztKv/wA44/8Ar77917r390KH/naVf/nHH/199+691hqdtUsMEUa19Sw88zlzTRgnXEigafJ+NP1v+fpx7917qD/d+m/5Xqn/AM5o/wDr77917r3936b/AJXqn/zmj/6++/de69/d+m/5Xqn/AM5o/wDr77917r3936b/AJXqn/zmj/6++/de69/d+m/5Xqn/AM5o/wDr77917qTS4ySgkM9BmclRTmN4vNSqaeTxv+uMyQzK2k2Fxfn37r3WTI485WtqK+tyddLPUSFiZgap0S/7cInml1FUHpUH6AAe/de6hf3fpv8Aleqf/OaP/r77917r3936b/leqf8Azmj/AOvvv3Xuvf3fpv8Aleqf/OaP/r77917r3936b/leqf8Azmj/AOvvv3Xuvf3fpv8Aleqf/OaP/r77917rjPiYKHG5irSpmmaKgp1VHhWNbzZyiiLEq7fQE8W+tueLH3Xukh5X/r/vfv3XuveV/wCv+9+/de695X/r/vfv3XuveV/6/wC9+/de695X/r/vfv3XuveRv99f37r3U2tytbkfszWTS1ElHRihjlmlkmlMCVUtTGmuQkhV8pVVvYAcf0HuvdQvK/8AX/e/fuvde8r/ANf979+6917yv/X/AHv37r3XvK/9f979+6917yv/AF/3v37r3Tjh3L5fEoxOmTKY+M2ve0lYiEi/+v7917qSmOj0J/lEn6V+kYA+n9NR9+691z/h0f8AysS/8kL/ANHe/de69/Do/wDlYl/5IX/o737r3Xv4dH/ysS/8kL/0d7917r38Oj/5WJf+SF/6O9+6917+HR/8rEv/ACQv/R3v3XupIhZaKSgFTN9vJVw1pUg6RNDBJThlj1ablZLFvrYAf63uvdRv4dH/AMrEv/JC/wDR3v3Xuvfw6P8A5WJf+SF/6O9+6917+HR/8rEv/JC/9He/de69/Do/+ViX/khf+jvfuvde/h0f/KxL/wAkL/0d7917r38Oj/5WJf8AqWv/AEd7917pTrtajnip5myFTGXpKQlFpY2AK06oSG8g+tr/AE/w9+6913/dCh/52lX/AOccf/X337r3Xv7oUP8AztKv/wA44/8Ar77917r390KH/naVf/nHH/199+6917+6FD/ztKv/AM44/wDr77917r390KH/AJ2lX/5xx/8AX337r3UykwEdCKhYMxX+KrpaqkqYBD4op4qmlkpf3lSUhtHkLAMCPxxe4917qH/dCi/52lX/AOccf/X337r3Xv7oUP8AztKv/wA44/8Ar77917r390KH/naVf/nHH/199+6917+6FD/ztKv/AM44/wDr77917r390KH/AJ2lX/5xx/8AX337r3Xv7oUP/O0q/wDzjj/6++/de6xVW3KSGmghWuqWH3ldMZDTICddNSxhNHksLaCb35v+Lc+691A/u/Tf8r1T/wCc0f8A199+6917+79N/wAr1T/5zR/9fffuvde/u/Tf8r1T/wCc0f8A199+6917+79N/wAr1T/5zR/9fffuvde/u/Tf8r1T/wCc0f8A199+6910dv0xBH31Qbi1jTR2N/6/u+/de6m5DHfxStqshV5GskqKueSZy8YmKh2ukQkkluQi2VeBwBYAce/de6h/3fpv+V6p/wDOaP8A6++/de69/d+m/wCV6p/85o/+vvv3Xuvf3fpv+V6p/wDOaP8A6++/de69/d+m/wCV6p/85o/+vvv3Xuvf3fpv+V6p/wDOaP8A6++/de641WKgocTmKlKmaZ1pqJFV4VjA8mZpQWurt+B9P+Ke/de6SHlf+v8Avfv3XuveV/6/737917r3lf8Ar/vfv3XuveV/6/737917r3lf+v8Avfv3XuveV/6/737917qRPWvOlKmhUFLTCnBUsTJ++85dr/Q3e1h/T37r3Ufyv/X/AHv37r3XvK/9f979+6917yv/AF/3v37r3XvK/wDX/e/fuvde8r/1/wB79+691LoGMmQoImJCyV1IhIvcBqhQSL+/de6cjjowSPuJeCR/m1H+8avfuvde/h0f/KxL/wAkL/0d7917r38Oj/5WJf8Akhf+jvfuvde/h0f/ACsS/wDJC/8AR3v3Xuvfw6P/AJWJf+SF/wCjvfuvde/h0f8AysS/8kL/ANHe/de6zLShaeWmE8njmnpqhjo5D00csa8arG4lPP4/2Pv3XusP8Oj/AOViX/khf+jvfuvde/h0f/KxL/yQv/R3v3Xuvfw6P/lYl/5IX/o737r3Xv4dH/ysS/8AJC/9He/de69/Do/+ViX/AJIX/o737r3Xv4dH/wArEv8A1LX/AKO9+690q22tR1EdHK2QqYi2MxI0LTRuBoxcKE6jIPqQTa3F7c2ufde64f3Qof8AnaVf/nHH/wBfffuvde/uhQ/87Sr/APOOP/r77917r390KH/naVf/AJxx/wDX337r3Xv7oUP/ADtKv/zjj/6++/de69/dCh/52lX/AOccf/X337r3Uql25BRPM8OUrP36Wqo5U+3VEeKqp2gOsLKdQQsJAp4JUcg8j3Xuov8AdCh/52lX/wCccf8A199+6917+6FD/wA7Sr/844/+vvv3Xuvf3Qof+dpV/wDnHH/199+6917+6FD/AM7Sr/8AOOP/AK++/de69/dCh/52lX/5xx/9fffuvde/uhQ/87Sr/wDOOP8A6++/de66rdu0sVJQQCuqGAnyUus0yBj5VpkChRJ9Bove/N/xbn3Xumz+79N/yvVP/nNH/wBfffuvde/u/Tf8r1T/AOc0f/X337r3Xv7v03/K9U/+c0f/AF99+6917+79N/yvVP8A5zR/9fffuvde/u/Tf8r1T/5zR/8AX337r3WT+CxERK+QqpY4CTHDJApiUO+uRVUykAMeWsOfzf37r3Weuxv8Rq5qyryVbLNM7MTKhqGRCxZIRLLLqKoDYX/2w9+691E/u/Tf8r1T/wCc0f8A199+6917+79N/wAr1T/5zR/9fffuvde/u/Tf8r1T/wCc0f8A199+6917+79N/wAr1T/5zR/9fffuvde/u/Tf8r1T/wCc0f8A199+691HrsdFj8dWzR1MspK0yaXhVANVYnqurt/xH+x9+690lvK/9f8Ae/fuvde8r/1/3v37r3XvK/8AX/e/fuvde8r/ANf979+6917yv/X/AHv37r3XNKmeMOI5HQSoYpAjuokjblo3CnlTYXB49+691nnyFRUQUNO7HxUEEsEK6mKgTVklZIyoeAS0ljb62v8A4D3Xuovlf+v+9+/de695X/r/AL37917r3lf+v+9+/de695X/AK/737917r3lf+v+9+/de6n4ly+WxKsTpOVx17Xv6axG4v8A63v3XupiY9GVWNRLcqCbRgfUX+mr37r3XL+HR/8AKxL/AMkL/wBHe/de65rR6UkjWrqFjl0CVFFkl8ba08ihrNpPIv8AQ+/de6nxVGTho2x8Ocy8VA0c0TUMVVUR0bRVBLTxtTJIEKuWYuNNjc3vf37r3Tb/AA6P/lYl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0iSkhfG1SPQGuQNJN+R7917p3TM1yR0artaoSOppXloGlqcmi1dNR03nkkpZJbCULGAxKE3uLfUe/de6jQbpeqmjp6XAfc1Ep0xQQVmRmmlYAsVjijJZjYE2A9+6916bdTU0slPUYHwTwsUlhmrMhFLE4+qSRuQVP+BHv3XupZzeRWSliO1KsS16eShjL5YSViaQ+ulQi8gsQboDxz7917pLbjqaypr42rcZJiJI6Klgio5UqkkEEKaI5W+79baiCdX09+690xD6j/XH+9+/de6//9XQ3vck/wCJ/wB79+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XvfuvdONHQGrpMlUBpg1BTpUIiUryxTASj7hJakELF44fJPdgdSowHPv3XunGTBCKgE0lSiVUWQqKTIXE702LSnjjVlrvHEXDiaRYwYvIrFgqnULH3XuuqrCIuWy1BTVUUcOMp6qqEtW5LTx0sQkaOHwIS7Nf0WQXUaiFANvde66fblWrTr5qZPDJWRqJ5UjlmOPpIK+tMUcRkBEcE3mPr5VGt69KN7r3WA4KvAr7rGGoJKtChMgNUMeb5CSkYrpZYVs76mUkH0hiGC+691jpsRPWUj1NPPSySJJTxfZCRxWPJV1Bp6aKNWQRl30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ihV3Bd5YkYpGl21DRbWQp917rOmDqpI6tUKPW0s1AopIpaSZamGvoJ8hFJSVEUpEzlIQUhiVmcN6bkaT7r3WGHC5Gdad4oomSqSd4mNZRKFFNTmrlFRrkHhbxK0qrLpLKCyggX9+6916hxNTXrUGAxs0VVQUEaCalvUV2TqGgo4ImlkQMG0SEuhawGojRdl917ri2Ir1SokMUWmkVHn01dGzJE8giM4RZCzRo50SyKCsbBlkKlWA917rlWYXI0InNTDEv2wBnEdXR1DRqatqAyFaeRyVWdTC7AWWSyMQzAH3Xus0eFnqYMY9I6zT5IVP7EjQUiRPDVGmhiSoqJAsjykHQnpYn0qG+vv3XuoIoKnxeZkjiTzrTkVFRT00qyNIYdTQ1DK4jDhkeUroVgVZgQQPde6lT4qSmoJqqaTTPDkKajNOojlieKromroauKridldWUKUKAqysHVyPr7r3Wd9u5NHMPiiknBgvHDUU7oomxb5cq8uoBXWJGuh+pB06uL+691Flw+QhaFXiiPnkMcckVZRzwX+2StEklRDI0aRmGRZlldghju4YqrEe6916LEV0s9bT6YI5KCkeuqDPUwQxGlTRplgnZtEgkEiNCUYiRWDISpB9+691iqMbW0kEVTPBohlkeHUJIpDDNGNRp6uONi0EhHKxzBWYAkAgEj3Xup1Pgqlyv3RFIktPk2hkL00qrWYyjasloa791ftX0r6hPpZBdihVWt7r3WCfDV9KsbVApoDJX1GN0TVlLC6VFNHFK8khlcKISsyMJ9WixDFgrIW917rJ/AckS0fiRZo5chHOslTSRRwJjRCamZ6mSQR6AJ1Yvq06P3ASl2HuvdR0xdR9xkKSYpTT42CsmqEk1PdqLiSGNoA4Jb+y19B+uqxB9+691Kgw6yrCZMhTQtUY2bKRo0VU7fbUv3ZqwxRLBkFIxAudWtAt/Vp917rBUY1aaKZ5KyEPpSejhMVQr19FLUGCKphuvoLD90Ry6T4+frZT7r3TX7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xunnb9VBRZrHVdTMYIIKgPJJ4hMNOkjxutiQj30O6gsikugLKB7917pSTT0707YynlxuKq3wNdj1oqTJtLiwz56DKiL+MNNNGGqoUlVkkqDECEDOnkdE917qTFWxNkYZ5clj8nBjqrEyVkFXka2ljNZjMVTU0m4qOWQxNVMrRTRRooeQ8MInWQ+/de6TslcH29kMeK6eopYc9j5sbSVMixutM0GQaoniolZli1tIhmEd1DMASbgn3XulE2QijrK6t/imMmkye5sZmcLJWzVE0NMmNWeenlydNRK81OsayxUficKfqUDRR6vfuvdQqdsLj54a94aejrcdjalqqkwtbRT08tbUMtBiXoKiaSoX7mFJWqpniMqIYozbyNIvv3Xus9ZX46fGZupgn0SZbB4SM09XWU89e1disvFRTiUppZ5JIokqncxrq1s3Nm9+691D2/PHFDgHM1NDDTbzpp8k0rJEVjaGBsbLNK/AjUR1tiTZfUeL+/de6nYPN4qGF5xS0OFWlzO3qypigqcnO9ZTQNUxGcU9bPO0n2k0sNSI4kLHTyGAuvuvdR6SOQUqYabM0imKDNyVscGUxgSpxtTU0UsGGostUuadHqJ4XqGAeyIzM6sxkhb3XuvQZKWHL5tJKmmoaWp27X0RpqTKQ1dHPFSbekosPTT1cLslTMo0qGJv5CQqoCEHuvdepq6iXBoRJSpNHgMtjKmsaqePJwzSVktVRYmnxRuk0E7PHqnEL6Q7sZoXjXT7r3UumqPM9MJchT1dfW7lwmTpshFI9bNkHpHdfLk6CRmakjpIpSoUwpfTpCyRKHT3XukvSzQHKV4x8yUdFVGsip6eplaljq6CWfUmKqKoFPCs0Q8byMyr/ZZlUkj3XunSrrsEmRhqJqWWeWjGARaOjmgmxESY7xw5HH65/I9TH4oyI5RNYsxXU8ah3917qUtbJRyViJX4uuGXzM9ZRx1VdUPRPTVmIrqCsqK+OmdPtnqUqooh5nR1dAZhHGgf37r3SazEdHFUQLSrRJMaRHyMWOkkmx8Ne88jmGlmcsGCwmHyGOR4xJrEbFAPfuvdNN7EH/Ef737917r/9bQwP1P+uf979+69117917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de67uf6n/AG/v3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de6cYMrVU6Ukca0+ijeqcI9PHItQa1FiqFqw4PkDIoQBvoBxY8+/de6lNm8nLExkSCSDzl6m9HEYqiqqafxPJWMFs8koj8l3Ny6eQWcFvfuvdRny9dJV1da0q/cV1PUUtSyxRqkkVVTGmmtGoCqSpuCoFm5FvfuvdZJ83X1LmSR4tZbIPqSCJPVk8YmJqmCqLcwounjhrsOSffuvddVeara6OoiqhTSieqkrA5pYVkp552DVJppEAKLKVVnQenUNQAYkn3Xuu6bN1tJFSx0xhiehnappahY/34al5op2nNzpZiIkj/cVh47pbSxv7r3WVdw5COXyQilp1FVQ1cUMNNGsFPJj6mSrp0p0a+hPJLIzIDY6iPp7917pvqK6oqoKSCfxuKJGhp5fGonSmveOlMw9TRxkt41YnSDpB0hQvuvdTos/kIpFkBp3KpQxMktNDLFNDQY2XERwTxSAq6PTzSRyqR6gb/UA+/de6xx5uvinjqFeLzRVGJqkbwRACbCUZoaAhFAUARmzKBZjYnke/de68M1WiLxExEKmNSFxGEkp2xSSR0U8Dx6bSKsrgsb34P1AI917ricxWFkkIg8yUFRjWnFPEs01LU0hoXFQ6ga3EJ8ayN6rAXJPPv3XuvY/JZGijnSiYhS9PVynwRzGJ6QtHHNqdW0qVmkhkB9LpIyOGDW9+691wOUqfvaauQRRvRSpLRwIn+S0wjqmrEhigckeMSMzaSTck3vc+/de6ypl8haljhYLNEIYBLFEDUVkUSLBSUtYDcToiDxLG6kFPQwZQoHuvdco83WwpUxQrSwxVL5B/GlLDanXKUq0VbFSlwWjV40iFgbjQtjy2r3XusUuXrZamoq2dBLVUT4+bREiIaZ6IUBVUUWDBACGHIYar39+691nk3Bkpbh3h5jqYjanhX0VeLiw8wFhxeCFACPobsOSffuvdYqvMVldFNFUimkWWpFUrClgjkgmMSQymmkjAKCRY4/Io4JUG17k+691ypc3W0sK0w+3mphBV0zwVNPFNHLBVyx1DRSkjUdEsSSxEMCjXKkBmB917qPBkqmGpqKlvHUtWCRayOqjWaGrWWdal1mQ2/3aiSAqQQyhgQR7917rnNlquenjp5DFeNZo/uViVKqSnnmM70ssyW1Rh2JVSOAdAOj0+/de6l1mdys61FPV+MGcz+YPSRRzaKvJpm5ItekMENQvlCk/2iP06QPde64z7hyU61AleC1UtekxFPEpYZOvXI1NmtcEyqpU/wBkcDg+/de640edr6FKVYftmahmaajlqKSnqZafyajNDG0yt6HLFipBs3qQqxJPuvdYIshX0IpY4mamkoqiesiOjTIXr6eKKbzLJcPHJFGilHUqyEggqxB917rHVV8lXI7mnoafXHHGUpKKnp0URtr1RhFurMSSzA3I9P6QFHuvdRGEihCwdRIuuMsGAdNZTWhP1GpWFx+QR+PfuvdcdR59R44PP0/PPv3XuvXP9T/tz7917r1z/U/7c+/de69c/wBT/tz7917pR4WWGooM3iKmempxU09PkaKoq3ltDXYqbVIsCrcapKWSpU/k2Ci5NvfuvdOdRmFqcZR5YTRw5HHRZPb0dOlSsdUMdWU7fwySKGOIAxwRTVUJZSpBWM31G/v3Xuo1VC8uJwapSQTuuFqVNU1YIjQyDPVFcruRKIwfEeFkH+7L/qAA917qRNJDkMWn8baKnqsdgkXDZejqllStiiVVo8DWUUepWltLJG7oUeMLeVXRGb37r3UCWoV9owoZ0aqG6auolRpVNTpmxcOmoKE6yrOrDyWtqFr39+690mbn+p/259+69165/qf9uffuvdeuf6n/AG59+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/259+69165/qf8Abn37r3Xrn+p/259+69165/qf9uffuvdeuf6n/bn37r3Xrn+p/wBuffuvdeuf6n/bn37r3Xrn+p/259+690qcCC2K3MqrFNJLR4yKKCSTS07/AMYhmKIiOjtZUZjoPFuT9L+691giEVDPkMhIj0jU1RHDQUdFklFVRVFTqmiaCpkSfUKaJCjOfUrsnIe9vde6eZ6tY89V5HHwUVdSbgxi1dZipa1mdocpJHPlsctQhjZZ46lGKiP1qoVwpW49+6903xx46k3Nt00FS4pBW4CvrIameNxiaj75KmtopKsLHHIIR6jIFUi5RwJFf37r3Sfr2vW1mhvR93UsulgUsZTypQlTcW5Bt7917qJc/wBT/tz7917rtXKsG+tiDZuVNjexH5Hv3Xun0Zuop/2ZKClNKKJqeGiqRWtHDDU1EGRWSKQyiYrrgidFeRo9N/SdbFvde6kVeUytbLVhsckdXSrkBkmhhqy60UmZfJVNLWwSu6iKKolZCSoOkhHZub+691jXP1k0hc0FFUiKTMVciGCpk8a5dw8ziRZNcQgIXwSoyuv9p2JN/de6wT52oqGikkpqQzU8tJLSTWqi9L9rDFEY0V5SrpJ4g8iyq/qZyunUffuvdRFyUyVtXXJFAr1iZKNotMjRQrk6eSmm8Gti6lFlbxkuSONWoXB917qbLuGslkeQwUil4cjBZVqCFTJ4mHD1Fi8pNxHCHQkn1sxN10qvuvdcazPVdbFUxPHDEKmqkqiaeSsjEZnjijqIVQylWjfwxMRKraSt1K3N/de640mamooKWKnpqZJaSsWvSqD1gnlqo5VeKSpUS+N/GitFEClkWSQrZ3ZvfuvdZoNxVFMyfb0lIkME+PnpKd2rpo6T+H1r5BYYTLMWKyyyO0vkZm5srLx7917qFVZWoqqWmpHUIlMCimOartJEsjyQRyQPI0X7XkkCOIw1mIZj7917pylzOToZzBU0UEM0UWKp6inqIalGkgx2KlxkUUytICBNTzt5GXSb6WjKW9+691EjzlRFUQ1KU9IrQVGAqY001Bj1bdpmpaJGvJqKuG1S+q5YAqV5B917ryZ2pUOwipvMRg/DUATiSmqNvUpoqKqiAfQXKMTIHUqWsQotb37r3WWfOV1SyVbwIXSmqKGabVXNFPNW418aaiSJ5TEk3hLFfEqqSNRU8j37r3WTGvm8ehemxc8ypkqKuaSWjrXCVOBlklMReIqAqlz5weRYcqeffuvdYHra6noaWOWgESSQTw0da8dZC8+Nmneeqoo2DrHJEzyuWcKZAGK69NgPde6x1ubqq96uSaKmDVkEtO5iE6iNJc6+4CYg0hAIlcxi9xo4tru/v3XuucOdmipKehkpKOopqZXaJZvur/deaSenrmMcqgyQ+WRUW2gqzB0Y2I917rnNlKynqYVyNDBLXY+aoRmrVq0m0zvLJJSyxRyIq6ZZ3ljkjVZUfSUkAVQPde64VWXrMlDLTGmis70NSxgWqeVI8RiRjY+ZJH9AhTXKzAm4LagvHv3Xus0e5KyNdIp6JrpToxZar1LT4KTb6cLKALwyFjpA9YBFlup917rI2byePlFPPRxQywLDDLDPHWwzGFcKuFeCW0qsolg9TMmlwx1IyiwHuvdNi5OdZ62cIjffUtTRukz1E4igqIvCoilmdpLxAL4yzn9IDaluD7r3WfK5KsrE1VNPHSjIaMhVyRpNGuVqEaaD+JyrKzICWaYEQhI9Reyj8e691JfP1fnWrkoqZVqxWTVUdq1KfJ1FbTz46rr3Hl9LlZZlHgKIrXso5Hv3XusKZ6pHhMtNRVDQGpEbzRS60iqMbFi0gRonXSIY4IWgkS0iMoOsgsD7r3WSbcdVOazVS0QFZ/EdYVau0f8AEoqaKUxapifR9shj1lgCW1avTp917rF/Hag5Ssyb09LIa9amOsoiKgUk0NXGUliBWTyrY2ZWWUMGA5twfde6xyZid3pmWnpYlpMVWYiKKJZxH9tWrUrLI5aQsZP8qkYNqtcAkH1avde6xSZJpqWKCemp55oEjghrXerFTHSxSmVabSkoiKgkqGaMsFOkNYLp917qA763dwojDMzCNC+hAxuETWSbD6C5J/qT7917rjc/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de69c/1P8Atz7917r1z/U/7c+/de69c/1P+3Pv3XuvXP8AU/7c+/de65rLKiyIskipKqrKquyrIqsHVZFBsQGAIB/Iv7917rhc/wBT/tz7917r1z/U/wC3Pv3XuvXP9T/tz7917r1z/U/7c+/de65JLJGS0cjoxSSMsjspKSxmKVCV/DKxVh+QSDwffuvdcbn+p/259+69165/qf8Abn37r3Xrn+p/259+69165/qf9uffuvddgm45P1H5/wAffuvdf//X0MD9T/rn/e/fuvdde/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917pZ01TRNSY6mrpoPEzwKtLDVEYyYPTTwGpyNHEEaCogkaIvOTaQEtpazOfde69BNiI4Z4tNFJTk7WmrYndw0sdPjqikzMtGC6Fp1kmuoQ3udSggXHuvdYJ5cTJSRC+LSZ6TblJ9ylLULJRxmlqafMVUtPBpMs6SJGzuVe6lCouVt7r3WQri2mgdWwwrIaSpURv5hjamqo8iFiSpVbp+7SX0uHUO1iWWQ+/de6g/c48122ZTHQR0sEGNGRWOlYxkw5FxVGvibU8rmNQ0lydakW4Oke69050smId4hXNj5dEkFOQ7zCmiil3LVpWPSRREKifbusigKLKVcANz7917qPE+FIjnanofuIqSISUfllSlroKetqqWsjMshYxVMlKlM8cikHUWkUGVlU+6903YfxLHWzSrjZWjSIQU1e8SSTTukiqUeWyiOIXmlsQzssca8Obe691Nb+DxsUEdNPTrDWz42VpFWeSmbFVZEWX8JUioFStN4kABvqAPjKX917r1ZJiGgqqiCCiE08dO1RRwyPGsEtXiqadJsY0pcgQ1hqVmhVm9GlPSoLr7r3UfHnGfw9o6qOkM80efDSyNKKmH7fHU9RiTCUYBWapDot1OoF1PHI917qfJHhIZ6p45cbURmXctTSqBU6RC1PTVWBgZXsbi7qIzeza0ckgge691MWpxUM9atAcdG0tPnKSNfNNFSVcOmlraJJzUMFs0hqFTWyhtKoeFW/uvdNsTYL1tFDCYZ8xHHoqpZEkoab7qKWmnjVrvJAYhUxSoXLC6mQhhGT7r3USGeiTK5JxDRpSGhzcFMAZTFCwxc0NFLTeRyWkZwgBk1XLFrBrMvuvdOSfwMSlgtCy08OHFTDI0gSqopqENm3pnZrmqSZgEEbqwA9AYB7e691yhbBFaeGWLHKpixKSVAaczD7rDTDJvIbkeRJo4eQtkc8KdR9+690wUiJNjcnAauCCXz46tSCd3jFTFRw1cU/icKUMiedSsZIZgW0amGk+690pajNES7seDJzLT1lRHNTwwVlRAtV9xXx/dNTxrYBnhUiRiAdPDf09+690yZmV5LeOvhqMa9TUzYyjSd5nx9M0raIhDIqmn4srxgKGKg2ZQre/de6c5ZMPLKKsx49afxUMWRo4FWFkpnxVKBLh42YuZVqhULLeRpB6S14zI3v3XumzHpjxQSzVD07uHq4qynkNqsQyUqHF1GNDAXZagOJdLEgada+IuffuvdPL1lBJWRS1RoZp3oYPtqqfRVQyM21no3iySksFKVawCFXjBT1s3p0n37r3UAjHQwU4jqaN5IqfNQNPTiemkqKaq28ZKU1IY6i4nd4l+jH9DqVsB7r3WPPfwoqDjhRoYsjXwhaRpyJKLwU8tNK/nLMf3GnAa4/K20qoX3XupNZLQSJNO70VUzY2mpZi7H7mKsp8BFHinovGysUWVQk5AIuHWQW8RPuvddwrijXwhnxH2EDoYRMlQ01ZjK6uFPKtc8TKFqKaHW36Q4J1LrUIy+691ApJ6RKvapqnhkp6QRLXeRTMkcI3FVVDrPGv1/bcOUtyCOObe/de6n0cmO/YNccdK8NJTRaHaZqZJX3ROtWtPFGQFT7dzIFUKNBDgaySfde67BwYk8yRUbvDDGXo3lkjpq2jp6yrp6yNJprmOqkp0pWjcMDyzreVgp917pJuoVgFdXBVWupLadahtDEqvqW9msLX+nv3XuuHv3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3XussCRyTwxzTCmikljSWoaN5hBGzhXmMUfqbSLtpXk2sPfuvdKT7/AB1Q0NWZFpKqGimoaaKqg/iccBo5o58dPOzRBHVqcyUKKYnK+ON3/UZF917qZU5LFuc3LBVx68iM0sqtRSiarqZcwa2hqoqgqzJFJAwUxlks8dnQg+Q+691CTI0T4eno5pIjJT4rNU8cT0YLx1k9dFVUrpUKpJMgLBWLDRoIIUMC/uvdTqvJYOZatPFQGN3q2WOmxiUjyJBn45qGOnqI4lePVSGZQ11Ok6JDfSB7r3TNX1VPPkaPwPj4oKfwRJWpRWQxCoMkUuRpBAiyPEhVJAIWDBdN5fqfde6eKmvw5qHlifHyRRTUqmL+HlDX4aMFJ6MhaWNVrZSGklmIUXkHjmURqvv3Xuo0VdiH8MFVHSfbIMKEenoRHURT/wAAlpshUyTiMNKqVYp5JkcuJCt0VwWv7r3TUKmnOTqKiRKLxfbZFBopjJST1X8Klgp6iGmkiUKZZ9EqAwoqMQdEarpX3XunWoq8PPEHBpEqVpq5p9OPMa1NZXbUhgRoRFGFXxV8c3GlVR5Fki9Opl917rNPksQaaeKNceWekECFcVGjhztm0riYRKwY5BEs97hrsCImcn3XuuqrJ4uaspH/AMlk0oJI6v7R1+1kbECmigySvEWnEVUiSsdMoVdWgOGMfv3XumvJV1NUUVPHBDQQyyV+RqqmKkokjaBHdfs4Uq3jWQxAGQrGGsL8qLIq+6906rkcZI1NU1ElI8sMGFgrYGoCyV2OpsbDS1dBSqYtMU6SRyWe6go6FJUMYT37r3TBTPTyYmvoJqhKeWSqoK1HkSd1mWkpqmnlhhSFWAlPnBjDlUPIaRbC/uvdPUmVo0lz8iy/dxz7goq6lp3NTCMhRQ1dXNMpdV/bDCZSwex9RIBIPv3XumnJvES5pcm9XTVVVNWLSFKmKSlZwCDWxyKsPmsxQmBpFOk+oDSD7r3T5W5XG1FRkq0vBUPUiZJoZaBY3q4KnFwxY9KIeJlhko6gP5n1xkgBo3lPB917ppo6ihhx8oYwidoslDUwzU/3M1UailCYuWiZ42SIwTeuQmWNgOV8lynv3XunqqzVF/EKuWFsfN9ymUaCvFDJG0MFdhp6T7GsV4dUjvKYSX0sEs4DsksgHuvdQvusSkNPEJYJ0ioNwQh3xsUNURVYSEYuKo8MIHlFWZgH8shQ3PmZNLH3XuoOaq6WqY/arRqseVzfhFJRJRj+GSywyYwMEjj1KLzadYLryGsNPv3XunOsyOMeoyFQGp6uOaWrSWB4JFmq4ZqCOHHPQzSwHxGCYM8hZkaw9PkvoHuvddUtTiEyyzSVVL/DVkpTFC+LR9OLqKsfe0FWXp5GNRDEANaFrguUqQwCv7r3UWiyUFNXbUqDMlsdBTpWsYXcUzDMVFRJ6WQ6isciuGRWsTdfULe/de6mYrIYqnFGav8Ah0kirQRVXlxa1Mfj/vDPNX6VkgIF6Rxyig6CEX1KAvuvdYIMhjft4pJ4qFq+HHxqAaPw01SIK6qWagqUghYeWemanVKhFDDSLzRtqb37r3SZkVFYBH8i6I21aSlmaMNIlj/qWJW/5tccH37r3XD37r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3Xvfuvde9+691737r3XY+o/1x/vfv3Xuv//Q0HP4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+6917+KQf6mX/AJIT/o/37r3Xv4pB/qZf+SE/6P8Afuvde/ikH+pl/wCSE/6P9+6917+KQf6mX/khP+j/AH7r3Xv4pB/qZf8AkhP+j/fuvde/ikH+pl/5IT/o/wB+691//9H5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9L5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9P5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9T5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9X5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9b5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9f5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9D5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9H5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9L5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9P5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9T5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9X5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9b5/wD7917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuve/de697917r3v3Xuv/9k=